From ed75a10fdf3a9a7a0743a2fa00ba055201975f1a Mon Sep 17 00:00:00 2001 From: wxd <123@qq.com> Date: Thu, 31 Oct 2024 09:27:02 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8D=B1=E6=80=A5=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../GetRegisterCheckItemInputDto.cs | 13 ++++ .../RegisterCheckItemDto.cs | 70 ++++++++++++++----- .../RegisterCheckItemAppService.cs | 49 ++++++++++++- 3 files changed, 114 insertions(+), 18 deletions(-) create mode 100644 src/Shentun.Peis.Application.Contracts/RegisterCheckItems/GetRegisterCheckItemInputDto.cs diff --git a/src/Shentun.Peis.Application.Contracts/RegisterCheckItems/GetRegisterCheckItemInputDto.cs b/src/Shentun.Peis.Application.Contracts/RegisterCheckItems/GetRegisterCheckItemInputDto.cs new file mode 100644 index 0000000..f3ee18f --- /dev/null +++ b/src/Shentun.Peis.Application.Contracts/RegisterCheckItems/GetRegisterCheckItemInputDto.cs @@ -0,0 +1,13 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace Shentun.Peis.RegisterCheckItems +{ + public class GetRegisterCheckItemInputDto + { + public Guid RegisterCheckId { get; set; } + + public Guid ItemId { get; set; } + } +} diff --git a/src/Shentun.Peis.Application.Contracts/RegisterCheckItems/RegisterCheckItemDto.cs b/src/Shentun.Peis.Application.Contracts/RegisterCheckItems/RegisterCheckItemDto.cs index 5a7342c..6b2c72b 100644 --- a/src/Shentun.Peis.Application.Contracts/RegisterCheckItems/RegisterCheckItemDto.cs +++ b/src/Shentun.Peis.Application.Contracts/RegisterCheckItems/RegisterCheckItemDto.cs @@ -1,49 +1,85 @@ using Shentun.Peis.ItemResultTemplates; using System; using System.Collections.Generic; +using System.ComponentModel.DataAnnotations.Schema; +using System.ComponentModel.DataAnnotations; using System.Text; namespace Shentun.Peis.RegisterCheckItems { - public class RegisterCheckItemDto: AuditedEntityDtoNameNoGuid + public class RegisterCheckItemDto { + /// + /// 项目名称 + /// + public string ItemName { get; set; } + public Guid RegisterCheckId { get; set; } /// /// 项目编号 /// public Guid ItemId { get; set; } + + + + /// - /// 结果 + /// 危急值范围 /// - public string? Result { get; set; } + public string CriticalRangeValue { get; set; } /// - /// 单位 + /// 危急值标志 /// - public string? Unit { get; set; } + public char? IsCriticalValue { get; set; } + /// - /// 参考范围 + /// 危急值处理内容 /// - public string? ReferenceRangeValue { get; set; } + public string CriticalValueContent { get; set; } + /// - /// 危急值范围 + /// 危急值创建者 + /// + public string CriticalValueCreatorName { get; set; } + + /// + /// 危急值创建日期 + /// + public string CriticalValueCreationTime { get; set; } + + + + /// + /// 危急值是否审核 Y-N /// - public string? CriticalRangeValue { get; set; } + public char? IsCriticalValueAudit { get; set; } + + /// - /// 危急值 + /// 该项目要否要复查 Y-N /// - public string? CriticalValue { get; set; } + public char? IsReview { get; set; } + + /// - /// 报告单提示 + /// 随访标志 Y-N /// - public string? ResultStatusId { get; set; } + public char? IsFollowUp { get; set; } + + /// - /// 检查医生 + /// 随访创建时间 /// - public string? CheckDoctorName { get; set; } + public string FollowUpCreationTime { get; set; } + + /// - /// 检查日期 + /// 随访创建者 /// - public string? CheckDate { get; set; } + public string FollowUpCreatorName { get; set; } + + + } } diff --git a/src/Shentun.Peis.Application/RegisterCheckItems/RegisterCheckItemAppService.cs b/src/Shentun.Peis.Application/RegisterCheckItems/RegisterCheckItemAppService.cs index f420021..c22d2a3 100644 --- a/src/Shentun.Peis.Application/RegisterCheckItems/RegisterCheckItemAppService.cs +++ b/src/Shentun.Peis.Application/RegisterCheckItems/RegisterCheckItemAppService.cs @@ -43,6 +43,8 @@ namespace Shentun.Peis.RegisterCheckItems private readonly CacheService _cacheService; private readonly ICurrentUser _currentUser; private readonly FollowUpAppService _followUpAppService; + private readonly IRepository _itemRepository; + private readonly IRepository _itemTypeRepository; public RegisterCheckItemAppService( IRepository registerCheckItemRepository, IRepository userRepository, @@ -56,7 +58,9 @@ namespace Shentun.Peis.RegisterCheckItems IRepository registerCheckAsbitemRepository, IRepository asbitemDetailRepository, ICurrentUser currentUser, - FollowUpAppService followUpAppService) + FollowUpAppService followUpAppService, + IRepository itemRepository, + IRepository itemTypeRepository) { this._registerCheckItemRepository = registerCheckItemRepository; this._userRepository = userRepository; @@ -71,6 +75,8 @@ namespace Shentun.Peis.RegisterCheckItems _asbitemDetailRepository = asbitemDetailRepository; _currentUser = currentUser; _followUpAppService = followUpAppService; + _itemRepository = itemRepository; + _itemTypeRepository = itemTypeRepository; } /// @@ -372,6 +378,47 @@ namespace Shentun.Peis.RegisterCheckItems } + /// + /// 获取单个明细结果 单危急值相关内容 + /// + /// + /// + /// + [HttpPost("api/app/RegisterCheckItem/GetRegisterCheckItem")] + public async Task GetRegisterCheckItemAsync(GetRegisterCheckItemInputDto input) + { + var registerCheckItemEnt = (from registerCheckItem in await _registerCheckItemRepository.GetQueryableAsync() + join item in await _itemRepository.GetQueryableAsync() on registerCheckItem.ItemId equals item.Id + where registerCheckItem.RegisterCheckId == input.RegisterCheckId && registerCheckItem.ItemId == input.ItemId + select new + { + registerCheckItem, + item + }).FirstOrDefault(); + if (registerCheckItemEnt == null) + { + throw new UserFriendlyException("数据不存在"); + } + + var entDto = new RegisterCheckItemDto + { + CriticalRangeValue = registerCheckItemEnt.registerCheckItem.CriticalRangeValue, + ItemId = registerCheckItemEnt.registerCheckItem.ItemId, + ItemName = registerCheckItemEnt.item.DisplayName, + RegisterCheckId = registerCheckItemEnt.registerCheckItem.RegisterCheckId, + CriticalValueContent = registerCheckItemEnt.registerCheckItem.CriticalValueContent, + CriticalValueCreationTime = DataHelper.ConversionDateToString(registerCheckItemEnt.registerCheckItem.CriticalValueCreationTime), + FollowUpCreationTime = DataHelper.ConversionDateToString(registerCheckItemEnt.registerCheckItem.FollowUpCreationTime), + IsFollowUp = registerCheckItemEnt.registerCheckItem.IsFollowUp == null ? 'N' : registerCheckItemEnt.registerCheckItem.IsFollowUp, + IsCriticalValue = registerCheckItemEnt.registerCheckItem.IsCriticalValue == null ? 'N' : registerCheckItemEnt.registerCheckItem.IsCriticalValue, + IsCriticalValueAudit = registerCheckItemEnt.registerCheckItem.IsCriticalValueAudit == null ? 'N' : registerCheckItemEnt.registerCheckItem.IsCriticalValueAudit, + IsReview = registerCheckItemEnt.registerCheckItem.IsReview == null ? 'N' : registerCheckItemEnt.registerCheckItem.IsReview, + CriticalValueCreatorName = _cacheService.GetSurnameAsync(registerCheckItemEnt.registerCheckItem.CriticalValueCreatorId).GetAwaiter().GetResult(), + FollowUpCreatorName = _cacheService.GetSurnameAsync(registerCheckItemEnt.registerCheckItem.FollowUpCreatorId).GetAwaiter().GetResult() + }; + + return entDto; + } /// /// 修改明细表危急值相关内容