From 3c511d4ef08ffece38891435a9d16ee38319345b Mon Sep 17 00:00:00 2001 From: dengzedong <dengzedong@email> Date: 星期六, 18 一月 2025 14:24:32 +0800 Subject: [PATCH] 计算点bug 计算点正则分割时有空字符串,导致计算异常 --- iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/CalculateHandle.java | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/CalculateHandle.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/CalculateHandle.java index 66dc01f..7731dc9 100644 --- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/CalculateHandle.java +++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/CalculateHandle.java @@ -21,6 +21,8 @@ import java.math.BigDecimal; import java.util.*; +import java.util.stream.Collectors; +import java.util.stream.Stream; /** * 计算点处理 @@ -80,6 +82,8 @@ private Object singleCompute(DaPointDTO dto, Map<String, Object> dataMap,List<String> listGood,List<String> listBad) { String expression = dto.getExpression(); String[] arr = expression.split(regex); + // 去掉arr中的空格 + arr = Stream.of(arr).filter(StringUtils::isNotBlank).toArray(String[]::new); // 判断arr都在dataMap中包含 if (!Arrays.stream(arr).allMatch(dataMap::containsKey)) { listBad.add(dto.getPointNo()); -- Gitblit v1.9.3