From 9e65c7b44dccee772bc34bd2daa24c5c348bc4e5 Mon Sep 17 00:00:00 2001 From: he <10978375@qq.com> Date: Mon, 24 Oct 2022 15:29:15 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Triggers/SubjectVisitFinalVisitTrigger.cs | 97 ++++++++++--------- 1 file changed, 51 insertions(+), 46 deletions(-) diff --git a/IRaCIS.Core.Application/Triggers/SubjectVisitFinalVisitTrigger.cs b/IRaCIS.Core.Application/Triggers/SubjectVisitFinalVisitTrigger.cs index 0000de1bb..03d050059 100644 --- a/IRaCIS.Core.Application/Triggers/SubjectVisitFinalVisitTrigger.cs +++ b/IRaCIS.Core.Application/Triggers/SubjectVisitFinalVisitTrigger.cs @@ -104,59 +104,64 @@ namespace IRaCIS.Core.Application.Triggers var trial = await _repository.Where(x => x.Id == trialId).FirstNotNullAsync(); - var criterionList = await _repository.Where(x => x.TrialId == trialId && x.IsConfirm && x.IsGlobalReading && x.IsReadingTaskViewInOrder).ToListAsync(); + - foreach (var item in criterionList) + if (!subjectVisit.IsBaseLine) { - ReadingPeriodSet? readingPeriodSet = await _readingPeriodSetRepository.FirstOrDefaultNoTrackingAsync(x => x.TrialId == trialId && x.IsGlobal&&x.TrialReadingCriterionId==item.Id); - - if (readingPeriodSet == null) + var criterionList = await _repository.Where(x => x.TrialId == trialId && x.IsConfirm && x.IsGlobalReading && x.IsReadingTaskViewInOrder).ToListAsync(); + foreach (var item in criterionList) { - readingPeriodSet = new ReadingPeriodSet() - { - Id = NewId.NextGuid(), - ReadingScope = ReadingScopeEnum.All, - ReadingSetType = ReadingSetType.ImageReading, - IsTakeEffect = ReadingPeriodStatus.TakeEffect, - ReadingPeriodName = "Global", - TrialId = trialId, - EffectOfTime = DateTime.Now, - IsGlobal = true, - TrialReadingCriterionId=item.Id, - }; + ReadingPeriodSet? readingPeriodSet = await _readingPeriodSetRepository.FirstOrDefaultNoTrackingAsync(x => x.TrialId == trialId && x.IsGlobal && x.TrialReadingCriterionId == item.Id); + + if (readingPeriodSet == null) + { + readingPeriodSet = new ReadingPeriodSet() + { + Id = NewId.NextGuid(), + ReadingScope = ReadingScopeEnum.All, + ReadingSetType = ReadingSetType.ImageReading, + IsTakeEffect = ReadingPeriodStatus.TakeEffect, + ReadingPeriodName = "Global", + TrialId = trialId, + EffectOfTime = DateTime.Now, + IsGlobal = true, + TrialReadingCriterionId = item.Id, + }; + + await _readingPeriodSetRepository.AddAsync(readingPeriodSet); + + } + + await _readingPeriodPlanRepository.AddAsync(new ReadingPeriodPlan() + { + SubjectVisitId = subjectVisitId, + ReadingPeriodSetId = readingPeriodSet.Id, + }); + + + await _readModuleRepository.DeleteFromQueryAsync(x => x.ReadingSetType == ReadingSetType.ImageReading && x.TrialReadingCriterionId == item.Id && x.SubjectVisitId == subjectVisitId, true); + + await _readModuleRepository.AddAsync(new ReadModule() + { + ReadingPeriodSetId = readingPeriodSet.Id, + IsUrgent = subjectVisit.IsUrgent, + SubjectVisitId = subjectVisitId, + ReadingStatus = ReadingStatusEnum.TaskAllocate, + SubjectId = subjectVisit.SubjectId, + ModuleName = "Global",// 全局阅片 + ReadingSetType = ReadingSetType.ImageReading, + ModuleType = ModuleTypeEnum.Global, + TrialId = subjectVisit.TrialId, + VisitNum = subjectVisit.VisitNum, + TrialReadingCriterionId = item.Id, + }); + - await _readingPeriodSetRepository.AddAsync(readingPeriodSet); } - - await _readingPeriodPlanRepository.AddAsync(new ReadingPeriodPlan() - { - SubjectVisitId = subjectVisitId, - ReadingPeriodSetId = readingPeriodSet.Id, - }); - - - await _readModuleRepository.DeleteFromQueryAsync(x => x.ReadingSetType == ReadingSetType.ImageReading&&x.TrialReadingCriterionId==item.Id && x.SubjectVisitId == subjectVisitId, true); - - await _readModuleRepository.AddAsync(new ReadModule() - { - ReadingPeriodSetId = readingPeriodSet.Id, - IsUrgent = subjectVisit.IsUrgent, - SubjectVisitId = subjectVisitId, - ReadingStatus = ReadingStatusEnum.TaskAllocate, - SubjectId = subjectVisit.SubjectId, - ModuleName = "Global",// 全局阅片 - ReadingSetType = ReadingSetType.ImageReading, - ModuleType = ModuleTypeEnum.Global, - TrialId = subjectVisit.TrialId, - VisitNum = subjectVisit.VisitNum, - TrialReadingCriterionId=item.Id, - }); - - - + await _readModuleRepository.SaveChangesAsync(); } - await _readModuleRepository.SaveChangesAsync(); + }