diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
index 18df0703..7c533384 100644
--- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
+++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
@@ -513,14 +513,14 @@
- 自身一致性分析
+ 自身一致性分析(仅做了resist1.1)
- 组件一致性分析
+ 组件一致性分析(仅做了resist1.1)
@@ -532,13 +532,7 @@
-
-
- 肿瘤疗效评估表 ( 目前 RECIST1.1)
-
-
-
-
+
评估病灶明细表 ( 目前 RECIST1.1 PGW3 表都是不同的)
diff --git a/IRaCIS.Core.Application/Service/Common/ExcelExportService.cs b/IRaCIS.Core.Application/Service/Common/ExcelExportService.cs
index e3246e4d..4868b3d1 100644
--- a/IRaCIS.Core.Application/Service/Common/ExcelExportService.cs
+++ b/IRaCIS.Core.Application/Service/Common/ExcelExportService.cs
@@ -14,6 +14,8 @@ using System.Threading.Tasks;
namespace IRaCIS.Core.Application.Service.Common
{
+
+ [ApiExplorerSettings(GroupName = "Common")]
public class ExcelExportService : BaseService
{
@@ -458,7 +460,7 @@ namespace IRaCIS.Core.Application.Service.Common
///
- /// 自身一致性分析
+ /// 自身一致性分析(仅做了resist1.1)
///
///
///
@@ -524,12 +526,12 @@ namespace IRaCIS.Core.Application.Service.Common
exportInfo.List = list;
- return await ExcelExportHelper.DataExportAsync(StaticData.Export.TrialMedicalReviewList_Export, exportInfo, "", _commonDocumentRepository, _hostEnvironment, _dictionaryService, typeof(SelftAnalysisExport));
+ return await ExcelExportHelper.DataExportAsync(StaticData.Export.TrialSelfAnalysisList_Export, exportInfo, "", _commonDocumentRepository, _hostEnvironment, _dictionaryService, typeof(SelftAnalysisExport));
}
///
- /// 组件一致性分析
+ /// 组件一致性分析(仅做了resist1.1)
///
///
///
@@ -571,25 +573,51 @@ namespace IRaCIS.Core.Application.Service.Common
var list = allList.Where(t => t.IsSelfAnalysis == null).OrderBy(t => t.TrialSiteCode).ThenBy(t => t.SubjectCode).ThenBy(t => t.VisitTaskNum).ToList();
- //To do 根据任务Id 找对评估结果,这里需要考虑标准 以及对应的翻译
+ var newList=new List();
+ // 每个subject访视进行分组
- foreach (var item in list)
+ foreach (var group in list.GroupBy(t => new { t.SubjectCode, t.VisitTaskNum, t.TaskName, t.ArmEnum })
+ .OrderBy(g => g.Key.SubjectCode)
+ .ThenBy(g => g.Key.VisitTaskNum)
+ //.ThenBy(g => g.Key.ArmEnum)
+ )
{
- //找到一致性分析的结果
- var groupAnalysisTask = allList.Where(t => t.IsSelfAnalysis == false && t.SubjectCode == item.SubjectCode && t.VisitTaskNum == item.VisitTaskNum && t.TaskName == t.TaskName).FirstOrDefault();
+ var subjectVisitGroupList = group.ToList();
- item.AgainEvaluateResult = groupAnalysisTask?.EvaluateResult ?? String.Empty;
+
+ //找到当前访视组件一致性分析的任务结果
+
+ var groupTaskList = allList.Where(t => t.IsSelfAnalysis == false && t.SubjectCode == group.Key.SubjectCode && t.VisitTaskNum == group.Key.VisitTaskNum && t.TaskName == group.Key.TaskName).ToList();
+
+ foreach (var subjectVisitTaskArm in subjectVisitGroupList.OrderBy(t => t.ArmEnum))
+ {
+
+ foreach (var item in groupTaskList)
+ {
+ var cloneObj = subjectVisitTaskArm.Clone();
+
+
+ cloneObj.AgainUserName= item.UserName;
+ cloneObj.AgainEvaluateResult = item.EvaluateResult;
+ cloneObj.ArmEnum = item.ArmEnum;
+ //cloneObj.IsGroupAnalysisDiffToOriginalData = item.ArmEnum;
+
+ newList.Add(cloneObj);
+ }
+ }
}
+
+
var exportInfo = (await _trialRepository.Where(t => t.Id == queryVisitTask.TrialId).IgnoreQueryFilters().ProjectTo(_mapper.ConfigurationProvider).FirstOrDefaultAsync()).IfNullThrowException();
- exportInfo.List = list;
+ exportInfo.List = newList;
- return await ExcelExportHelper.DataExportAsync(StaticData.Export.TrialMedicalReviewList_Export, exportInfo, "", _commonDocumentRepository, _hostEnvironment, _dictionaryService, typeof(TaskMedicalReviewExportDto));
+ return await ExcelExportHelper.DataExportAsync(StaticData.Export.TrialGroupAnalysisList_Export, exportInfo, "", _commonDocumentRepository, _hostEnvironment, _dictionaryService, typeof(GroupAnalysisExport));
}
@@ -640,7 +668,7 @@ namespace IRaCIS.Core.Application.Service.Common
exportInfo.List = list;
- return await ExcelExportHelper.DataExportAsync(StaticData.Export.TrialMedicalReviewList_Export, exportInfo, "", _commonDocumentRepository, _hostEnvironment, _dictionaryService, typeof(OverallTumorEvaluationExport), criterionType);
+ return await ExcelExportHelper.DataExportAsync(StaticData.Export.OverallTumorEvaluation_Export, exportInfo, "", _commonDocumentRepository, _hostEnvironment, _dictionaryService, typeof(OverallTumorEvaluationExport), criterionType);
}
///
@@ -689,8 +717,6 @@ namespace IRaCIS.Core.Application.Service.Common
exportInfo.List = list;
return await ExcelExportHelper.DataExportAsync(StaticData.Export.TrialMedicalReviewList_Export, exportInfo, "", _commonDocumentRepository, _hostEnvironment, _dictionaryService, typeof(RECIST1Point1EvaluationOfTumorEfficacyExport), criterionType);
-
-
}
else
diff --git a/IRaCIS.Core.Application/Service/QC/DTO/QCListViewModel.cs b/IRaCIS.Core.Application/Service/QC/DTO/QCListViewModel.cs
index 6e474003..325d8a1e 100644
--- a/IRaCIS.Core.Application/Service/QC/DTO/QCListViewModel.cs
+++ b/IRaCIS.Core.Application/Service/QC/DTO/QCListViewModel.cs
@@ -625,6 +625,13 @@ namespace IRaCIS.Core.Application.Contracts
public class GroupAnalysisExport: AnalysisExortCommon
{
+ [DictionaryTranslateAttribute("ArmEnum")]
+ public Arm AgainArmEnum { get; set; }
+
+ public string AgainUserName { get; set; }
+
+ public bool? IsGroupAnalysisDiffToOriginalData { get; set; }
+
}
public class SelftAnalysisExport: AnalysisExortCommon
diff --git a/IRaCIS.Core.Domain/_Config/_StaticData.cs b/IRaCIS.Core.Domain/_Config/_StaticData.cs
index faa55e36..fa3b327b 100644
--- a/IRaCIS.Core.Domain/_Config/_StaticData.cs
+++ b/IRaCIS.Core.Domain/_Config/_StaticData.cs
@@ -155,7 +155,27 @@ public static class StaticData
public const string TrialMedicalReviewList_Export = "TrialMedicalReviewList_Export";
-
+
+ //public const string TrialRECIST1Point1SelfAnalysisList_Export = "TrialRECIST1Point1SelfAnalysisList_Export";
+
+ //public const string TrialRECIST1Point1GroupAnalysisList_Export = "TrialRECIST1Point1GroupAnalysisList_Export";
+
+
+ public const string TrialSelfAnalysisList_Export = "TrialSelfAnalysisList_Export";
+
+ public const string TrialGroupAnalysisList_Export = "TrialGroupAnalysisList_Export";
+
+
+ public const string OverallTumorEvaluation_Export = "OverallTumorEvaluation_Export";
+
+
+ public const string RECIST1Point1EvaluationOfTumorEfficacy_Export = "RECIST1Point1EvaluationOfTumorEfficacy_Export";
+
+ public const string RECIST1Point1DetailedOfEvaluatedLesion_Export = "RECIST1Point1DetailedOfEvaluatedLesion_Export";
+
+
+
+
}