From 848e33edb8ff87ad57c05c9db3d6b8532c669aee Mon Sep 17 00:00:00 2001 From: hang <87227557@qq.com> Date: Wed, 4 Dec 2024 20:05:13 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=B2=A1=E6=9C=89=E4=BA=A7?= =?UTF-8?q?=E7=94=9F=E8=A3=81=E5=88=A4=EF=BC=8C=E8=A3=81=E5=88=A4=E8=A7=A6?= =?UTF-8?q?=E5=8F=91=E6=A0=87=E5=BF=97=20=E5=92=8C=E8=A3=81=E5=88=A4?= =?UTF-8?q?=E9=80=89=E6=8B=A9=E6=A0=87=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Service/Common/ExcelExportService.cs | 48 ++++++------------- 1 file changed, 15 insertions(+), 33 deletions(-) diff --git a/IRaCIS.Core.Application/Service/Common/ExcelExportService.cs b/IRaCIS.Core.Application/Service/Common/ExcelExportService.cs index 771306921..f5ef8211e 100644 --- a/IRaCIS.Core.Application/Service/Common/ExcelExportService.cs +++ b/IRaCIS.Core.Application/Service/Common/ExcelExportService.cs @@ -1627,46 +1627,25 @@ namespace IRaCIS.Core.Application.Service.Common if (subjectReadingPeriondVisitNumList != null) { - //两个人完成最大得任务号 - var subjectMaxFinishedVisitTaskNum = resultExceptJudgeList.Where(t => t.SubjectCode == visitItem.SubjectCode) + //两个人完成最大得任务号(访视+全局) + var subjectMaxFinishedTaskNum = resultExceptJudgeList.Where(t => t.SubjectCode == visitItem.SubjectCode) .GroupBy(t => t.VisitTaskNum).Where(g => g.Count() == 2).Select(g => g.Key).DefaultIfEmpty().Max(); - var minReadingPeriodVisitNum = subjectReadingPeriondVisitNumList.Min(); + var minReadingPeriodTaskNum = subjectReadingPeriondVisitNumList.Min() + ReadingCommon.TaskNumDic[ReadingCategory.Global]; - var maxReadingPeriodVisitNum = subjectReadingPeriondVisitNumList.Max(); + //最小阅片期 完成访视号 - //最小阅片期 最大阅片期 完成访视号 对应存在三种情况 + //有阅片期读完了 肯定要读到最小阅片期号后面 - //有阅片期读完了 存在两种 - //大于最大阅片期 - if (subjectMaxFinishedVisitTaskNum > maxReadingPeriodVisitNum) + if (subjectMaxFinishedTaskNum >= minReadingPeriodTaskNum) { - //两个人都做完了 并且当前任务号小于 最大阅片期 才设置裁判 产生标记和裁判选择标记 - if (resultExceptJudgeList.Count(t => t.VisitTaskNum == visitItem.VisitTaskNum && t.SubjectCode == visitItem.SubjectCode) == 2 && visitItem.VisitTaskNum <= maxReadingPeriodVisitNum) - { - //不存在裁判 将R1设置 - if (visitItem.ArmEnum == Arm.DoubleReadingArm1) - { - visitItem.IsJudgeSelect = true; - visitItem.IsTrigerJudge = false; - - } - else - { - visitItem.IsJudgeSelect = false; - visitItem.IsTrigerJudge = false; - } - } - } - //大于最小阅片期 - else if (subjectMaxFinishedVisitTaskNum > minReadingPeriodVisitNum) - { - //找到小于完成最大任务号最近的阅片期号 - - var latestFinishedReadingPeriodNum = subjectReadingPeriondVisitNumList.Where(t => t < subjectMaxFinishedVisitTaskNum).OrderBy(t => t).Max(); - - if (resultExceptJudgeList.Count(t => t.VisitTaskNum == visitItem.VisitTaskNum && t.SubjectCode == visitItem.SubjectCode) == 2 && visitItem.VisitTaskNum <= latestFinishedReadingPeriodNum) + //找到<= 完成最大访视任务号最近的阅片期号 + var latestFinishedReadingPeriodTaskNum = subjectReadingPeriondVisitNumList.Select(t => t + ReadingCommon.TaskNumDic[ReadingCategory.Global]).Where(t => t <= subjectMaxFinishedTaskNum).Max(); + + //小于已完成的阅片期的访视 设置触发裁判标志为否 并设置默认的裁判选择标记 (两个人肯定做完了) + if (visitItem.VisitTaskNum <= latestFinishedReadingPeriodTaskNum) { + //不存在裁判 将R1设置 if (visitItem.ArmEnum == Arm.DoubleReadingArm1) { @@ -1679,7 +1658,10 @@ namespace IRaCIS.Core.Application.Service.Common visitItem.IsJudgeSelect = false; visitItem.IsTrigerJudge = false; } + + } + } }