From 9f2c3ed732faad248fc3bb57624744d773585327 Mon Sep 17 00:00:00 2001 From: "DESKTOP-G961P6V\\Zhh" <839860190@qq.com> Date: Thu, 9 May 2024 23:17:31 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=A0=E9=99=A4=E7=BB=84=E5=90=88=E9=A1=B9?= =?UTF-8?q?=E7=9B=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Patients/PatientManager.cs | 19 ++++++++------ .../RegisterCheckAsbitemManager.cs | 25 ++++++++++++++++++- .../PatientRegisterAppServiceTest.cs | 2 +- 3 files changed, 36 insertions(+), 10 deletions(-) diff --git a/src/Shentun.Peis.Domain/Patients/PatientManager.cs b/src/Shentun.Peis.Domain/Patients/PatientManager.cs index 8eb38c4..62aaf3b 100644 --- a/src/Shentun.Peis.Domain/Patients/PatientManager.cs +++ b/src/Shentun.Peis.Domain/Patients/PatientManager.cs @@ -139,8 +139,14 @@ namespace Shentun.Peis.Patients { throw new UserFriendlyException("该身份证号已经在人员信息中注册"); } + + } + + if (!string.IsNullOrWhiteSpace(sourceEntity.IdNo)) + { sourceEntity.BirthDate = ConvertExtr.ToBirthDateByIdNo(sourceEntity.IdNo); } + if (targetEntity.DisplayName != sourceEntity.DisplayName && targetEntity.SexId != sourceEntity.SexId) { throw new UserFriendlyException("人员信息姓名和性别和原来的信息都不一致,禁止修改"); @@ -148,10 +154,10 @@ namespace Shentun.Peis.Patients //targetEntity.MedicalCenterId = sourceEntity.MedicalCenterId; targetEntity.DisplayName = sourceEntity.DisplayName; targetEntity.MaritalStatusId = sourceEntity.MaritalStatusId; - if (!string.IsNullOrWhiteSpace(sourceEntity.Address)) - { - targetEntity.Address = sourceEntity.Address; - } + //if (!string.IsNullOrWhiteSpace(sourceEntity.Address)) + //{ + targetEntity.Address = sourceEntity.Address; + //} if (sourceEntity.BirthDate != null) { targetEntity.BirthDate = sourceEntity.BirthDate; @@ -162,10 +168,7 @@ namespace Shentun.Peis.Patients //{ targetEntity.Email = sourceEntity.Email; //} - //if (!string.IsNullOrWhiteSpace(sourceEntity.IdNo)) - //{ - targetEntity.IdNo = sourceEntity.IdNo; - //} + targetEntity.IdNo = sourceEntity.IdNo; //if (!string.IsNullOrWhiteSpace(sourceEntity.MobileTelephone)) //{ diff --git a/src/Shentun.Peis.Domain/RegisterCheckAsbitems/RegisterCheckAsbitemManager.cs b/src/Shentun.Peis.Domain/RegisterCheckAsbitems/RegisterCheckAsbitemManager.cs index b433645..e087f5e 100644 --- a/src/Shentun.Peis.Domain/RegisterCheckAsbitems/RegisterCheckAsbitemManager.cs +++ b/src/Shentun.Peis.Domain/RegisterCheckAsbitems/RegisterCheckAsbitemManager.cs @@ -31,6 +31,7 @@ namespace Shentun.Peis.RegisterAsbitems private readonly IRepository _patientRegisterRepository; private readonly IRepository _itemRepository; private readonly IRepository _referenceRangeRepository; + private readonly IRepository _chargeRequestRepository; private readonly ReferenceRangeManager _referenceRangeManager; private readonly RegisterCheckManager _registerCheckManager; private readonly RegisterCheckItemManager _registerCheckItemManager; @@ -47,7 +48,8 @@ namespace Shentun.Peis.RegisterAsbitems ReferenceRangeManager referenceRangeManager, RegisterCheckManager registerCheckManager, RegisterCheckItemManager registerCheckItemManager, - CacheService cacheService + CacheService cacheService, + IRepository chargeRequestRepository ) { this._registerCheckAsbitemRepository = registerCheckAsbitemRepository; @@ -63,6 +65,7 @@ namespace Shentun.Peis.RegisterAsbitems this._registerCheckManager = registerCheckManager; this._registerCheckItemManager = registerCheckItemManager; _cacheService = cacheService; + _chargeRequestRepository = chargeRequestRepository; } @@ -403,6 +406,26 @@ namespace Shentun.Peis.RegisterAsbitems { throw new UserFriendlyException($"{asbitem.DisplayName}已锁住不能删除"); } + if(existRegisterAsbitem.ChargeRequestId != null) + { + var chargeRequest = (await _chargeRequestRepository.GetQueryableAsync()).Where(o => o.Id == existRegisterAsbitem.ChargeRequestId).FirstOrDefault(); + if(chargeRequest != null) + { + if(chargeRequest.ChargeRequestFlag == ChargeRequestFlag.ChargeRequest) + { + throw new UserFriendlyException($"{asbitem.DisplayName}已有收费申请不能删除,必须先作废收费申请"); + } + if (chargeRequest.ChargeRequestFlag == ChargeRequestFlag.CancelChargeRequest) + { + throw new UserFriendlyException($"{asbitem.DisplayName}已有作废申请不能删除,必须先作废成功"); + } + if (chargeRequest.ChargeRequestFlag == ChargeRequestFlag.RefundRequest) + { + throw new UserFriendlyException($"{asbitem.DisplayName}已有退费申请不能删除,必须先退费"); + } + } + } + createRegisterCheckAsbitemEntity.DeleteRegisterCheckAsbitems.Add(existRegisterAsbitem); } } diff --git a/test/Shentun.Peis.Application.Tests/PatientRegisterAppServiceTest.cs b/test/Shentun.Peis.Application.Tests/PatientRegisterAppServiceTest.cs index 95e8e9b..e3de658 100644 --- a/test/Shentun.Peis.Application.Tests/PatientRegisterAppServiceTest.cs +++ b/test/Shentun.Peis.Application.Tests/PatientRegisterAppServiceTest.cs @@ -49,7 +49,7 @@ namespace Shentun.Peis PatientId = new Guid("3a126baf-7640-5698-cab6-c0ef3072622c"), PatientName = "test", SexId = SexFlag.Male, - BirthDate = (new DateTime(1979,9,9)).ToString("yyyy-MM-dd"), + BirthDate = (new DateTime(2000,9,9)).ToString("yyyy-MM-dd"), Age = 44, Telephone = "010-0000001", MobileTelephone = "18911254911",