From 18bece858d06648b200e854760f6123d95116b32 Mon Sep 17 00:00:00 2001 From: wxr Date: Wed, 7 Jan 2026 16:41:32 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=A4=E5=8F=89=E5=88=A4=E5=AE=9A=E7=AD=89?= =?UTF-8?q?=E7=BA=A7=E4=B8=BA0=E5=92=8C4=E5=88=A4=E5=AE=9Abug=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/SampleAnalysisAuditServiceImpl.java | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/service/SampleAnalysisAuditServiceImpl.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/service/SampleAnalysisAuditServiceImpl.java index 51a3f51..648e206 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/service/SampleAnalysisAuditServiceImpl.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/bus/service/SampleAnalysisAuditServiceImpl.java @@ -861,7 +861,7 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic // 查找匹配的允差区间 private ConfigAssayMethodProjectAssessmentDO findMatchingRule(List rules, BigDecimal value) { if (rules == null || rules.isEmpty()) return null; - + // 特殊处理 level=0 和 level=4 for (ConfigAssayMethodProjectAssessmentDO rule : rules) { if (rule.getAssessmentLevel() == 0) { @@ -869,19 +869,17 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic .filter(r -> r.getAssessmentLevel() == 1) .findFirst() .orElse(rule); -// if (value.compareTo(new BigDecimal(next.getMinimumValue())) >= 0 && value.compareTo(new BigDecimal(next.getMaximumValue())) <= 0) { -// return next; -// } - return next; + if (value.compareTo(new BigDecimal(rule.getMinimumValue())) >= 0 && value.compareTo(new BigDecimal(rule.getMaximumValue())) <= 0) { + return next; + } } else if (rule.getAssessmentLevel() == 4) { ConfigAssayMethodProjectAssessmentDO prev = rules.stream() .filter(r -> r.getAssessmentLevel() == 3) .findFirst() .orElse(rule); -// if (value.compareTo(new BigDecimal(prev.getMinimumValue())) >= 0 && value.compareTo(new BigDecimal(prev.getMaximumValue())) <= 0) { -// return prev; -// } - return prev; + if (value.compareTo(new BigDecimal(rule.getMinimumValue())) >= 0 && value.compareTo(new BigDecimal(rule.getMaximumValue())) <= 0) { + return prev; + } } else { if (value.compareTo(new BigDecimal(rule.getMinimumValue())) >= 0 && value.compareTo(new BigDecimal(rule.getMaximumValue())) <= 0) { return rule;