From 03bb2940fd87e15b32a66c605dcd705cca7f4409 Mon Sep 17 00:00:00 2001 From: "zangch@mesnac.com" Date: Thu, 9 Oct 2025 11:23:56 +0800 Subject: [PATCH] =?UTF-8?q?fix(dms):=20=E8=BF=87=E6=BB=A4=E7=BB=B4?= =?UTF-8?q?=E6=8A=A4=E5=AE=9E=E4=BE=8BID=E4=B8=BA=E7=A9=BA=E7=9A=84?= =?UTF-8?q?=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在查询维护明细时增加维护实例ID非空判断 - 过滤维护实例ID为空的记录以避免空指针异常 - 确保统计唯一工单数量时排除空值影响 --- .../dms/service/impl/DmsBillsMaintDetailServiceImpl.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ruoyi-modules/hwmom-dms/src/main/java/org/dromara/dms/service/impl/DmsBillsMaintDetailServiceImpl.java b/ruoyi-modules/hwmom-dms/src/main/java/org/dromara/dms/service/impl/DmsBillsMaintDetailServiceImpl.java index 46190cde..8773043c 100644 --- a/ruoyi-modules/hwmom-dms/src/main/java/org/dromara/dms/service/impl/DmsBillsMaintDetailServiceImpl.java +++ b/ruoyi-modules/hwmom-dms/src/main/java/org/dromara/dms/service/impl/DmsBillsMaintDetailServiceImpl.java @@ -19,6 +19,7 @@ import org.dromara.dms.service.IDmsBillsMaintDetailService; import org.springframework.stereotype.Service; import java.util.*; +import java.util.Objects; import java.util.stream.Collectors; /** @@ -179,6 +180,7 @@ public class DmsBillsMaintDetailServiceImpl implements IDmsBillsMaintDetailServi List details = baseMapper.selectList( Wrappers.lambdaQuery() .eq(DmsBillsMaintDetail::getMachineId, machineId) + .isNotNull(DmsBillsMaintDetail::getMaintInstanceId) ); if (details.isEmpty()) { @@ -188,6 +190,7 @@ public class DmsBillsMaintDetailServiceImpl implements IDmsBillsMaintDetailServi // 提取唯一的工单ID Set maintInstanceIds = details.stream() .map(DmsBillsMaintDetail::getMaintInstanceId) + .filter(Objects::nonNull) .collect(Collectors.toSet()); // 查询工单主表信息 @@ -214,11 +217,13 @@ public class DmsBillsMaintDetailServiceImpl implements IDmsBillsMaintDetailServi Wrappers.lambdaQuery() .select(DmsBillsMaintDetail::getMaintInstanceId) .eq(DmsBillsMaintDetail::getMachineId, machineId) + .isNotNull(DmsBillsMaintDetail::getMaintInstanceId) ); // 统计唯一的工单数量 return (long) details.stream() .map(DmsBillsMaintDetail::getMaintInstanceId) + .filter(Objects::nonNull) .collect(Collectors.toSet()) .size(); }