From 2c37915ef7e07496e4ce368472bb9391e138b855 Mon Sep 17 00:00:00 2001 From: he <10978375@qq.com> Date: Wed, 20 Dec 2023 10:49:59 +0800 Subject: [PATCH] =?UTF-8?q?=E8=82=BF=E7=98=A4=E5=AD=A6=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ReadingImageTaskService.cs | 67 +++++++++---------- .../ReadingOncologyTaskService.cs | 1 + 2 files changed, 31 insertions(+), 37 deletions(-) diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs index a0509dd5b..6a6f4defe 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs @@ -2715,33 +2715,22 @@ namespace IRaCIS.Application.Services { - - switch (taskInfo.ReadingCategory) - { - case ReadingCategory.Visit: - case ReadingCategory.Global: - pastResultTaskIdList = await _visitTaskRepository.Where(x => - x.TrialId == taskInfo.TrialId && - x.SubjectId == taskInfo.SubjectId && - x.VisitTaskNum < taskInfo.VisitTaskNum && - x.ArmEnum == taskInfo.ArmEnum && - x.DoctorUserId == taskInfo.DoctorUserId && - x.TrialReadingCriterionId == taskInfo.TrialReadingCriterionId && - x.ReadingTaskState == ReadingTaskState.HaveSigned && - x.TaskState == TaskState.Effect && - x.IsSelfAnalysis == taskInfo.IsSelfAnalysis && - 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; - } + + pastResultTaskIdList = await _visitTaskRepository.Where(x => + x.TrialId == taskInfo.TrialId && + x.SubjectId == taskInfo.SubjectId && + x.VisitTaskNum < taskInfo.VisitTaskNum && + x.ArmEnum == taskInfo.ArmEnum && + x.DoctorUserId == taskInfo.DoctorUserId && + x.TrialReadingCriterionId == taskInfo.TrialReadingCriterionId && + x.ReadingTaskState == ReadingTaskState.HaveSigned && + x.TaskState == TaskState.Effect && + x.IsSelfAnalysis == taskInfo.IsSelfAnalysis && + 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(); @@ -2765,18 +2754,22 @@ namespace IRaCIS.Application.Services { case ReadingCategory.Visit: case ReadingCategory.Global: - case ReadingCategory.Oncology: relatedVisitTaskIdList = await _visitTaskRepository.Where(x => - x.TrialId == taskInfo.TrialId && - x.SubjectId == taskInfo.SubjectId && - x.ReadingCategory == ReadingCategory.Visit && - x.TrialReadingCriterionId == taskInfo.TrialReadingCriterionId && - x.ReadingTaskState == ReadingTaskState.HaveSigned && - x.IsAnalysisCreate == taskInfo.IsAnalysisCreate && - x.ArmEnum == taskInfo.ArmEnum && - x.IsSelfAnalysis == taskInfo.IsSelfAnalysis && - x.DoctorUserId == taskInfo.DoctorUserId && - x.TaskState == TaskState.Effect && x.VisitTaskNum <= taskInfo.VisitTaskNum).Select(x => x.Id).ToListAsync(); + x.TrialId == taskInfo.TrialId && + x.SubjectId == taskInfo.SubjectId && + x.ReadingCategory == ReadingCategory.Visit && + x.TrialReadingCriterionId == taskInfo.TrialReadingCriterionId && + x.ReadingTaskState == ReadingTaskState.HaveSigned && + x.IsAnalysisCreate == taskInfo.IsAnalysisCreate && + x.ArmEnum == taskInfo.ArmEnum && + x.IsSelfAnalysis == taskInfo.IsSelfAnalysis && + x.DoctorUserId == taskInfo.DoctorUserId && + 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; } } diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingOncologyTaskService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingOncologyTaskService.cs index 1f56be193..863333e4e 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingOncologyTaskService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingOncologyTaskService.cs @@ -86,6 +86,7 @@ namespace IRaCIS.Application.Services if (globalTaskInfo.JudgeVisitTaskId == null) { visitTask = globalTaskInfo; + // 全局的关联访视 visitTaskIdList = await _visitTaskRepository.Where(x => x.Id == visitTask.Id).Select(x => x.RelatedVisitTaskIdList).FirstNotNullAsync(); } else