From a8c35b72e8994429dd02becc18da33224693bfd0 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Tue, 27 Jan 2026 15:13:53 +0800 Subject: [PATCH 1/2] =?UTF-8?q?refactor(WmsMaterialCoilService):=20?= =?UTF-8?q?=E7=A7=BB=E9=99=A4=E6=9C=AA=E5=8F=91=E8=B4=A7=E5=92=8C=E6=9C=AA?= =?UTF-8?q?=E8=AE=A1=E5=88=92=E9=92=A2=E5=8D=B7=E7=9A=84=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E8=BF=87=E6=BB=A4=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 注释掉了 onlyUnshippedAndUnplanned 参数的处理代码 - 移除了未发货状态的过滤条件(排除状态=1) - 移除了发货计划绑定检查的 SQL 查询逻辑 - 移除了 NOT EXISTS 和 FIND_IN_SET 相关的复杂查询 - 保留了逻辑删除和团队字段的筛选功能 --- .../impl/WmsMaterialCoilServiceImpl.java | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 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 6e92c7ef..dfb7781b 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 @@ -552,16 +552,16 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { qw.in("mc.coil_id", coilIdList); } } - // 仅查询未发货且未绑定在发货计划里的钢卷 - if (Boolean.TRUE.equals(bo.getOnlyUnshippedAndUnplanned())) { - // 未发货:排除状态=1(已出库/已发货) - qw.ne("mc.status", 1); - // 未绑定在任一有效发货计划:计划未删除,coil 字段包含当前 coil_id - // 这里使用 NOT EXISTS + FIND_IN_SET,避免将所有计划加载到内存 - qw.apply("NOT EXISTS (SELECT 1 FROM wms_delivery_plan dp " + - "WHERE dp.del_flag = 0 AND dp.coil IS NOT NULL AND dp.coil <> '' " + - "AND FIND_IN_SET(CAST(mc.coil_id AS CHAR), dp.coil))"); - } +// // 仅查询未发货且未绑定在发货计划里的钢卷 +// if (Boolean.TRUE.equals(bo.getOnlyUnshippedAndUnplanned())) { +// // 未发货:排除状态=1(已出库/已发货) +// qw.ne("mc.status", 1); +// // 未绑定在任一有效发货计划:计划未删除,coil 字段包含当前 coil_id +// // 这里使用 NOT EXISTS + FIND_IN_SET,避免将所有计划加载到内存 +// qw.apply("NOT EXISTS (SELECT 1 FROM wms_delivery_plan dp " + +// "WHERE dp.del_flag = 0 AND dp.coil IS NOT NULL AND dp.coil <> '' " + +// "AND FIND_IN_SET(CAST(mc.coil_id AS CHAR), dp.coil))"); +// } //逻辑删除 qw.eq("mc.del_flag", 0); //把team字段作为筛选条件 From 9c5546418ccc0a21aa0b202429e542f366396f18 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Tue, 27 Jan 2026 15:24:53 +0800 Subject: [PATCH 2/2] =?UTF-8?q?fix(delivery):=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=8F=91=E8=B4=A7=E5=8D=95=E7=8A=B6=E6=80=81=E6=A3=80=E6=9F=A5?= =?UTF-8?q?=E9=98=B2=E6=AD=A2=E4=BF=AE=E6=94=B9=E5=B7=B2=E5=8F=91=E8=B4=A7?= =?UTF-8?q?=E5=8D=95=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 根据waybillId查询数据库中现有数据 - 检查数据状态若为1则抛出异常阻止修改 - 实现已发货发货单不允许修改的业务规则 --- .../com/klp/service/impl/WmsDeliveryWaybillServiceImpl.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/klp-wms/src/main/java/com/klp/service/impl/WmsDeliveryWaybillServiceImpl.java b/klp-wms/src/main/java/com/klp/service/impl/WmsDeliveryWaybillServiceImpl.java index 5a3e9abb..2d43195e 100644 --- a/klp-wms/src/main/java/com/klp/service/impl/WmsDeliveryWaybillServiceImpl.java +++ b/klp-wms/src/main/java/com/klp/service/impl/WmsDeliveryWaybillServiceImpl.java @@ -95,6 +95,12 @@ public class WmsDeliveryWaybillServiceImpl implements IWmsDeliveryWaybillService */ @Override public Boolean updateByBo(WmsDeliveryWaybillBo bo) { + // 现根据bo.getWaybillId()查询出数据库中的数据 + // 如果这条数据的status是1 则抛异常为不允许修改 + WmsDeliveryWaybill db = baseMapper.selectById(bo.getWaybillId()); + if (db.getStatus() == 1) { + throw new RuntimeException("已发货的发货单不能修改"); + } WmsDeliveryWaybill update = BeanUtil.toBean(bo, WmsDeliveryWaybill.class); validEntityBeforeSave(update); return baseMapper.updateById(update) > 0;