交叉判定等级为0和4判定bug修复
This commit is contained in:
@@ -861,7 +861,7 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
|
||||
// 查找匹配的允差区间
|
||||
private ConfigAssayMethodProjectAssessmentDO findMatchingRule(List<ConfigAssayMethodProjectAssessmentDO> 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;
|
||||
|
||||
Reference in New Issue
Block a user