组件一致性
This commit is contained in:
@@ -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
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 自身一致性分析
|
||||
/// 自身一致性分析(仅做了resist1.1)
|
||||
/// </summary>
|
||||
/// <param name="queryVisitTask"></param>
|
||||
/// <returns></returns>
|
||||
@@ -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));
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 组件一致性分析
|
||||
/// 组件一致性分析(仅做了resist1.1)
|
||||
/// </summary>
|
||||
/// <param name="inQuery"></param>
|
||||
/// <returns></returns>
|
||||
@@ -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<GroupAnalysisExport>();
|
||||
|
||||
// 每个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<ExcelExportInfo>(_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);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user