diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingJudgeTaskService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingJudgeTaskService.cs index cd8c6a9be..f97966851 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingJudgeTaskService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingJudgeTaskService.cs @@ -759,6 +759,11 @@ namespace IRaCIS.Core.Application.Service List visitTaskids = new List(); var visitTask = await _visitTaskRepository.Where(x => x.Id == visitTaskId).AsNoTracking().FirstNotNullAsync(); + // 计算过 就不计算了 + if(visitTask.IsCalculatedJudge) + { + return; + } // 是否是组件一致性 var isGroupAnalysis = false; @@ -829,7 +834,7 @@ namespace IRaCIS.Core.Application.Service var noteEqual = false; // 判断项目是否设置了裁判 - if (criterionInfo.IsArbitrationReading) + if (criterionInfo.IsArbitrationReading&& !visitTask.IsCalculatedJudge) { // 判断数量是否为2 是否仲裁 if (visitTaskids.Count == 2) @@ -977,6 +982,11 @@ namespace IRaCIS.Core.Application.Service break; } + await _visitTaskRepository.BatchUpdateNoTrackingAsync(x => visitTaskids.Contains(x.Id), x => new VisitTask() + { + IsCalculatedJudge = true + }); + } else { @@ -1038,10 +1048,15 @@ namespace IRaCIS.Core.Application.Service } + await _visitTaskRepository.BatchUpdateNoTrackingAsync(x =>x.Id ==visitTask.Id, x => new VisitTask() + { + IsCalculatedJudge = true + }); + } } - + }