From 9ee9938b2d7582f7e37dfb11ac16159c97386528 Mon Sep 17 00:00:00 2001 From: qiankanghui Date: Mon, 25 May 2026 16:18:42 +0800 Subject: [PATCH] =?UTF-8?q?refactor(inspection):=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E9=AA=8C=E8=B4=A7=E6=95=B0=E9=87=8F=E4=BF=AE=E6=94=B9=E6=A3=80?= =?UTF-8?q?=E6=9F=A5=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 移除冗余的日志输出代码 - 简化数量对比逻辑,直接比较申请数量与PO总数量 - 移除异常捕获包装,简化方法结构 - 优化变量命名,提高代码可读性 - 移除不必要的注释信息 --- .../impl/InspectionRequestServiceImpl.java | 82 +++++++------------ 1 file changed, 31 insertions(+), 51 deletions(-) diff --git a/src/main/java/com/xujie/modules/inspection/service/impl/InspectionRequestServiceImpl.java b/src/main/java/com/xujie/modules/inspection/service/impl/InspectionRequestServiceImpl.java index 73b86a5..c6ecaeb 100644 --- a/src/main/java/com/xujie/modules/inspection/service/impl/InspectionRequestServiceImpl.java +++ b/src/main/java/com/xujie/modules/inspection/service/impl/InspectionRequestServiceImpl.java @@ -74,60 +74,40 @@ public class InspectionRequestServiceImpl extends ServiceImpl subList = inspectionRequestDetailSubMapper.selectByRequestNo(site, requestNo); - - if (subList == null || subList.isEmpty()) { - log.info("subList 为空,返回 false"); - return false; + + List subList = + inspectionRequestDetailSubMapper.selectByRequestNo(site, requestNo); + + if (subList == null || subList.isEmpty()) { + return false; + } + + for (InspectionRequestDetailSub sub : subList) { + + Map poInfo = + poDetailMapper.getPoDetailInspectInfo( + site, + sub.getPoNo(), + sub.getPoItemNo()); + + if (poInfo == null) { + continue; } - - log.info("subList 大小: {}", subList.size()); - - // 2. 逐条检查:比较 sub.qty 与 waitInspectQty - for (InspectionRequestDetailSub sub : subList) { - log.info("检查 sub: poNo={}, itemNo={}, qty={}", sub.getPoNo(), sub.getPoItemNo(), sub.getQty()); - - // 查询 PODetail 表中的信息 - java.util.Map poInfo = poDetailMapper.getPoDetailInspectInfo( - site, sub.getPoNo(), sub.getPoItemNo()); - - if (poInfo != null) { - log.info("PODetail 信息: {}", poInfo); - - // 获取未验货数量(注意:MyBatis返回的Map键名是下划线命名) - BigDecimal remainQty = new BigDecimal(poInfo.get("remain_qty").toString()); - BigDecimal subQty = sub.getQty(); - - log.info("remainQty={}, subQty={}", remainQty, subQty); - - // 计算原始的 waitInspectQty = 当前 remainQty + sub.qty - BigDecimal originalWaitInspectQty = remainQty.add(subQty); - - log.info("originalWaitInspectQty={}", originalWaitInspectQty); - - // 如果 sub.qty != 原始 waitInspectQty,说明有修改 - if (subQty.compareTo(originalWaitInspectQty) != 0) { - log.info("检测到数量修改: requestNo={}, poNo={}, itemNo={}, subQty={}, originalWaitInspectQty={}", - requestNo, sub.getPoNo(), sub.getPoItemNo(), subQty, originalWaitInspectQty); - return true; - } else { - log.info("数量未修改: subQty == originalWaitInspectQty"); - } - } else { - log.warn("PODetail 信息查询结果为空"); - } + + // PO总数量 + BigDecimal poQty = + new BigDecimal(poInfo.get("qty").toString()); + + // 本次申请数量 + BigDecimal subQty = sub.getQty(); + + // 不等于PO总数量 => 部分验货 => 标红 + if (subQty.compareTo(poQty) != 0) { + return true; } - - log.info("所有 sub 都未检测到修改,返回 false"); - return false; - } catch (Exception e) { - log.error("检查验货数量修改状态失败: site={}, requestNo={}", site, requestNo, e); - return false; } + + return false; }