Uat_Study
he 2022-10-24 15:29:15 +08:00
parent 265b92a689
commit 9e65c7b44d
1 changed files with 51 additions and 46 deletions

View File

@ -104,59 +104,64 @@ namespace IRaCIS.Core.Application.Triggers
var trial = await _repository.Where<Trial>(x => x.Id == trialId).FirstNotNullAsync();
var criterionList = await _repository.Where<ReadingQuestionCriterionTrial>(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<ReadingQuestionCriterionTrial>(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();
}