From b64eed88cfa50eb2fadc9ea52355b4ba03ebf0af Mon Sep 17 00:00:00 2001 From: he <109787524@qq.com> Date: Tue, 9 Jun 2026 16:07:12 +0800 Subject: [PATCH] =?UTF-8?q?=E9=AB=98=E4=BA=AE=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../IRaCIS.Core.Application.xml | 6 +-- .../General/ReadingCalculateService.cs | 43 ++++++++++++++++++- 2 files changed, 44 insertions(+), 5 deletions(-) diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml index df6badcbf..f7b3bc8aa 100644 --- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml +++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml @@ -17510,17 +17510,17 @@ - 质疑 + ���� - 一致性核查 + һ���Ժ˲� - 复制 + ���� diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs index 428ea3d82..cc20f70a7 100644 --- a/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs +++ b/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs @@ -540,16 +540,53 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate break; } + Arm? highlightArm = null; + ArbitrationRule? highlightRule = null; + decimal? highlightVisitTaskNum = null; + if (r1.VisitTaskId != null && r2.VisitTaskList != null) { - var judgeInfo = _visitTaskRepository.Where(x => x.SubjectId == inDto.SubjectId && x.TrialReadingCriterionId == inDto.TrialCriterionId + var judgeInfo =await _visitTaskRepository.Where(x => x.SubjectId == inDto.SubjectId && x.TrialReadingCriterionId == inDto.TrialCriterionId && x.TaskState == TaskState.Effect && x.ReadingTaskState == ReadingTaskState.HaveSigned && x.ReadingCategory== ReadingCategory.Judge ).OrderByDescending(x => x.VisitTaskNum).Include(x=>x.JudgeResultTask).FirstOrDefaultAsync(); - + if (judgeInfo != null && judgeInfo.JudgeResultTask != null) + { + if (judgeInfo.JudgeResultTask.ArmEnum == Arm.DoubleReadingArm1 + || judgeInfo.JudgeResultTask.ArmEnum == Arm.DoubleReadingArm2) + { + highlightArm = judgeInfo.JudgeResultTask.ArmEnum; + highlightRule = criterion.ArbitrationRule; + highlightVisitTaskNum = judgeInfo.VisitTaskNum; + } + } + } + + void SetHighlight(List data, Arm arm) + { + if (highlightArm != arm || highlightVisitTaskNum == null) + { + return; + } + + if (highlightRule == ArbitrationRule.Reading) + { + for (var index = 0; index < data.Count && index < highlightVisitTaskNum.Value; index++) + { + data[index].IsHighlight = true; + } + } + else if (highlightRule == ArbitrationRule.Visit) + { + var index = decimal.ToInt32(decimal.Floor(highlightVisitTaskNum.Value)); + if (index >= 0 && index < data.Count) + { + data[index].IsHighlight = true; + } + } } @@ -584,6 +621,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate r1data = r1data.Concat(Enumerable.Repeat(new EvaluationValue() { Value = "" }, length)) .Take(length) .ToList(); + SetHighlight(r1data, Arm.DoubleReadingArm1); result.Evaluation.Add(r1data); @@ -615,6 +653,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate r2data = r2data.Concat(Enumerable.Repeat(new EvaluationValue() { Value = "" }, length)) .Take(length) .ToList(); + SetHighlight(r2data, Arm.DoubleReadingArm2); result.Evaluation.Add(r2data); }