From b82901f71dfcc3de9b982d74fa525f6314d9f8e3 Mon Sep 17 00:00:00 2001 From: wxd <123@qq.com> Date: Sun, 2 Jun 2024 20:42:13 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A2=84=E7=BA=A6=E8=AE=A1=E5=88=92=E6=A8=A1?= =?UTF-8?q?=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AppointScheduleTemplateDto.cs | 8 +-- .../AppointScheduleTemplateAppService.cs | 55 ++++++++++++++++++- .../AppointScheduleTemplateManager.cs | 3 +- src/Shentun.WebPeis.Domain/DataHelper.cs | 33 +++++++++-- 4 files changed, 87 insertions(+), 12 deletions(-) diff --git a/src/Shentun.WebPeis.Application.Contracts/AppointScheduleTemplates/AppointScheduleTemplateDto.cs b/src/Shentun.WebPeis.Application.Contracts/AppointScheduleTemplates/AppointScheduleTemplateDto.cs index da1e728..df65484 100644 --- a/src/Shentun.WebPeis.Application.Contracts/AppointScheduleTemplates/AppointScheduleTemplateDto.cs +++ b/src/Shentun.WebPeis.Application.Contracts/AppointScheduleTemplates/AppointScheduleTemplateDto.cs @@ -33,22 +33,22 @@ namespace Shentun.WebPeis.AppointScheduleTemplates /// 上午上班时间 /// - public string? AmStartTime { get; set; } + public string AmStartTime { get; set; } /// /// 上午下班时间 /// - public string? AmStopTime { get; set; } + public string AmStopTime { get; set; } /// /// 下午上班时间 /// - public string? PmStartTime { get; set; } + public string PmStartTime { get; set; } /// /// 下午下班时间 /// - public string? PmStopTime { get; set; } + public string PmStopTime { get; set; } public int DisplayOrder { get; set; } } diff --git a/src/Shentun.WebPeis.Application/AppointScheduleTemplates/AppointScheduleTemplateAppService.cs b/src/Shentun.WebPeis.Application/AppointScheduleTemplates/AppointScheduleTemplateAppService.cs index eaf4219..be49880 100644 --- a/src/Shentun.WebPeis.Application/AppointScheduleTemplates/AppointScheduleTemplateAppService.cs +++ b/src/Shentun.WebPeis.Application/AppointScheduleTemplates/AppointScheduleTemplateAppService.cs @@ -33,8 +33,56 @@ namespace Shentun.WebPeis.AppointScheduleTemplates _cacheService = cacheService; } + + /// + /// 根据ID获取预约计划模板 + /// + /// + /// + [HttpPost("api/app/AppointScheduleTemplate/Get")] + public async Task GetAsync(AppointScheduleTemplateIdInputDto input) + { + var entity = await _appointScheduleTemplateRepository.GetAsync(g => g.AppointScheduleTemplateId == input.AppointScheduleTemplateId); + var dto = ObjectMapper.Map(entity); + dto.CreatorName = await _cacheService.GetSurnameAsync(dto.CreatorId); + dto.LastModifierName = await _cacheService.GetSurnameAsync(dto.LastModifierId); + return dto; + } + + + /// + /// 根据预约计划模板列表 + /// + /// + [HttpPost("api/app/AppointScheduleTemplate/GetList")] + public async Task> GetListAsync() + { + var entList = await _appointScheduleTemplateRepository.GetQueryableAsync(); + var entListDto = entList.Select(s => new AppointScheduleTemplateDto + { + AmNumberLimit = s.AmNumberLimit, + AmStartTime = DataHelper.ConvertTimeOnlyToString(s.AmStopTime), + AmStopTime = DataHelper.ConvertTimeOnlyToString(s.AmStopTime), + AppointScheduleTemplateId = s.AppointScheduleTemplateId, + CreationTime = s.CreationTime, + CreatorId = s.CreatorId, + DisplayOrder = s.DisplayOrder, + LastModificationTime = s.LastModificationTime, + LastModifierId = s.LastModifierId, + PmNumberLimit = s.PmNumberLimit, + PmStartTime = DataHelper.ConvertTimeOnlyToString(s.PmStartTime), + PmStopTime = DataHelper.ConvertTimeOnlyToString(s.PmStopTime), + SingleNumberLimit = s.SingleNumberLimit, + WeekId = s.WeekId, + CreatorName = _cacheService.GetSurnameAsync(s.CreatorId).Result, + LastModifierName = _cacheService.GetSurnameAsync(s.LastModifierId).Result + }).ToList(); + return entListDto; + } + + /// - /// 创建 + /// 创建预约计划模板 /// /// /// @@ -42,6 +90,7 @@ namespace Shentun.WebPeis.AppointScheduleTemplates public async Task CreateAsync(CreateAppointScheduleTemplateDto input) { var createEntity = ObjectMapper.Map(input); + createEntity.AppointScheduleTemplateId = GuidGenerator.Create(); var entity = await _appointScheduleTemplateManager.CreateAsync(createEntity); entity = await _appointScheduleTemplateRepository.InsertAsync(entity); var dto = ObjectMapper.Map(entity); @@ -51,7 +100,7 @@ namespace Shentun.WebPeis.AppointScheduleTemplates } /// - /// 更新 + /// 更新预约计划模板 /// /// /// @@ -70,7 +119,7 @@ namespace Shentun.WebPeis.AppointScheduleTemplates /// - /// 删除 + /// 删除预约计划模板 /// /// /// diff --git a/src/Shentun.WebPeis.Domain/AppointScheduleTemplates/AppointScheduleTemplateManager.cs b/src/Shentun.WebPeis.Domain/AppointScheduleTemplates/AppointScheduleTemplateManager.cs index 13a520d..9b41f97 100644 --- a/src/Shentun.WebPeis.Domain/AppointScheduleTemplates/AppointScheduleTemplateManager.cs +++ b/src/Shentun.WebPeis.Domain/AppointScheduleTemplates/AppointScheduleTemplateManager.cs @@ -11,10 +11,11 @@ using Volo.Abp.Domain.Entities; using Volo.Abp; using Volo.Abp.Domain.Repositories; using NPOI.POIFS.FileSystem; +using Volo.Abp.Domain.Services; namespace Shentun.WebPeis.AppointScheduleTemplates { - public class AppointScheduleTemplateManager + public class AppointScheduleTemplateManager : DomainService { private readonly IRepository _appointScheduleTemplateRepository; diff --git a/src/Shentun.WebPeis.Domain/DataHelper.cs b/src/Shentun.WebPeis.Domain/DataHelper.cs index 059c598..4d2e04f 100644 --- a/src/Shentun.WebPeis.Domain/DataHelper.cs +++ b/src/Shentun.WebPeis.Domain/DataHelper.cs @@ -9,19 +9,42 @@ namespace Shentun.WebPeis { public class DataHelper { - - public static TimeOnly? ConvertStringToTimeOnly(string timeOnlyString) + /// + /// string转timeonly + /// + /// + /// + public static TimeOnly? ConvertStringToTimeOnly(string value) { - if (string.IsNullOrWhiteSpace(timeOnlyString)) + if (string.IsNullOrWhiteSpace(value)) { return null; } else { - return TimeOnly.Parse(timeOnlyString); + return TimeOnly.Parse(value); + } + } + + /// + /// timeonly转string + /// + /// + /// + public static string ConvertTimeOnlyToString(TimeOnly? value) + { + if (value == null) + { + return ""; + } + else + { + return value.Value.ToString("HH:mm:ss"); } } + + /// /// 统一转换日期为字符串格式 /// @@ -39,6 +62,8 @@ namespace Shentun.WebPeis } } + + /// /// 转换 只保留年月日 ///