肿瘤学修改
continuous-integration/drone/push Build is failing Details

IRC_NewDev
he 2023-12-20 10:49:59 +08:00
parent 1a8bd17f01
commit 2c37915ef7
2 changed files with 31 additions and 37 deletions

View File

@ -2717,31 +2717,20 @@ namespace IRaCIS.Application.Services
switch (taskInfo.ReadingCategory) pastResultTaskIdList = await _visitTaskRepository.Where(x =>
{ x.TrialId == taskInfo.TrialId &&
case ReadingCategory.Visit: x.SubjectId == taskInfo.SubjectId &&
case ReadingCategory.Global: x.VisitTaskNum < taskInfo.VisitTaskNum &&
pastResultTaskIdList = await _visitTaskRepository.Where(x => x.ArmEnum == taskInfo.ArmEnum &&
x.TrialId == taskInfo.TrialId && x.DoctorUserId == taskInfo.DoctorUserId &&
x.SubjectId == taskInfo.SubjectId && x.TrialReadingCriterionId == taskInfo.TrialReadingCriterionId &&
x.VisitTaskNum < taskInfo.VisitTaskNum && x.ReadingTaskState == ReadingTaskState.HaveSigned &&
x.ArmEnum == taskInfo.ArmEnum && x.TaskState == TaskState.Effect &&
x.DoctorUserId == taskInfo.DoctorUserId && x.IsSelfAnalysis == taskInfo.IsSelfAnalysis &&
x.TrialReadingCriterionId == taskInfo.TrialReadingCriterionId && x.IsAnalysisCreate == taskInfo.IsAnalysisCreate &&
x.ReadingTaskState == ReadingTaskState.HaveSigned && x.ReadingCategory == taskInfo.ReadingCategory &&
x.TaskState == TaskState.Effect && x.Id != taskInfo.Id
x.IsSelfAnalysis == taskInfo.IsSelfAnalysis && ).OrderBy(x => x.VisitTaskNum).ThenBy(x => x.TaskState).Select(x => x.Id).ToListAsync();
x.IsAnalysisCreate == taskInfo.IsAnalysisCreate &&
x.ReadingCategory == taskInfo.ReadingCategory &&
x.Id != taskInfo.Id
).OrderBy(x => x.VisitTaskNum).ThenBy(x => x.TaskState).Select(x => x.Id).ToListAsync();
break;
case ReadingCategory.Oncology:
// 肿瘤学这里很特殊 因为没有裁判的时候 可能取R1可能取R2 为了和之前阅片的时候保持统一
// 所以在保存肿瘤学答案的时候就存起来 现在签名的时候 创建关系
relatedVisitTaskIdList = await _visitTaskRepository.Where(x =>x.Id== visitTaskId).Select(x => x.RelatedVisitTaskIdList).FirstNotNullAsync();
break;
}
@ -2765,18 +2754,22 @@ namespace IRaCIS.Application.Services
{ {
case ReadingCategory.Visit: case ReadingCategory.Visit:
case ReadingCategory.Global: case ReadingCategory.Global:
case ReadingCategory.Oncology:
relatedVisitTaskIdList = await _visitTaskRepository.Where(x => relatedVisitTaskIdList = await _visitTaskRepository.Where(x =>
x.TrialId == taskInfo.TrialId && x.TrialId == taskInfo.TrialId &&
x.SubjectId == taskInfo.SubjectId && x.SubjectId == taskInfo.SubjectId &&
x.ReadingCategory == ReadingCategory.Visit && x.ReadingCategory == ReadingCategory.Visit &&
x.TrialReadingCriterionId == taskInfo.TrialReadingCriterionId && x.TrialReadingCriterionId == taskInfo.TrialReadingCriterionId &&
x.ReadingTaskState == ReadingTaskState.HaveSigned && x.ReadingTaskState == ReadingTaskState.HaveSigned &&
x.IsAnalysisCreate == taskInfo.IsAnalysisCreate && x.IsAnalysisCreate == taskInfo.IsAnalysisCreate &&
x.ArmEnum == taskInfo.ArmEnum && x.ArmEnum == taskInfo.ArmEnum &&
x.IsSelfAnalysis == taskInfo.IsSelfAnalysis && x.IsSelfAnalysis == taskInfo.IsSelfAnalysis &&
x.DoctorUserId == taskInfo.DoctorUserId && x.DoctorUserId == taskInfo.DoctorUserId &&
x.TaskState == TaskState.Effect && x.VisitTaskNum <= taskInfo.VisitTaskNum).Select(x => x.Id).ToListAsync(); x.TaskState == TaskState.Effect && x.VisitTaskNum <= taskInfo.VisitTaskNum).Select(x => x.Id).ToListAsync();
break;
case ReadingCategory.Oncology:
// 肿瘤学这里很特殊 因为没有裁判的时候 可能取R1可能取R2 为了和之前阅片的时候保持统一
// 所以在保存肿瘤学答案的时候就存起来 现在签名的时候 创建关系
relatedVisitTaskIdList = await _visitTaskRepository.Where(x => x.Id == visitTaskId).Select(x => x.RelatedVisitTaskIdList).FirstNotNullAsync();
break; break;
} }
} }

View File

@ -86,6 +86,7 @@ namespace IRaCIS.Application.Services
if (globalTaskInfo.JudgeVisitTaskId == null) if (globalTaskInfo.JudgeVisitTaskId == null)
{ {
visitTask = globalTaskInfo; visitTask = globalTaskInfo;
// 全局的关联访视
visitTaskIdList = await _visitTaskRepository.Where(x => x.Id == visitTask.Id).Select(x => x.RelatedVisitTaskIdList).FirstNotNullAsync(); visitTaskIdList = await _visitTaskRepository.Where(x => x.Id == visitTask.Id).Select(x => x.RelatedVisitTaskIdList).FirstNotNullAsync();
} }
else else