From 323d90db929831821ac7deafe476d62fbd76d177 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Fri, 24 Apr 2026 13:10:07 +0800 Subject: [PATCH] =?UTF-8?q?fix(wms):=20=E4=BF=AE=E5=A4=8D=E9=92=A2?= =?UTF-8?q?=E5=8D=B7=E5=8F=91=E8=B4=A7=E6=97=B6=E5=88=A4=E7=BA=A7=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 - 移除原有的空白质检状态检查条件 - 添加特免逻辑库ID集合用于豁免未判级检查 - 实现针对特定仓库ID的判级检查绕过机制 - 保留对非特免仓库的未判级钢卷发货限制 - 修复历史数据检查的位置确保正确的执行顺序 --- .../klp/service/impl/WmsMaterialCoilServiceImpl.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/klp-wms/src/main/java/com/klp/service/impl/WmsMaterialCoilServiceImpl.java b/klp-wms/src/main/java/com/klp/service/impl/WmsMaterialCoilServiceImpl.java index 783ecf23..9067ed39 100644 --- a/klp-wms/src/main/java/com/klp/service/impl/WmsMaterialCoilServiceImpl.java +++ b/klp-wms/src/main/java/com/klp/service/impl/WmsMaterialCoilServiceImpl.java @@ -2860,13 +2860,17 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { if (wmsMaterialCoilVo != null && Objects.equals(wmsMaterialCoilVo.getQualityStatus(), "O")) { throw new RuntimeException("当前钢卷为质检未通过,请勿发货!"); } - if (wmsMaterialCoilVo != null && StringUtils.isBlank(wmsMaterialCoilVo.getQualityStatus())) { - throw new RuntimeException("该钢卷未判级,请勿发货!"); - } // 如果当前钢卷为历史数据应该抛异常 if (wmsMaterialCoilVo != null && wmsMaterialCoilVo.getDataType() == 0) { throw new RuntimeException("当前数据为历史数据,请勿发货!"); } + // 检查是否需要判级:排除四个特定逻辑库,这些库的钢卷即使未判级也能发货 + Set exemptWarehouseIds = new HashSet<>(Arrays.asList(1988150210872930306L, 1988150380649967617L, 1988150800092950529L, 1988151027466170370L)); + if (wmsMaterialCoilVo != null + && StringUtils.isBlank(wmsMaterialCoilVo.getQualityStatus()) + && !exemptWarehouseIds.contains(wmsMaterialCoilVo.getWarehouseId())) { + throw new RuntimeException("该钢卷未判级,请勿发货!"); + } // 1. 更新钢卷为已发货,并记录发货时间,同时清空实际库区占用(改用Wrapper实现) int rows = 0; //获取当前调用接口的这个人的username