diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/ResiServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/ResiServiceImpl.java index 8ea7d871d5..59810ea97b 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/ResiServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/ResiServiceImpl.java @@ -149,10 +149,17 @@ public class ResiServiceImpl implements ResiService, ResultDataResolver { // 使用年龄计算出生日期 if (resiRule != null) { resiRule.stream().forEach((r) -> { + // 对生日列计算 if ("BIRTHDAY".equals(r.getColKey())) { - LocalDate birthday = LocalDate.now().minus(Long.valueOf(r.getColVal()), ChronoUnit.YEARS); - r.setQueryType(revertQueryType(r.getQueryType())); - r.setColVal(birthday.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + if ("is_null".equals(r.getQueryType()) || "is_not_null".equals(r.getQueryType())) { + // 如果是is_null、is_not_null,那么直接用这个条件 + return; + } else { + //如果不是is_null、is_not_null,那么需要转换为出生日期 + LocalDate birthday = LocalDate.now().minus(Long.valueOf(r.getColVal()), ChronoUnit.YEARS); + r.setQueryType(revertQueryType(r.getQueryType())); + r.setColVal(birthday.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + } } }); } @@ -209,7 +216,16 @@ public class ResiServiceImpl implements ResiService, ResultDataResolver { resultResis.stream().forEach((r) -> { // 小区名称 - r.setNeighborHoodName(gridIdAndName.get(r.getGridId()).concat("-").concat(neighborhoodIdAndName.get(r.getNeighborhoodId()))); + String gridName = gridIdAndName.get(r.getGridId()); + String neighborhoodName = neighborhoodIdAndName.get(r.getNeighborhoodId()); + + if (StringUtils.isNoneBlank(gridName, neighborhoodName)) { + // 网格或者小区都能找到,给填充数据 + r.setNeighborHoodName(gridIdAndName.get(r.getGridId()).concat("-").concat(neighborhoodIdAndName.get(r.getNeighborhoodId()))); + } else { + // 网格或者小区中任何一个找不到,给个空 + r.setNeighborHoodName(""); + } // 出生日期 & 年龄 if (r.getBirthday() != null) {