diff --git a/src/Shentun.Peis.Application.Contracts/PrintReports/MedicalReportDto.cs b/src/Shentun.Peis.Application.Contracts/PrintReports/MedicalReportDto.cs
index 626632e..9bc549b 100644
--- a/src/Shentun.Peis.Application.Contracts/PrintReports/MedicalReportDto.cs
+++ b/src/Shentun.Peis.Application.Contracts/PrintReports/MedicalReportDto.cs
@@ -15,6 +15,8 @@ namespace Shentun.Peis.PrintReports
public class MedicalReportDto
{
#region 基础信息
+ //人员登记ID
+ public Guid PatientRegisterId { get; set; }
///
/// 是个人还是单位体检,Y-是个人,N-是单位
///
@@ -138,15 +140,15 @@ namespace Shentun.Peis.PrintReports
///
/// 综述
///
- public List SumSummarys { get; set; }
+ public List SumSummarys { get; set; } = new List();
///
/// 建议
///
- public List SumSuggestions { get; set; }
+ public List SumSuggestions { get; set; } = new List();
///
/// 检查组合项目结果
///
- public List RegisterChecks { get; set; }
+ public List RegisterChecks { get; set; } = new List();
@@ -172,7 +174,7 @@ namespace Shentun.Peis.PrintReports
///
/// 内容列表
///
- public List SummaryContents { get; set; }
+ public List SummaryContents { get; set; } = new List();
}
///
/// 综述内容
@@ -239,20 +241,10 @@ namespace Shentun.Peis.PrintReports
public class MedicalReportRegisterCheckDto
{
///
- /// 体检报告类别ID
+ /// 项目类别ID
///
- public char MedicalReportTypeId { get; set; }
- /////
- ///// 体检报告类别名称
- /////
- //public string MedicalReportTypeName { get; set; }
-
- public string TopItemTypeId { get; set; }
- public string TopItemTypeName { get; set; }
- ///
- /// 项目类别名称
- ///
- public string ItemTypeName { get; set; }
+ public Guid ItemTypeId { get; set; }
+
///
/// 组合项目名称,如果有多个组合项目用逗号隔开
///
@@ -268,7 +260,7 @@ namespace Shentun.Peis.PrintReports
/// 检查日期
///
public DateTime CheckDate { get; set; }
- public List MedicalReportTypes { get; set; } = new List();
+
///
/// 项目类别下的组合项目列表
///
@@ -311,7 +303,7 @@ namespace Shentun.Peis.PrintReports
///
/// 项目单位
///
- public string UnitName { get; set; }
+ public string Unit { get; set; }
///
/// 数据字体颜色
@@ -375,6 +367,10 @@ namespace Shentun.Peis.PrintReports
///
public class MedicalReportItemTypeDto
{
+ ///
+ /// 体检报告类别
+ ///
+ public char MedicalReportTypeId { get; set; }
///
/// 项目类别编号
///
@@ -382,13 +378,11 @@ namespace Shentun.Peis.PrintReports
///
/// 项目类别多级编码
///
- public string PathCode { get; set; }
+ public string ItemTypePathCode { get; set; }
///
/// 项目类别名
///
public string ItemTypeName { get; set; }
-
- public char IsTop { get; set; }
///
/// 显示顺序
///
diff --git a/src/Shentun.Peis.Application/PrintReports/PrintReportAppService.cs b/src/Shentun.Peis.Application/PrintReports/PrintReportAppService.cs
index 0d9df2a..90efe11 100644
--- a/src/Shentun.Peis.Application/PrintReports/PrintReportAppService.cs
+++ b/src/Shentun.Peis.Application/PrintReports/PrintReportAppService.cs
@@ -36,7 +36,8 @@ namespace Shentun.Peis.PrintReports
private readonly IRepository _patientRegisterRepository;
private readonly IRepository _registerCheckAsbitemRepository;
private readonly IRepository _registerCheckItemRepository;
- private readonly IRepository _registerCheckPictureRepository;
+ private readonly IRepository _registerCheckSummaryRepository;
+ private readonly IRepository _registerCheckPictureRepository;
private readonly IRepository _asbitemRepository;
private readonly IRepository- _itemRepository;
private readonly IRepository _medicalReportTypeRepository;
@@ -65,6 +66,7 @@ namespace Shentun.Peis.PrintReports
IRepository patientRegisterRepository,
IRepository registerCheckAsbitemRepository,
IRepository registerCheckItemRepository,
+ IRepository registerCheckSummaryRepository,
IRepository registerCheckPictureRepository,
IRepository asbitemRepository,
IRepository
- itemRepository,
@@ -107,12 +109,13 @@ namespace Shentun.Peis.PrintReports
this._sysParmValueManager = sysParmValueManager;
_registerCheckAsbitemRepository = registerCheckAsbitemRepository;
_registerCheckItemRepository = registerCheckItemRepository;
+ _registerCheckSummaryRepository = registerCheckSummaryRepository;
_registerCheckPictureRepository = registerCheckPictureRepository;
_asbitemRepository = asbitemRepository;
_itemRepository = itemRepository;
_medicalReportTypeRepository = medicalReportTypeRepository;
_itemTypeRepository = itemTypeRepository;
- _lisRequestRepository = lisRequestRepository;
+ _lisRequestRepository = lisRequestRepository;
_sampleGroupRepository = sampleGroupRepository;
_sampleContainerRepository = sampleContainerRepository;
_sampleTypeRepository = sampleTypeRepository;
@@ -243,16 +246,7 @@ namespace Shentun.Peis.PrintReports
[HttpPost("api/app/printreport/GetMedicalReport")]
public async Task GetMedicalReportAsync(PatientRegisterIdInputDto input)
{
- MedicalReportDto medicalReportDto = new MedicalReportDto();
-
- var userlist = await _identityUserRepository.GetListAsync();
-
- var customerOrgList = await _customerOrgRepository.GetListAsync();
-
- var organizationUnitList = await _organizationUnitRepository.GetListAsync();
-
- var sexList = await _sexRegisterRepository.GetListAsync();
-
+
var patientRegister = (await _patientRegisterRepository.GetDbSetAsync())
.Include(x => x.Patient)
.Where(m => m.Id == input.PatientRegisterId).FirstOrDefault();
@@ -260,17 +254,57 @@ namespace Shentun.Peis.PrintReports
{
throw new UserFriendlyException("人员登记信息不存在");
}
+ var medicalReportDto = await GetMedicalReportDto(patientRegister);
+
+ //获取综述
+ medicalReportDto.SumSummarys = await GetMedicalReportSummaryDtos(patientRegister);
+ //获取建议
+ medicalReportDto.SumSuggestions = await GetMedicalReportSuggestinoDtos(patientRegister);
+ //设置明细结果
+ await SetMedicalReportRegisterChecks(patientRegister, medicalReportDto);
+ return medicalReportDto;
+ }
+
+ ///
+ /// 打印Pacs条码数据
+ ///
+ ///
+ ///
+ [HttpPost("api/app/printreport/getpacsnoreport")]
+ public async Task
> GetPacsNoReportAsync(Guid PatientRegisterId)
+ {
+ return await _checkRequestNoReportRepository.GetPacsNoReportAsync(PatientRegisterId);
+ }
+
+ ///
+ /// 打印收费单
+ ///
+ /// 收费主表ID
+ ///
+ [HttpPost("api/app/printreport/getchargereport")]
+ public async Task GetChargeReportAsync(Guid ChargeId)
+ {
+ return await _chargeReportRepository.GetChargeReportAsync(ChargeId);
+ }
+ ///
+ /// 获取体检报告人员信息
+ ///
+ ///
+ ///
+ private async Task GetMedicalReportDto(PatientRegister patientRegister)
+ {
#region 系统参数配置
- var MedicalCenterAddress = await _sysParmValueManager.GetSysParmValueAsync(patientRegister.MedicalCenterId, "medical_center_address");
- var MedicalCenterFax = await _sysParmValueManager.GetSysParmValueAsync(patientRegister.MedicalCenterId, "medical_center_fax");
- var MedicalCenterTelphone = await _sysParmValueManager.GetSysParmValueAsync(patientRegister.MedicalCenterId, "medical_center_telphone");
+ var medicalCenterAddress = await _sysParmValueManager.GetSysParmValueAsync(patientRegister.MedicalCenterId, "medical_center_address");
+ var medicalCenterFax = await _sysParmValueManager.GetSysParmValueAsync(patientRegister.MedicalCenterId, "medical_center_fax");
+ var medicalCenterTelphone = await _sysParmValueManager.GetSysParmValueAsync(patientRegister.MedicalCenterId, "medical_center_telphone");
#endregion
#region 人员信息
- medicalReportDto = new MedicalReportDto
+ var medicalReportDto = new MedicalReportDto
{
//个人信息
+ PatientRegisterId = patientRegister.Id,
IsPersonal = 'N',
TopCustomerOrgName = _cacheService.GetTopCustomerOrgAsync(patientRegister.CustomerOrgId).Result.DisplayName,
DepartmentName = _cacheService.GetCustomerOrgAsync(patientRegister.CustomerOrgId).Result.DisplayName,
@@ -293,8 +327,8 @@ namespace Shentun.Peis.PrintReports
AuditDoctorName = _cacheService.GetUserNameAsync(patientRegister.AuditDoctorId).Result,
AuditDate = patientRegister.AuditDate,
//体检中心信息
- MedicalCenterTelphone = MedicalCenterTelphone,
- MedicalCenterAddress = MedicalCenterAddress,
+ MedicalCenterTelphone = medicalCenterTelphone,
+ MedicalCenterAddress = medicalCenterAddress,
MedicalCenterId = patientRegister.MedicalCenterId,
MedicalCenterName = (await _organizationUnitRepository.GetAsync(patientRegister.MedicalCenterId)).DisplayName,
};
@@ -303,20 +337,22 @@ namespace Shentun.Peis.PrintReports
medicalReportDto.IsPersonal = 'Y';
}
#endregion
- var resultStatusList = (await _resultStatusRepository.GetListAsync());
- //获取体检报告类别
- medicalReportDto.MedicalReportTypes = await GetMedicalReportTypeList();
- //获取项目类别
- medicalReportDto.ItemTypes = await GetItemTypeList();
- #region 综述
-
+ return medicalReportDto;
+ }
+ ///
+ /// 获取体检报告综述
+ ///
+ ///
+ ///
+ private async Task> GetMedicalReportSummaryDtos(PatientRegister patientRegister)
+ {
var sumSummarylist = (await _sumSummaryHeaderRepository.GetDbSetAsync())
- .Include(x => x.SumSummaryContents)
- .Where(m => m.PatientRegisterId == input.PatientRegisterId).OrderBy(o => o.DisplayOrder).ToList();
-
+ .Include(x => x.SumSummaryContents)
+ .Where(m => m.PatientRegisterId == patientRegister.Id).OrderBy(o => o.DisplayOrder).ToList();
+ var medicalReportSumSummaryDtos = new List();
if (sumSummarylist.Any())
{
- medicalReportDto.SumSummarys = sumSummarylist.Select(s => new MedicalReportSumSummaryDto
+ medicalReportSumSummaryDtos = sumSummarylist.Select(s => new MedicalReportSumSummaryDto
{
SummaryTitle = s.SummaryTitle,
SummaryFlag = s.SummaryFlag,
@@ -328,18 +364,22 @@ namespace Shentun.Peis.PrintReports
}).OrderBy(o => o.DisplayOrder).ToList()
}).OrderBy(o => o.DisplayOrder).ToList();
}
-
- #endregion
-
- #region 建议
-
+ return medicalReportSumSummaryDtos;
+ }
+ ///
+ /// 获取体检报告建议
+ ///
+ ///
+ ///
+ private async Task> GetMedicalReportSuggestinoDtos(PatientRegister patientRegister)
+ {
var sumSuggestionlist = (await _sumSuggestionHeaderRepository.GetDbSetAsync())
.Include(x => x.SumSuggestionContents)
- .Where(m => m.PatientRegisterId == input.PatientRegisterId).OrderBy(o => o.DisplayOrder).ToList();
-
+ .Where(m => m.PatientRegisterId == patientRegister.Id).OrderBy(o => o.DisplayOrder).ToList();
+ var medicalReportSumSuggestionDtos = new List();
if (sumSuggestionlist.Any())
{
- medicalReportDto.SumSuggestions = sumSuggestionlist.Select(s => new MedicalReportSumSuggestionDto
+ medicalReportSumSuggestionDtos = sumSuggestionlist.Select(s => new MedicalReportSumSuggestionDto
{
SuggestionTitle = s.SuggestionTitle,
SuggestionFlag = s.SuggestionFlag,
@@ -371,59 +411,76 @@ namespace Shentun.Peis.PrintReports
})
.OrderBy(o => o.DisplayOrder).ToList();
}
-
- #endregion
-
- #region 明细结果
-
- var detailedResultsList = new List();
+ return medicalReportSumSuggestionDtos;
+ }
+ ///
+ /// 获取体检报告明细结果
+ ///
+ ///
+ ///
+ ///
+ private async Task SetMedicalReportRegisterChecks(PatientRegister patientRegister, MedicalReportDto medicalReportDto)
+ {
+ var resultStatusList = (await _resultStatusRepository.GetListAsync());
+ //获取体检报告类别
+ medicalReportDto.MedicalReportTypes = await GetMedicalReportTypeList();
+ //获取项目类别
+ medicalReportDto.ItemTypes = await GetItemTypeList();
var registerChecklist = (from registerCheck in await _registerCheckRepository.GetQueryableAsync()
- join registerAsbitem in await _registerCheckAsbitemRepository.GetQueryableAsync()
- on registerCheck.Id equals registerAsbitem.RegisterCheckId
- join registerCheckItem in await _registerCheckItemRepository.GetQueryableAsync()
- on registerCheck.Id equals registerCheckItem.RegisterCheckId
- join registerCheckPicture in await _registerCheckPictureRepository.GetQueryableAsync()
- on registerCheck.Id equals registerCheckPicture.RegisterCheckId into registerCheckPictureExist
- from registerCheckPictureHaveEmpty in registerCheckPictureExist.DefaultIfEmpty()
- join asbitem in await _asbitemRepository.GetQueryableAsync()
+ join registerAsbitem in await _registerCheckAsbitemRepository.GetQueryableAsync()
+ on registerCheck.Id equals registerAsbitem.RegisterCheckId
+ join registerCheckItem in await _registerCheckItemRepository.GetQueryableAsync()
+ on registerCheck.Id equals registerCheckItem.RegisterCheckId
+ join registerCheckPicture in await _registerCheckPictureRepository.GetQueryableAsync()
+ on registerCheck.Id equals registerCheckPicture.RegisterCheckId into registerCheckPictureExist
+ from registerCheckPictureHaveEmpty in registerCheckPictureExist.DefaultIfEmpty()
+ join registerCheckSummary in await _registerCheckSummaryRepository.GetQueryableAsync()
+ on registerCheck.Id equals registerCheckSummary.RegisterCheckId into registerCheckSummaryExist
+ from registerCheckSummaryHaveEmpty in registerCheckSummaryExist.DefaultIfEmpty()
+ join asbitem in await _asbitemRepository.GetQueryableAsync()
on registerAsbitem.AsbitemId equals asbitem.Id
- join item in await _itemRepository.GetQueryableAsync()
- on registerCheckItem.ItemId equals item.Id
- join itemType in await _itemTypeRepository.GetQueryableAsync()
- on asbitem.ItemTypeId equals itemType.Id
- join medicalReportType in await _medicalReportTypeRepository.GetQueryableAsync()
- on itemType.MedicalReportTypeId equals medicalReportType.Id
- where (registerCheck.PatientRegisterId == input.PatientRegisterId)
- select new
- {
- registerCheck,
- registerAsbitem,
- registerCheckItem,
- registerCheckPictureHaveEmpty,
- asbitem,
- item,
- itemType,
- medicalReportType
- })
- .OrderBy(o=>o.registerCheck.Id)
+ join item in await _itemRepository.GetQueryableAsync()
+ on registerCheckItem.ItemId equals item.Id
+ join itemType in await _itemTypeRepository.GetQueryableAsync()
+ on asbitem.ItemTypeId equals itemType.Id
+ join medicalReportType in await _medicalReportTypeRepository.GetQueryableAsync()
+ on itemType.MedicalReportTypeId equals medicalReportType.Id
+ where (registerCheck.PatientRegisterId == patientRegister.Id
+ && registerCheck.CompleteFlag == RegisterCheckCompleteFlag.Checked)
+ select new
+ {
+ registerCheck,
+ registerAsbitem,
+ registerCheckItem,
+ registerCheckPictureHaveEmpty,
+ registerCheckSummaryHaveEmpty,
+ asbitem,
+ item,
+ itemType,
+ medicalReportType
+ })
+ .OrderBy(o => o.registerCheck.Id)
.ToList();
- var registerCheckIds = registerChecklist.Select(o=>o.registerCheck.Id).Distinct().ToList();
- foreach(var registerCheckId in registerCheckIds)
+ var registerCheckIds = registerChecklist.Select(o => o.registerCheck.Id).Distinct().ToList();
+ foreach (var registerCheckId in registerCheckIds)
{
var registerCheckRows = registerChecklist.Where(o => o.registerCheck.Id == registerCheckId).ToList();
+ var registerCheckRow = registerCheckRows.First();
var medicalReportRegisterCheckDto = new MedicalReportRegisterCheckDto()
{
- MedicalReportTypeId = registerCheckRows.First().medicalReportType.Id,
- ItemTypeName = registerCheckRows.First().itemType.DisplayName,
+ ItemTypeId = registerCheckRow.itemType.Id,
AsbitemNames = string.Join(",", registerCheckRows.
- GroupBy(o=>o.asbitem.Id).
- Select(d => d.Select(o=>o.asbitem.DisplayName))),
- CheckDate = (DateTime)registerCheckRows.First().registerCheck.CheckDate,
+ GroupBy(o => o.asbitem.Id).
+ Select(d => d.First().asbitem.DisplayName
+ )
+ .ToList()
+ ),
+ CheckDate = (DateTime)registerCheckRow.registerCheck.CheckDate,
};
//检查医生
- var checkDoctorId = registerCheckRows.First().registerCheck.CheckDoctorId;
+ var checkDoctorId = registerCheckRow.registerCheck.CheckDoctorId;
if (!string.IsNullOrWhiteSpace(checkDoctorId))
{
if (Guid.TryParse(checkDoctorId, out var checkDoctorIdGuid))
@@ -436,42 +493,60 @@ namespace Shentun.Peis.PrintReports
}
}
//显示顺序
- medicalReportRegisterCheckDto.DisplayOrder = registerCheckRows.First().itemType.DisplayOrder;
- }
-
-
- #endregion
-
-
-
-
- return medicalReportDto;
- }
-
-
+ medicalReportRegisterCheckDto.DisplayOrder = registerCheckRow.asbitem.DisplayOrder;
+ //明细结果
+ foreach (var registerCheckItemRow in registerCheckRows)
+ {
+ if (medicalReportRegisterCheckDto.Items.
+ Where(o => o.ItemId == registerCheckItemRow.registerCheckItem.ItemId).Count() > 0)
+ {
+ continue;
+ }
- ///
- /// 打印Pacs条码数据
- ///
- ///
- ///
- [HttpPost("api/app/printreport/getpacsnoreport")]
- public async Task> GetPacsNoReportAsync(Guid PatientRegisterId)
- {
- return await _checkRequestNoReportRepository.GetPacsNoReportAsync(PatientRegisterId);
+ var medicalReportCheckItemDto = new MedicalReportCheckItemDto()
+ {
+ ItemId = registerCheckItemRow.registerCheckItem.ItemId,
+ ItemName = registerCheckItemRow.item.DisplayName,
+ Result = registerCheckItemRow.registerCheckItem.Result,
+ ReferenceRangeValue = registerCheckItemRow.registerCheckItem.ReferenceRangeValue,
+ CriticalRangeValue = registerCheckItemRow.registerCheckItem.CriticalRangeValue,
+ Unit = registerCheckItemRow.registerCheckItem.Unit,
+ ReportFontColor = resultStatusList.Where(o => o.Id == registerCheckItemRow.registerCheckItem.ResultStatusId).First().ReportFontColor,
+ ReportBackgroundColor = resultStatusList.Where(o => o.Id == registerCheckItemRow.registerCheckItem.ResultStatusId).First().ReportBackgroundColor,
+ ReportPrompt = resultStatusList.Where(o => o.Id == registerCheckItemRow.registerCheckItem.ResultStatusId).First().ReportPrompt,
+ DisplayOrder = registerCheckItemRow.item.DisplayOrder,
+ };
+ medicalReportRegisterCheckDto.Items.Add(medicalReportCheckItemDto);
+ }
+ //小结
+ medicalReportRegisterCheckDto.Summarys = registerCheckRows.Select(o => new MedicalReportCheckAsbitemSummaryDto()
+ {
+ Summary = o.registerCheckSummaryHaveEmpty.Summary,
+ DisplayOrder = o.registerCheckSummaryHaveEmpty.DisplayOrder
+ }).OrderBy(o => o.DisplayOrder).Distinct().ToList();
+ //图片
+ var registerCheckPictures = registerCheckRows.Where(o => o.registerCheckPictureHaveEmpty != null &&
+ o.registerCheckPictureHaveEmpty.IsPrint == 'Y')
+ .Select(o => new
+ {
+ PictureFilename = o.registerCheckPictureHaveEmpty.PictureFilename,
+ DisplayOrder = o.registerCheckPictureHaveEmpty.DisplayOrder
+ }).OrderBy(o => o.DisplayOrder).Distinct().ToList();
+ foreach (var registerCheckPicture in registerCheckPictures)
+ {
+ var medicalReportCheckPictureDto = new MedicalReportCheckPictureDto();
+ medicalReportCheckPictureDto.PictureBase64 =
+ Shentun.Utilities.FileHelper.ToBase64(registerCheckPicture.PictureFilename);
+ medicalReportCheckPictureDto.DisplayOrder = registerCheckPicture.DisplayOrder;
+ medicalReportRegisterCheckDto.Pictures.Add(medicalReportCheckPictureDto);
+ }
+ medicalReportDto.RegisterChecks.Add(medicalReportRegisterCheckDto);
+ }
}
-
///
- /// 打印收费单
+ /// 获取项目类别
///
- /// 收费主表ID
///
- [HttpPost("api/app/printreport/getchargereport")]
- public async Task GetChargeReportAsync(Guid ChargeId)
- {
- return await _chargeReportRepository.GetChargeReportAsync(ChargeId);
- }
-
private async Task> GetItemTypeList()
{
var itemTypes = await _itemTypeRepository.GetListAsync();
@@ -480,19 +555,21 @@ namespace Shentun.Peis.PrintReports
{
var medicalReportItemTypeDto = new MedicalReportItemTypeDto()
{
+ MedicalReportTypeId = itemType.MedicalReportTypeId,
ItemTypeId = itemType.Id,
ItemTypeName = itemType.DisplayName,
- PathCode = itemType.PathCode,
+ ItemTypePathCode = itemType.PathCode,
DisplayOrder = itemType.DisplayOrder,
- IsTop = 'N'
};
- if(itemType.PathCode.Length <= 5)
- {
- medicalReportItemTypeDto.IsTop = 'Y';
- }
+ medicalReportItemTypeDtos.Add(medicalReportItemTypeDto);
+
}
return medicalReportItemTypeDtos;
}
+ ///
+ /// 获取体检报告类别
+ ///
+ ///
private async Task> GetMedicalReportTypeList()
{
var medicalReportTypes = (await _medicalReportTypeRepository.GetListAsync()).OrderBy(o => o.DisplayOrder);
diff --git a/test/Shentun.Peis.Application.Tests/PrintReportAppServiceTest.cs b/test/Shentun.Peis.Application.Tests/PrintReportAppServiceTest.cs
index 563d245..afb1220 100644
--- a/test/Shentun.Peis.Application.Tests/PrintReportAppServiceTest.cs
+++ b/test/Shentun.Peis.Application.Tests/PrintReportAppServiceTest.cs
@@ -43,5 +43,46 @@ namespace Shentun.Peis
await unitOfWork.CompleteAsync();
}
}
+
+ [Fact]
+ public async Task GetMedicalReportAsync()
+ {
+ using (var unitOfWork = _unitOfWorkManager.Begin(isTransactional: true))
+ {
+ var medicalReportDto = await _appService.GetMedicalReportAsync(new PatientRegisterIdInputDto()
+ {
+ PatientRegisterId = new Guid("3a11ee70-02cb-c5e6-a087-79ecdd0356b6")
+ });
+ _output.WriteLine(medicalReportDto.PatientName);
+ foreach (var medicalReportType in medicalReportDto.MedicalReportTypes)
+ {
+ _output.WriteLine("体检报告类别:" + medicalReportType.MedicalReportTypeName);
+ var topItemTypes = medicalReportDto.ItemTypes.Where(o => o.MedicalReportTypeId == medicalReportType.MedicalReportTypeId
+ && o.ItemTypePathCode.Length == 5)
+ .OrderBy(o => o.DisplayOrder).ToList();
+ foreach (var topItemType in topItemTypes)
+ {
+ var itemTypes = medicalReportDto.ItemTypes.Where(o => o.ItemTypePathCode.StartsWith(topItemType.ItemTypePathCode)).ToList();
+ foreach (var itemType in itemTypes)
+ {
+ var registerChecks = medicalReportDto.RegisterChecks.Where(o => o.ItemTypeId == itemType.ItemTypeId).OrderBy(o => o.DisplayOrder).ToList();
+ if (registerChecks.Any())
+ {
+ _output.WriteLine("项目类别:" + itemType.ItemTypeName);
+ foreach (var registerCheck in registerChecks)
+ {
+ _output.WriteLine("检查医生:" + registerCheck.CheckDoctorName + "组合项目:" + registerCheck.AsbitemNames);
+ foreach (var registerCheckItem in registerCheck.Items)
+ {
+ _output.WriteLine("项目:" + registerCheckItem.ItemName + "结果:" + registerCheckItem.Result);
+ }
+ }
+ }
+ }
+ }
+ }
+ await unitOfWork.CompleteAsync();
+ }
+ }
}
}
diff --git a/test/Shentun.Peis.EntityFrameworkCore.Tests/EntityFrameworkCore/PeisEntityFrameworkCoreTestModule.cs b/test/Shentun.Peis.EntityFrameworkCore.Tests/EntityFrameworkCore/PeisEntityFrameworkCoreTestModule.cs
index 199c37d..c4c6915 100644
--- a/test/Shentun.Peis.EntityFrameworkCore.Tests/EntityFrameworkCore/PeisEntityFrameworkCoreTestModule.cs
+++ b/test/Shentun.Peis.EntityFrameworkCore.Tests/EntityFrameworkCore/PeisEntityFrameworkCoreTestModule.cs
@@ -40,8 +40,8 @@ public class PeisEntityFrameworkCoreTestModule : AbpModule
}
private void ConfigurePostGress(IServiceCollection services)
{
- //string connectStr = "Host=140.143.162.39;Port=5432;Database=ShentunPeis070703;User ID=postgres;Password=shentun123";
- string connectStr = "Host=10.1.12.140;Port=5432;Database=ShentunPeis;User ID=postgres;Password=st123;";
+ string connectStr = "Host=140.143.162.39;Port=5432;Database=ShentunPeis070703;User ID=postgres;Password=shentun123";
+ //string connectStr = "Host=10.1.12.140;Port=5432;Database=ShentunPeis;User ID=postgres;Password=st123;";
services.Configure(options =>
{