From 11793d3ff24d577651a2481a05931e2c4f2931f7 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Mon, 2 Mar 2026 10:47:51 +0800 Subject: [PATCH] =?UTF-8?q?feat(wms):=20=E6=B7=BB=E5=8A=A0=E9=92=A2?= =?UTF-8?q?=E5=8D=B7=E5=9B=9E=E6=BB=9A=E5=90=8E=E7=9A=84=E6=93=8D=E4=BD=9C?= =?UTF-8?q?=E8=AE=B0=E5=BD=95=E6=B8=85=E7=90=86=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在删除钢卷后自动清理相关的待处理操作记录 - 实现查询并删除最晚一条非401-405范围内的操作记录 - 添加对最新操作记录的条件筛选和删除逻辑 --- .../service/impl/WmsMaterialCoilServiceImpl.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) 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 4b7372b8..fd4ab2ea 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 @@ -3036,6 +3036,20 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { // 9.2 删除当前钢卷 baseMapper.deleteById(currentCoilId); + // 删除操作记录:删除最晚的一条且actionType不在401-405范围内,并且coilId等于historyCoilId + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(WmsCoilPendingAction::getCoilId, historyCoilId) + .notIn(WmsCoilPendingAction::getActionType, Arrays.asList(401, 402, 403, 404, 405)) + .eq(WmsCoilPendingAction::getDelFlag, 0) + .eq(WmsCoilPendingAction::getActionStatus, 2) + .orderByDesc(WmsCoilPendingAction::getCreateTime) + .last("LIMIT 1"); + + WmsCoilPendingAction latestAction = coilPendingActionMapper.selectOne(queryWrapper); + if (latestAction != null) { + coilPendingActionMapper.deleteById(latestAction.getActionId()); + } + // 9.3 恢复历史钢卷为当前数据 LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(WmsMaterialCoil::getCoilId, historyCoilId)