From 25837fcd13b20a1112059b5188c9e8cbd224810a Mon Sep 17 00:00:00 2001 From: wxd <123@qq.com> Date: Fri, 26 Jul 2024 11:23:49 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A3=80=E9=AA=8C=E5=8D=95=E5=8F=B7=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E9=A1=B9=E7=9B=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../RegisterChecks/LisRequestNosInputDto.cs | 11 +++++++ .../RegisterChecks/RegisterCheckAppService.cs | 32 ++++++++++++++++++- 2 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 src/Shentun.Peis.Application.Contracts/RegisterChecks/LisRequestNosInputDto.cs diff --git a/src/Shentun.Peis.Application.Contracts/RegisterChecks/LisRequestNosInputDto.cs b/src/Shentun.Peis.Application.Contracts/RegisterChecks/LisRequestNosInputDto.cs new file mode 100644 index 0000000..a103760 --- /dev/null +++ b/src/Shentun.Peis.Application.Contracts/RegisterChecks/LisRequestNosInputDto.cs @@ -0,0 +1,11 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace Shentun.Peis.RegisterChecks +{ + public class LisRequestNosInputDto + { + public List LisRequestNos { get; set; } = new List(); + } +} diff --git a/src/Shentun.Peis.Application/RegisterChecks/RegisterCheckAppService.cs b/src/Shentun.Peis.Application/RegisterChecks/RegisterCheckAppService.cs index 310caf5..df25e78 100644 --- a/src/Shentun.Peis.Application/RegisterChecks/RegisterCheckAppService.cs +++ b/src/Shentun.Peis.Application/RegisterChecks/RegisterCheckAppService.cs @@ -2,6 +2,7 @@ using Microsoft.AspNetCore.Mvc; using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.Configuration; +using Org.BouncyCastle.Asn1.Ocsp; using Shentun.Peis.Asbitems; using Shentun.Peis.Enums; using Shentun.Peis.MenuInfos; @@ -53,6 +54,7 @@ namespace Shentun.Peis.RegisterChecks private readonly ICurrentUser _currentUser; private readonly IRepository _userItemTypeRepository; private readonly IRepository _asbitemRepository; + private readonly IRepository _lisRequestRepository; public RegisterCheckAppService(IRepository registerCheckRepository, IRepository registerCheckItemRepository, @@ -70,7 +72,8 @@ namespace Shentun.Peis.RegisterChecks IRepository userItemTypeRepository, IRepository asbitemRepository, IRepository registerCheckAsbitemRepository, - IRepository itemTypeRepository) + IRepository itemTypeRepository, + IRepository lisRequestRepository) { _registerCheckRepository = registerCheckRepository; _userRepository = userRepository; @@ -89,6 +92,7 @@ namespace Shentun.Peis.RegisterChecks _asbitemRepository = asbitemRepository; _registerCheckAsbitemRepository = registerCheckAsbitemRepository; _itemTypeRepository = itemTypeRepository; + _lisRequestRepository = lisRequestRepository; } /// @@ -554,6 +558,32 @@ namespace Shentun.Peis.RegisterChecks } + /// + /// 根据检验条码号集合获取所有项目 + /// + /// + /// + [HttpPost("api/app/RegisterCheck/GetRegisterCheckAsbitemsByLisRequestNos")] + public async Task> GetRegisterCheckAsbitemsByLisRequestNosAsync(LisRequestNosInputDto input) + { + if (!input.LisRequestNos.Any()) + throw new UserFriendlyException("检验条码号不能为空"); + var entListDto = (from patientRegister in await _patientRegisterRepository.GetQueryableAsync() + join registerCheck in await _registerCheckRepository.GetQueryableAsync() on patientRegister.Id equals registerCheck.PatientRegisterId + join registerCheckAsbitem in await _registerCheckAsbitemRepository.GetQueryableAsync() on registerCheck.Id equals registerCheckAsbitem.RegisterCheckId + join lisRequest in await _lisRequestRepository.GetQueryableAsync() on registerCheckAsbitem.LisRequestId equals lisRequest.Id + join asbitem in await _asbitemRepository.GetQueryableAsync() on registerCheckAsbitem.AsbitemId equals asbitem.Id + where input.LisRequestNos.Contains(lisRequest.LisRequestNo) && asbitem.IsCheck == 'Y' + select new SimpleAsbitemDto + { + AsbitemId = registerCheckAsbitem.AsbitemId, + AsbitemName = asbitem.DisplayName + }).Distinct().ToList(); + + return entListDto; + } + + /// /// 批量修改医生 根据人员ID集合 ///