diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml index 90e23482e..285f89791 100644 --- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml +++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml @@ -525,6 +525,13 @@ + + + 获取阅片标准可以导出的列表 + + + + 整体肿瘤评估 (目前仅仅 RECIST1.1 多个标准一个接口 Excel 列是一样的 ) diff --git a/IRaCIS.Core.Application/Service/Common/ExcelExportService.cs b/IRaCIS.Core.Application/Service/Common/ExcelExportService.cs index 59371f6d9..6382d5498 100644 --- a/IRaCIS.Core.Application/Service/Common/ExcelExportService.cs +++ b/IRaCIS.Core.Application/Service/Common/ExcelExportService.cs @@ -1,4 +1,5 @@ -using IRaCIS.Application.Contracts; +using DocumentFormat.OpenXml.Office2010.ExcelAc; +using IRaCIS.Application.Contracts; using IRaCIS.Application.Interfaces; using IRaCIS.Core.Application.Contracts; using IRaCIS.Core.Application.Service.Reading.Dto; @@ -33,7 +34,7 @@ namespace IRaCIS.Core.Application.Service.Common /// [HttpPost] [AllowAnonymous] - public async Task CRCVisitListExport(CRCVisitSearchDTO visitSearchDTO, + public async Task CRCVisitList_Export(CRCVisitSearchDTO visitSearchDTO, [FromServices] IRepository _commonDocumentRepository, [FromServices] IDictionaryService _dictionaryService, [FromServices] IRepository _subjectVisitRepository, @@ -157,6 +158,7 @@ namespace IRaCIS.Core.Application.Service.Common /// /// /// + [HttpPost] public async Task GetSubjectReadingPeriod_Export(GetReadModuleDto dto, [FromServices] IRepository _commonDocumentRepository, [FromServices] IDictionaryService _dictionaryService, @@ -188,6 +190,7 @@ namespace IRaCIS.Core.Application.Service.Common /// /// /// + [HttpPost] public async Task GetReadingPeriodList_Export(ReadPeriodQuery param, [FromServices] IRepository _commonDocumentRepository, [FromServices] IDictionaryService _dictionaryService, @@ -613,7 +616,7 @@ namespace IRaCIS.Core.Application.Service.Common cloneObj.AgainUserName = item.UserName; cloneObj.AgainEvaluateResult = item.EvaluateResult; - cloneObj.ArmEnum = item.ArmEnum; + cloneObj.AgainArmEnum = item.ArmEnum; cloneObj.IsGroupAnalysisDiffToOriginalData = cloneObj.ArmEnum == Arm.DoubleReadingArm1 ? item.IsGroupDiffArm1 : item.IsGroupDiffArm2; @@ -634,6 +637,58 @@ namespace IRaCIS.Core.Application.Service.Common } + public class ExportDocumentDes + { + public string Code { get; set; } + + public string FileName { get; set; } + + public ExportCatogory ExportCatogory { get;set; } + } + + + public enum ExportCatogory + { + // 整体肿瘤评估 + OverallTumorEvaluation =1, + + //肿瘤疗效评估 + EvaluationOfTumorEfficacy = 2, + + //评估病灶明细 + DetailedOfEvaluatedLesion = 3, + + + } + + /// + /// 获取阅片标准可以导出的列表 + /// + /// + /// + public async Task> GetTrialReadingCriterionCanExportDocumentList(Guid trialReadingCriterionId) + { + + var list = new List(); + var criterionType = await _repository.Where(t => t.Id == trialReadingCriterionId).Select(t => t.CriterionType).FirstOrDefaultAsync(); + + if (criterionType == CriterionType.RECIST1Pointt1) + { + list.Add( new ExportDocumentDes() { Code= StaticData.Export.OverallTumorEvaluation_Export ,ExportCatogory=ExportCatogory.OverallTumorEvaluation} ); + list.Add(new ExportDocumentDes() { Code = StaticData.Export.RECIST1Point1EvaluationOfTumorEfficacy_Export, ExportCatogory = ExportCatogory.EvaluationOfTumorEfficacy }); + list.Add(new ExportDocumentDes() { Code = StaticData.Export.RECIST1Point1DetailedOfEvaluatedLesion_Export, ExportCatogory = ExportCatogory.DetailedOfEvaluatedLesion }); + } + + var result = _repository.Where(t => list.Select(c=>c.Code).Contains(t.Code)).Select(c => new ExportDocumentDes() { Code = c.Code, FileName = c.Name }).ToList(); + + foreach (var item in list) + { + item.FileName = result.Where(t => t.Code == item.Code).FirstOrDefault()?.FileName; + } + + return list; + + } @@ -701,6 +756,7 @@ namespace IRaCIS.Core.Application.Service.Common /// /// /// + [HttpPost] public async Task GetEvaluationOfTumorEfficacy_Export(VisitTaskQuery queryVisitTask, [FromServices] IRepository _commonDocumentRepository, [FromServices] IDictionaryService _dictionaryService, diff --git a/IRaCIS.Core.Application/Service/QC/DTO/QCListViewModel.cs b/IRaCIS.Core.Application/Service/QC/DTO/QCListViewModel.cs index 59444cbb8..9514c6324 100644 --- a/IRaCIS.Core.Application/Service/QC/DTO/QCListViewModel.cs +++ b/IRaCIS.Core.Application/Service/QC/DTO/QCListViewModel.cs @@ -626,7 +626,7 @@ namespace IRaCIS.Core.Application.Contracts { [DictionaryTranslateAttribute("ArmEnum")] - public Arm AgainArmEnum { get; set; } + public Arm? AgainArmEnum { get; set; } public string AgainUserName { get; set; } diff --git a/IRaCIS.Core.Application/_MediatR/Handlers/ConsistencyVerificationHandler.cs b/IRaCIS.Core.Application/_MediatR/Handlers/ConsistencyVerificationHandler.cs index 55b056bcf..56c2464c4 100644 --- a/IRaCIS.Core.Application/_MediatR/Handlers/ConsistencyVerificationHandler.cs +++ b/IRaCIS.Core.Application/_MediatR/Handlers/ConsistencyVerificationHandler.cs @@ -113,7 +113,7 @@ namespace IRaCIS.Core.Application.MediatR.Handlers var dbSV = (await _subjectVisitRepository.FirstOrDefaultAsync(t => t.Id == sv.SubjectVisitId)).IfNullThrowException(); - // 该访视 在ETC Excel中没有任何数据 + // 该访视 在EDC Excel中没有任何数据 if (etcVisitStudyList.Count == 0) { dialogMsg.AppendLine($"
"); @@ -122,7 +122,7 @@ namespace IRaCIS.Core.Application.MediatR.Handlers foreach (var item in sv.StudyList) { num++; - dialogMsg.AppendLine($"
{num}.{item.StudyDate}  {item.Modality} 在导入文件中不存在"); + dialogMsg.AppendLine($"
{num}.{item.StudyDate}的{item.Modality}影像检查(EDC 缺少) "); } dialogMsg.AppendLine($"
");