Merge branch 'master' of http://192.168.1.2:8033/IRaCIS_Core_Api
						commit
						a696b0f1a8
					
				| 
						 | 
				
			
			@ -513,14 +513,14 @@
 | 
			
		|||
        </member>
 | 
			
		||||
        <member name="M:IRaCIS.Core.Application.Service.Common.ExcelExportService.GetSelfAnalysisTaskList_Export(IRaCIS.Core.Application.ViewModel.VisitTaskQuery,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.CommonDocument},IRaCIS.Application.Interfaces.IDictionaryService,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial})">
 | 
			
		||||
            <summary>
 | 
			
		||||
            自身一致性分析
 | 
			
		||||
            自身一致性分析(仅做了resist1.1)
 | 
			
		||||
            </summary>
 | 
			
		||||
            <param name="queryVisitTask"></param>
 | 
			
		||||
            <returns></returns>
 | 
			
		||||
        </member>
 | 
			
		||||
        <member name="M:IRaCIS.Core.Application.Service.Common.ExcelExportService.GetGroupAnalysisTaskList_Export(IRaCIS.Core.Application.ViewModel.VisitTaskQuery,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.CommonDocument},IRaCIS.Application.Interfaces.IDictionaryService,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial})">
 | 
			
		||||
            <summary>
 | 
			
		||||
            组件一致性分析
 | 
			
		||||
            组件一致性分析(仅做了resist1.1)
 | 
			
		||||
            </summary>
 | 
			
		||||
            <param name="inQuery"></param>
 | 
			
		||||
            <returns></returns>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -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";
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue