裁判任务失效的时候,清理裁判任务id 需要迁移
							parent
							
								
									2838b3756f
								
							
						
					
					
						commit
						9b51ca3753
					
				|  | @ -23,13 +23,13 @@ namespace IRaCIS.Core.Application.Triggers | |||
|         private readonly IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository; | ||||
| 
 | ||||
|         private readonly IRepository<SubjectAdditionalEvaluationResult> _subjectAdditionalEvaluationResultRepository; | ||||
| 
 | ||||
|         private readonly IRepository<ReadingJudgeInfo> _readingJudgeInfoRepository; | ||||
| 
 | ||||
| 
 | ||||
|         public VisitTaskIsFrontTaskNeedSignButNotSignTrigger( | ||||
| 
 | ||||
|             IRepository<VisitTask> visitTaskRepository, IRepository<ReadingQuestionCriterionTrial> trialReadingCriterionRepository, IRepository<ReadingQuestionTrial> trialReadingQuestionRepository | ||||
|             , IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswerRepository, IRepository<SubjectAdditionalEvaluationResult> subjectAdditionalEvaluationResultRepository) | ||||
|             , IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswerRepository, IRepository<SubjectAdditionalEvaluationResult> subjectAdditionalEvaluationResultRepository, IRepository<ReadingJudgeInfo> readingJudgeInfoRepository) | ||||
|         { | ||||
|             _trialReadingCriterionRepository = trialReadingCriterionRepository; | ||||
| 
 | ||||
|  | @ -38,6 +38,7 @@ namespace IRaCIS.Core.Application.Triggers | |||
| 
 | ||||
|             _readingTaskQuestionAnswerRepository = readingTaskQuestionAnswerRepository; | ||||
|             _subjectAdditionalEvaluationResultRepository = subjectAdditionalEvaluationResultRepository; | ||||
|             _readingJudgeInfoRepository = readingJudgeInfoRepository; | ||||
|         } | ||||
| 
 | ||||
| 
 | ||||
|  | @ -50,7 +51,7 @@ namespace IRaCIS.Core.Application.Triggers | |||
|             Expression<Func<VisitTask, bool>> visitTaskLambda = x => x.TrialId == visitTask.TrialId && x.SubjectId == visitTask.SubjectId && x.TrialReadingCriterionId == visitTask.TrialReadingCriterionId; | ||||
|             if (context.ChangeType == ChangeType.Added) | ||||
|             { | ||||
|                 | ||||
| 
 | ||||
|                 //判断是否需要临床数据签名  不需要 就不用维护 | ||||
|                 if (visitTask.IsNeedClinicalDataSign) | ||||
|                 { | ||||
|  | @ -95,101 +96,112 @@ namespace IRaCIS.Core.Application.Triggers | |||
|                         }); | ||||
|                     } | ||||
| 
 | ||||
|                     | ||||
| 
 | ||||
| 
 | ||||
|                 } | ||||
| 
 | ||||
|             } | ||||
|             else if (context.ChangeType == ChangeType.Modified) | ||||
|             { | ||||
|                 if (visitTask.ReadingCategory == ReadingCategory.Judge && (visitTask.TaskState == TaskState.Adbandon || visitTask.TaskState == TaskState.HaveReturned)) | ||||
|                 { | ||||
|                     var find = _readingJudgeInfoRepository.Where(t => t.JudgeTaskId == visitTask.Id).FirstOrDefault(); | ||||
| 
 | ||||
| 
 | ||||
|                     if (find != null) | ||||
|                     { | ||||
|                         var ids = new Guid[] { find.TaskIdOne, find.TaskIdTwo }; | ||||
|                         await _visitTaskRepository.BatchUpdateNoTrackingAsync(t => ids.Contains(t.Id), u => new VisitTask() { JudgeResultTaskId = null }); | ||||
|                     } | ||||
|                 } | ||||
|             } | ||||
|             #region 附加评估 暂时废弃 | ||||
| //            //从未签名状态 改为签名状态时   判断是否进行了附加评估,将附加评估的结果冗余 | ||||
| //            if (context.ChangeType == ChangeType.Modified && visitTask.ReadingTaskState == ReadingTaskState.HaveSigned && context.UnmodifiedEntity.ReadingTaskState != ReadingTaskState.HaveSigned) | ||||
| //            { | ||||
|             //            //从未签名状态 改为签名状态时   判断是否进行了附加评估,将附加评估的结果冗余 | ||||
|             //            if (context.ChangeType == ChangeType.Modified && visitTask.ReadingTaskState == ReadingTaskState.HaveSigned && context.UnmodifiedEntity.ReadingTaskState != ReadingTaskState.HaveSigned) | ||||
|             //            { | ||||
| 
 | ||||
| //                var criterion = _trialReadingCriterionRepository.Where(t => t.Id == visitTask.TrialReadingCriterionId).FirstOrDefault(); | ||||
|             //                var criterion = _trialReadingCriterionRepository.Where(t => t.Id == visitTask.TrialReadingCriterionId).FirstOrDefault(); | ||||
| 
 | ||||
| //                //如果是附加评估 | ||||
| //                if (criterion.IsAdditionalAssessment) | ||||
| //                { | ||||
|             //                //如果是附加评估 | ||||
|             //                if (criterion.IsAdditionalAssessment) | ||||
|             //                { | ||||
| 
 | ||||
| 
 | ||||
| //                    if (visitTask.ReadingCategory == ReadingCategory.Visit) | ||||
| //                    { | ||||
|             //                    if (visitTask.ReadingCategory == ReadingCategory.Visit) | ||||
|             //                    { | ||||
| 
 | ||||
| 
 | ||||
| //                        switch (criterion.CriterionType) | ||||
| //                        { | ||||
| //                            case CriterionType.RECIST1Point1: | ||||
| //                                var isbaseLine = _visitTaskRepository.Where(t => t.Id == visitTask.Id).Select(t => t.SourceSubjectVisit.IsBaseLine).FirstOrDefault(); | ||||
|             //                        switch (criterion.CriterionType) | ||||
|             //                        { | ||||
|             //                            case CriterionType.RECIST1Point1: | ||||
|             //                                var isbaseLine = _visitTaskRepository.Where(t => t.Id == visitTask.Id).Select(t => t.SourceSubjectVisit.IsBaseLine).FirstOrDefault(); | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| //                                if (isbaseLine) | ||||
| //                                { | ||||
| //                                    var currentTaskAdditionarlAnswer = await _readingTaskQuestionAnswerRepository.Where(t => t.VisitTaskId == visitTask.Id && | ||||
| //                                    t.ReadingQuestionTrial.IsAdditional == true && t.ReadingQuestionTrial.Type != "group" | ||||
| //                                    ).Include(t => t.ReadingQuestionTrial).FirstOrDefaultAsync(); | ||||
|             //                                if (isbaseLine) | ||||
|             //                                { | ||||
|             //                                    var currentTaskAdditionarlAnswer = await _readingTaskQuestionAnswerRepository.Where(t => t.VisitTaskId == visitTask.Id && | ||||
|             //                                    t.ReadingQuestionTrial.IsAdditional == true && t.ReadingQuestionTrial.Type != "group" | ||||
|             //                                    ).Include(t => t.ReadingQuestionTrial).FirstOrDefaultAsync(); | ||||
| 
 | ||||
| 
 | ||||
| //                                    //双重阅片完成了 | ||||
| //                                    if (criterion.ReadingType == ReadingMethod.Double && | ||||
| //(_visitTaskRepository.Where(t => t.SubjectId == visitTask.SubjectId && t.TaskName == visitTask.TaskName && t.TaskState == TaskState.Effect && t.ReadingTaskState == ReadingTaskState.HaveSigned).Count() == 2) | ||||
| //                                       ) | ||||
| //                                    { | ||||
|             //                                    //双重阅片完成了 | ||||
|             //                                    if (criterion.ReadingType == ReadingMethod.Double && | ||||
|             //(_visitTaskRepository.Where(t => t.SubjectId == visitTask.SubjectId && t.TaskName == visitTask.TaskName && t.TaskState == TaskState.Effect && t.ReadingTaskState == ReadingTaskState.HaveSigned).Count() == 2) | ||||
|             //                                       ) | ||||
|             //                                    { | ||||
| 
 | ||||
| //                                        var otherTaskId = await _visitTaskRepository.Where(t => t.SubjectId == visitTask.SubjectId && t.TaskName == visitTask.TaskName && t.TaskState == TaskState.Effect && t.ReadingTaskState == ReadingTaskState.HaveSigned && t.Id != visitTask.Id) | ||||
| //                                            .Select(t => t.Id).FirstOrDefaultAsync(); | ||||
|             //                                        var otherTaskId = await _visitTaskRepository.Where(t => t.SubjectId == visitTask.SubjectId && t.TaskName == visitTask.TaskName && t.TaskState == TaskState.Effect && t.ReadingTaskState == ReadingTaskState.HaveSigned && t.Id != visitTask.Id) | ||||
|             //                                            .Select(t => t.Id).FirstOrDefaultAsync(); | ||||
| 
 | ||||
| 
 | ||||
| //                                        var otherTaskAdditionarlAnswer = await _readingTaskQuestionAnswerRepository.Where(t => t.VisitTaskId == otherTaskId && | ||||
| //                                  t.ReadingQuestionTrial.IsAdditional == true && t.ReadingQuestionTrial.Type != "group" | ||||
| //                                  ).Include(t => t.ReadingQuestionTrial).FirstOrDefaultAsync(); | ||||
|             //                                        var otherTaskAdditionarlAnswer = await _readingTaskQuestionAnswerRepository.Where(t => t.VisitTaskId == otherTaskId && | ||||
|             //                                  t.ReadingQuestionTrial.IsAdditional == true && t.ReadingQuestionTrial.Type != "group" | ||||
|             //                                  ).Include(t => t.ReadingQuestionTrial).FirstOrDefaultAsync(); | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| //                                        await _subjectAdditionalEvaluationResultRepository.AddAsync(new SubjectAdditionalEvaluationResult() | ||||
| //                                        { | ||||
| //                                            TrialReadingCriterionId = visitTask.TrialReadingCriterionId, | ||||
| //                                            IsFinalResult = true, | ||||
| //                                            SubjectId = visitTask.SubjectId, | ||||
| //                                            TrialReadingQuestionId = currentTaskAdditionarlAnswer.ReadingQuestionTrialId, | ||||
| //                                            FinalAnswer = currentTaskAdditionarlAnswer.Answer, | ||||
| //                                            FinalTranslateDictionaryCode = currentTaskAdditionarlAnswer.ReadingQuestionTrial.DictionaryCode, | ||||
|             //                                        await _subjectAdditionalEvaluationResultRepository.AddAsync(new SubjectAdditionalEvaluationResult() | ||||
|             //                                        { | ||||
|             //                                            TrialReadingCriterionId = visitTask.TrialReadingCriterionId, | ||||
|             //                                            IsFinalResult = true, | ||||
|             //                                            SubjectId = visitTask.SubjectId, | ||||
|             //                                            TrialReadingQuestionId = currentTaskAdditionarlAnswer.ReadingQuestionTrialId, | ||||
|             //                                            FinalAnswer = currentTaskAdditionarlAnswer.Answer, | ||||
|             //                                            FinalTranslateDictionaryCode = currentTaskAdditionarlAnswer.ReadingQuestionTrial.DictionaryCode, | ||||
| 
 | ||||
| //                                        }); | ||||
|             //                                        }); | ||||
| 
 | ||||
| //                                    } | ||||
| //                                    if (criterion.ReadingType == ReadingMethod.Single) | ||||
| //                                    { | ||||
|             //                                    } | ||||
|             //                                    if (criterion.ReadingType == ReadingMethod.Single) | ||||
|             //                                    { | ||||
| 
 | ||||
| //                                        await _subjectAdditionalEvaluationResultRepository.AddAsync(new SubjectAdditionalEvaluationResult() | ||||
| //                                        { | ||||
| //                                            TrialReadingCriterionId = visitTask.TrialReadingCriterionId, | ||||
| //                                            IsFinalResult = true, | ||||
| //                                            SubjectId = visitTask.SubjectId, | ||||
| //                                            TrialReadingQuestionId = currentTaskAdditionarlAnswer.ReadingQuestionTrialId, | ||||
| //                                            FinalAnswer = currentTaskAdditionarlAnswer.Answer, | ||||
| //                                            FinalTranslateDictionaryCode = currentTaskAdditionarlAnswer.ReadingQuestionTrial.DictionaryCode, | ||||
|             //                                        await _subjectAdditionalEvaluationResultRepository.AddAsync(new SubjectAdditionalEvaluationResult() | ||||
|             //                                        { | ||||
|             //                                            TrialReadingCriterionId = visitTask.TrialReadingCriterionId, | ||||
|             //                                            IsFinalResult = true, | ||||
|             //                                            SubjectId = visitTask.SubjectId, | ||||
|             //                                            TrialReadingQuestionId = currentTaskAdditionarlAnswer.ReadingQuestionTrialId, | ||||
|             //                                            FinalAnswer = currentTaskAdditionarlAnswer.Answer, | ||||
|             //                                            FinalTranslateDictionaryCode = currentTaskAdditionarlAnswer.ReadingQuestionTrial.DictionaryCode, | ||||
| 
 | ||||
| //                                        }); | ||||
|             //                                        }); | ||||
| 
 | ||||
| //                                    } | ||||
|             //                                    } | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| //                                } | ||||
|             //                                } | ||||
| 
 | ||||
| //                                break; | ||||
| //                            default: | ||||
| //                                break; | ||||
| //                        } | ||||
|             //                                break; | ||||
|             //                            default: | ||||
|             //                                break; | ||||
|             //                        } | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| //                    } | ||||
|             //                    } | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|  | @ -198,8 +210,8 @@ namespace IRaCIS.Core.Application.Triggers | |||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| //                } | ||||
| //            } | ||||
|             //                } | ||||
|             //            } | ||||
| 
 | ||||
| 
 | ||||
|             #endregion | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue