diff --git a/ThirdPlugIns/Shentun.Peis.PlugIns.Gem/PeisGemPlugInsModule.cs b/ThirdPlugIns/Shentun.Peis.PlugIns.Gem/PeisGemPlugInsModule.cs new file mode 100644 index 0000000..50f12cd --- /dev/null +++ b/ThirdPlugIns/Shentun.Peis.PlugIns.Gem/PeisGemPlugInsModule.cs @@ -0,0 +1,21 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Volo.Abp; +using Volo.Abp.Modularity; + +namespace Shentun.Peis.PlugIns.Gem +{ + internal class PeisGemPlugInsModule : AbpModule + { + public override void OnApplicationInitialization(ApplicationInitializationContext context) + { + //var myService = context.ServiceProvider + // .GetRequiredService(); + + //myService.Initialize(); + } + } +} diff --git a/src/Shentun.Peis.Domain/PatientRegisters/PatientRegisterManager.cs b/src/Shentun.Peis.Domain/PatientRegisters/PatientRegisterManager.cs index 371c1c3..e810263 100644 --- a/src/Shentun.Peis.Domain/PatientRegisters/PatientRegisterManager.cs +++ b/src/Shentun.Peis.Domain/PatientRegisters/PatientRegisterManager.cs @@ -14,6 +14,7 @@ using Shentun.Peis.RegisterCheckPictures; using Shentun.Peis.RegisterChecks; using Shentun.Peis.RegisterCheckSuggestions; using Shentun.Peis.RegisterCheckSummarys; +using Shentun.Peis.SysParmValues; using Shentun.Utilities; using System; using System.Collections.Generic; @@ -65,7 +66,7 @@ namespace Shentun.Peis.PatientRegisters private readonly RegisterCheckManager _registerCheckManager; private readonly IRepository _sysParmValueRepository; private readonly IGuidGenerator _guidGenerator; - + private readonly SysParmValueManager _sysParmValueManager; public PatientRegisterManager( IRepository repository, IRepository customerOrgRegisterRepository, @@ -95,7 +96,8 @@ namespace Shentun.Peis.PatientRegisters RegisterCheckItemManager registerCheckItemManager, RegisterCheckCriticalValueManager registerCheckCriticalValueManager, RegisterCheckManager registerCheckManager, - IGuidGenerator guidGenerator) + IGuidGenerator guidGenerator, + SysParmValueManager sysParmValueManager) { _repository = repository; this._customerOrgRepository = customerOrgRepository; @@ -126,6 +128,7 @@ namespace Shentun.Peis.PatientRegisters this._registerCheckManager = registerCheckManager; this._sysParmValueRepository = sysParmValueRepository; _guidGenerator = guidGenerator; + _sysParmValueManager = sysParmValueManager; } /// /// 创建 @@ -756,90 +759,25 @@ namespace Shentun.Peis.PatientRegisters /// 生成条码号(规则,先找体检中心的配置,如未找到,就直接使用全局的) /// 模式(0 日期+尾号 1.顺序递增) /// - /// 体检中心ID + /// 体检中心ID /// - public async Task CreatePatientRegisterNo(Guid OrganizationUnitId) + public async Task CreatePatientRegisterNo(Guid medicalCenterId) { string PatientRegisterNo = ""; //条码号 List spvlist = await _sysParmValueRepository.GetListAsync(); - var spv_tjzx = spvlist.Where(m => m.MedicalCenterId == OrganizationUnitId); //体检中心配置 + var spv_tjzx = spvlist.Where(m => m.MedicalCenterId == medicalCenterId); //体检中心配置 var spv_global = spvlist.Where(m => m.MedicalCenterId == Guid.Empty); //全局配置 var patient_register_no_rule_coding = ""; // 模式(0 日期+尾号 1.顺序递增) var patient_register_no_rule_tail_len = ""; //尾号长度 var patient_register_no_rule_prefix = ""; //前缀 + patient_register_no_rule_coding = await _sysParmValueManager.GetSysParmValueAsync(medicalCenterId, "patient_register_no_rule_coding"); + patient_register_no_rule_tail_len = await _sysParmValueManager.GetSysParmValueAsync(medicalCenterId, "patient_register_no_rule_tail_len"); + patient_register_no_rule_prefix = await _sysParmValueManager.GetSysParmValueAsync(medicalCenterId, "patient_register_no_rule_prefix"); - if (spv_tjzx.Where(m => m.SysParmId == "patient_register_no_rule_coding").Count() > 0) - { - //获取体检中心配置 - patient_register_no_rule_coding = spv_tjzx.Where(m => m.SysParmId == "patient_register_no_rule_coding").FirstOrDefault().ParmValue; - } - if (string.IsNullOrWhiteSpace(patient_register_no_rule_coding)) - { - var patient_register_no_rule_coding_ent = spv_global.Where(m => m.SysParmId == "patient_register_no_rule_coding").FirstOrDefault(); - if (patient_register_no_rule_coding_ent == null) - { - throw new UserFriendlyException("全局系统参数patient_register_no_rule_coding未配置"); - } - else - { - //获取全局配置 - patient_register_no_rule_coding = patient_register_no_rule_coding_ent.ParmValue; - } - } - if (string.IsNullOrWhiteSpace(patient_register_no_rule_coding)) - { - throw new UserFriendlyException("人员条码号编码方式不能为空"); - } - patient_register_no_rule_coding = patient_register_no_rule_coding.Trim(); - - if (spv_tjzx.Where(m => m.SysParmId == "patient_register_no_rule_prefix").Count() > 0) - { - //获取体检中心配置 - patient_register_no_rule_prefix = spv_tjzx.Where(m => m.SysParmId == "patient_register_no_rule_prefix").FirstOrDefault().ParmValue; - } - if (string.IsNullOrWhiteSpace(patient_register_no_rule_prefix)) - { - var patient_register_no_rule_prefix_ent = spv_global.Where(m => m.SysParmId == "patient_register_no_rule_prefix").FirstOrDefault(); - if (patient_register_no_rule_prefix_ent == null) - { - throw new UserFriendlyException("全局系统参数patient_register_no_rule_prefix未配置"); - } - else - { - //获取全局配置 - patient_register_no_rule_prefix = patient_register_no_rule_prefix_ent.ParmValue; - } - - } - if (!string.IsNullOrEmpty(patient_register_no_rule_prefix)) - { - patient_register_no_rule_prefix = patient_register_no_rule_prefix.Trim(); - } - - if (spv_tjzx.Where(m => m.SysParmId == "patient_register_no_rule_tail_len").Count() > 0) - { - //获取体检中心配置 - patient_register_no_rule_tail_len = spv_tjzx.Where(m => m.SysParmId == "patient_register_no_rule_tail_len").FirstOrDefault().ParmValue; - } - - if (string.IsNullOrWhiteSpace(patient_register_no_rule_tail_len)) - { - var patient_register_no_rule_tail_len_ent = spv_global.Where(m => m.SysParmId == "patient_register_no_rule_tail_len").FirstOrDefault(); - if (patient_register_no_rule_tail_len_ent == null) - { - throw new UserFriendlyException("全局系统参数patient_register_no_rule_tail_len未配置"); - } - else - { - //获取全局配置 - patient_register_no_rule_tail_len = patient_register_no_rule_tail_len_ent.ParmValue; - } - - } if (string.IsNullOrWhiteSpace(patient_register_no_rule_tail_len)) { diff --git a/src/Shentun.Peis.Domain/Patients/PatientManager.cs b/src/Shentun.Peis.Domain/Patients/PatientManager.cs index 8cc086f..33c847b 100644 --- a/src/Shentun.Peis.Domain/Patients/PatientManager.cs +++ b/src/Shentun.Peis.Domain/Patients/PatientManager.cs @@ -2,6 +2,7 @@ using Shentun.Peis.Enums; using Shentun.Peis.HelperDto; using Shentun.Peis.Models; +using Shentun.Peis.SysParmValues; using Shentun.Utilities; using System; using System.Collections.Generic; @@ -26,13 +27,15 @@ namespace Shentun.Peis.Patients private readonly IRepository _patientRegisterRepository; private readonly IRepository _primarykeyBuilderRepository; private readonly IRepository _nationRepository; + private readonly SysParmValueManager _sysParmValueManager; public PatientManager( IRepository repository, IRepository sysParmValueRepository, IRepository customerOrgRepository, IRepository patientRegisterRepository, IRepository primarykeyBuilderRepository, - IRepository nationRepository) + IRepository nationRepository, + SysParmValueManager sysParmValueManager) { _repository = repository; this._sysParmValueRepository = sysParmValueRepository; @@ -40,6 +43,7 @@ namespace Shentun.Peis.Patients this._patientRegisterRepository = patientRegisterRepository; this._primarykeyBuilderRepository = primarykeyBuilderRepository; _nationRepository = nationRepository; + _sysParmValueManager = sysParmValueManager; } /// /// 创建 @@ -280,58 +284,14 @@ namespace Shentun.Peis.Patients /// 生成档案号(规则,先找体检中心的配置,如未找到,就直接使用全局的) /// 模式(默认为1 顺序递增) /// - /// 体检中心ID + /// 体检中心ID /// - private async Task CreatePatientNo(Guid OrganizationUnitId) + private async Task CreatePatientNo(Guid medicalCenterId) { - - List spvlist = await _sysParmValueRepository.GetListAsync(); - - var spv_tjzx = spvlist.Where(m => m.MedicalCenterId == OrganizationUnitId); //体检中心配置 - var spv_global = spvlist.Where(m => m.MedicalCenterId == Guid.Empty); //全局配置 - var patient_id_rule_prefix = ""; //前缀 - var patient_id_rule_tail_len = "4"; //尾号长度 - - - - if (spv_tjzx.Where(m => m.SysParmId == "patient_id_rule_prefix").Count() > 0) - { - //获取体检中心配置 - patient_id_rule_prefix = spv_tjzx.Where(m => m.SysParmId == "patient_id_rule_prefix").FirstOrDefault().ParmValue; - } - if (string.IsNullOrWhiteSpace(patient_id_rule_prefix)) - { - var patient_id_rule_prefix_ent = spv_global.Where(m => m.SysParmId == "patient_id_rule_prefix").FirstOrDefault(); - if (patient_id_rule_prefix_ent == null) - { - throw new UserFriendlyException("全局系统参数patient_id_rule_prefix未配置"); - } - else - { - //获取全局配置 - patient_id_rule_prefix = patient_id_rule_prefix_ent.ParmValue; - } - } - - if (spv_tjzx.Where(m => m.SysParmId == "patient_id_rule_tail_len").Count() > 0) - { - //获取体检中心配置 - patient_id_rule_tail_len = spv_tjzx.Where(m => m.SysParmId == "patient_id_rule_tail_len").FirstOrDefault().ParmValue; - } - if (string.IsNullOrWhiteSpace(patient_id_rule_tail_len)) - { - var patient_id_rule_tail_len_ent = spv_global.Where(m => m.SysParmId == "patient_id_rule_tail_len").FirstOrDefault(); - if (patient_id_rule_tail_len_ent == null) - { - throw new UserFriendlyException("全局系统参数patient_id_rule_tail_len未配置"); - } - else - { - //获取全局配置 - patient_id_rule_tail_len = patient_id_rule_tail_len_ent.ParmValue; - } - } + var patient_id_rule_tail_len = ""; //尾号长度 + patient_id_rule_tail_len = await _sysParmValueManager.GetSysParmValueAsync(medicalCenterId, "patient_id_rule_tail_len"); + patient_id_rule_prefix = await _sysParmValueManager.GetSysParmValueAsync(medicalCenterId, "patient_id_rule_prefix"); if (string.IsNullOrWhiteSpace(patient_id_rule_tail_len)) { diff --git a/test/Shentun.Peis.Application.Tests/PatientRegisterAppServiceTest.cs b/test/Shentun.Peis.Application.Tests/PatientRegisterAppServiceTest.cs index 85b2782..a37ab04 100644 --- a/test/Shentun.Peis.Application.Tests/PatientRegisterAppServiceTest.cs +++ b/test/Shentun.Peis.Application.Tests/PatientRegisterAppServiceTest.cs @@ -42,7 +42,7 @@ namespace Shentun.Peis var entity = new CreatePatientRegisterDto() { MedicalCenterId = new Guid("0de5b78a-731d-4f80-b262-655ebbf04581"), - PatientId = new Guid("3a119be6-d9aa-2e13-a764-0b363c60169d"), + //PatientId = new Guid("3a119be6-d9aa-2e13-a764-0b363c60169d"), CustomerOrgId = new Guid("00000000-0000-0000-0000-000000000001"), CustomerOrgRegisterId = new Guid("00000000-0000-0000-0000-000000000001"), PatientName = "test", @@ -54,14 +54,14 @@ namespace Shentun.Peis JobCardNo = "jobCardNo", MedicalCardNo = "MedicalCardNo", MaritalStatusId = MaritalStatusFlag.Married, - MedicalTypeId = new Guid("3a0c5093-6dbf-d29b-cfbc-b1f742ee59d3"), - PersonnelTypeId = new Guid("3a0c5099-a5f3-e41a-dfab-caeae79e0dfe"), + //MedicalTypeId = new Guid("3a0c5093-6dbf-d29b-cfbc-b1f742ee59d3"), + //PersonnelTypeId = new Guid("3a0c5099-a5f3-e41a-dfab-caeae79e0dfe"), NationId = "001", JobPost = "JobPost", JobTitle = "JobTitle", Salesman = "Salesman", - SexHormoneTermId = new Guid("3a0d38cf-8b3c-95db-1a69-5119f28dc468"), - MedicalConclusionId = new Guid("3a0c50fe-cacf-d3c8-8c3c-9d3495d8bd76"), + //SexHormoneTermId = new Guid("3a0d38cf-8b3c-95db-1a69-5119f28dc468"), + //MedicalConclusionId = new Guid("3a0c50fe-cacf-d3c8-8c3c-9d3495d8bd76"), IsUpload = 'N', CompleteFlag = PatientRegisterCompleteFlag.PreRegistration, IsMedicalStart = 'N', @@ -78,65 +78,65 @@ namespace Shentun.Peis Email = "83986010@qq.com" }; - entity.RegisterCheckAsbitems.Add(new CreatePatientRegisterRegisterCheckAsbitem() - { + //entity.RegisterCheckAsbitems.Add(new CreatePatientRegisterRegisterCheckAsbitem() + //{ - AsbitemId = new Guid("3a0c657d-4e73-9bab-68da-56ab2f088bb1"), - StandardPrice = 10, - ChargePrice = 10, - Amount = 1, - PayTypeFlag = PayTypeFlag.PersonPay, - IsCharge = 'N' - }); + // AsbitemId = new Guid("3a0c657d-4e73-9bab-68da-56ab2f088bb1"), + // StandardPrice = 10, + // ChargePrice = 10, + // Amount = 1, + // PayTypeFlag = PayTypeFlag.PersonPay, + // IsCharge = 'N' + //}); - entity.RegisterCheckAsbitems.Add(new CreatePatientRegisterRegisterCheckAsbitem() - { + //entity.RegisterCheckAsbitems.Add(new CreatePatientRegisterRegisterCheckAsbitem() + //{ - AsbitemId = new Guid("3a0c5616-dab2-c209-f099-a6231ef57ac3"), - StandardPrice = 10, - ChargePrice = 10, - Amount = 1, - PayTypeFlag = PayTypeFlag.PersonPay, - IsCharge = 'N' - }); + // AsbitemId = new Guid("3a0c5616-dab2-c209-f099-a6231ef57ac3"), + // StandardPrice = 10, + // ChargePrice = 10, + // Amount = 1, + // PayTypeFlag = PayTypeFlag.PersonPay, + // IsCharge = 'N' + //}); - entity.RegisterCheckAsbitems.Add(new CreatePatientRegisterRegisterCheckAsbitem() - { + //entity.RegisterCheckAsbitems.Add(new CreatePatientRegisterRegisterCheckAsbitem() + //{ - AsbitemId = new Guid("3a0c55f0-92b7-caa6-3fc3-f9f04ca45ad3"), - StandardPrice = 10, - ChargePrice = 10, - Amount = 1, - PayTypeFlag = PayTypeFlag.PersonPay, - IsCharge = 'N' - }); + // AsbitemId = new Guid("3a0c55f0-92b7-caa6-3fc3-f9f04ca45ad3"), + // StandardPrice = 10, + // ChargePrice = 10, + // Amount = 1, + // PayTypeFlag = PayTypeFlag.PersonPay, + // IsCharge = 'N' + //}); - entity.RegisterCheckAsbitems.Add(new CreatePatientRegisterRegisterCheckAsbitem() - { + //entity.RegisterCheckAsbitems.Add(new CreatePatientRegisterRegisterCheckAsbitem() + //{ - AsbitemId = new Guid("3a0c55fa-63b9-1510-3e81-20750c496d44"), - StandardPrice = 10, - ChargePrice = 10, - Amount = 1, - PayTypeFlag = PayTypeFlag.PersonPay, - IsCharge = 'N' - }); + // AsbitemId = new Guid("3a0c55fa-63b9-1510-3e81-20750c496d44"), + // StandardPrice = 10, + // ChargePrice = 10, + // Amount = 1, + // PayTypeFlag = PayTypeFlag.PersonPay, + // IsCharge = 'N' + //}); - entity.RegisterCheckAsbitems.Add(new CreatePatientRegisterRegisterCheckAsbitem() - { + //entity.RegisterCheckAsbitems.Add(new CreatePatientRegisterRegisterCheckAsbitem() + //{ - AsbitemId = new Guid("3a0c55fe-559e-d6e7-7f74-221edeeaf817"), - StandardPrice = 10, - ChargePrice = 10, - Amount = 1, - PayTypeFlag = PayTypeFlag.PersonPay, - IsCharge = 'N' - }); + // AsbitemId = new Guid("3a0c55fe-559e-d6e7-7f74-221edeeaf817"), + // StandardPrice = 10, + // ChargePrice = 10, + // Amount = 1, + // PayTypeFlag = PayTypeFlag.PersonPay, + // IsCharge = 'N' + //}); var newEntity = await _appService.CreatePatientRegisterAsync(entity); await unitOfWork.CompleteAsync();