From 44ca5c2e18970e9411df39653494da8d0b81332a Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Thu, 5 Feb 2026 11:12:53 +0800 Subject: [PATCH] =?UTF-8?q?refactor(WmsMaterialCoilService):=20=E7=A7=BB?= =?UTF-8?q?=E9=99=A4=E5=BA=9F=E5=BC=83=E7=9A=84=E4=BA=8C=E7=BB=B4=E7=A0=81?= =?UTF-8?q?=E7=94=9F=E6=88=90=E6=96=B9=E6=B3=95=E5=B9=B6=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E5=BA=93=E4=BD=8D=E6=9B=B4=E6=96=B0=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 删除了generateQrcodeForUpdate方法,该方法已不再使用 - 简化了分卷操作后的库位状态更新逻辑 - 统一了实际库位启用状态更新的方法调用参数 --- .../impl/WmsMaterialCoilServiceImpl.java | 78 +------------------ 1 file changed, 1 insertion(+), 77 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 da042b7b..3ea9e5e2 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 @@ -1238,79 +1238,6 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { } - /** - * 生成二维码(更新时库区变化) - */ - private Long generateQrcodeForUpdate(WmsMaterialCoil oldCoil, WmsMaterialCoilBo bo) { - try { - // 1. 将原二维码标记为历史码(status = 0) - if (oldCoil.getQrcodeRecordId() != null) { - WmsGenerateRecordBo oldQrBo = new WmsGenerateRecordBo(); - oldQrBo.setRecordId(oldCoil.getQrcodeRecordId()); - oldQrBo.setStatus(0); // 0=历史码 - generateRecordService.updateByBo(oldQrBo); - } - - Map contentMap = new HashMap<>(); - String currentCoilNo = bo.getCurrentCoilNo() != null ? bo.getCurrentCoilNo() : oldCoil.getCurrentCoilNo(); - - contentMap.put("enter_coil_no", oldCoil.getEnterCoilNo()); // 入场钢卷号(始终不变) - contentMap.put("current_coil_no", currentCoilNo); // 当前钢卷号 - contentMap.put("coil_id", String.valueOf(oldCoil.getCoilId())); // 初始钢卷ID(记录最初的ID) - contentMap.put("current_coil_id", "null"); // 当前钢卷ID(更新时暂时为null,插入后更新) - - // 复制原钢卷的历史steps - List> steps = new ArrayList<>(); - if (oldCoil.getQrcodeRecordId() != null) { - WmsGenerateRecordVo oldRecord = generateRecordService.queryById(oldCoil.getQrcodeRecordId()); - if (oldRecord != null) { - ObjectMapper objectMapper = new ObjectMapper(); - @SuppressWarnings("unchecked") - Map oldContentMap = objectMapper.readValue(oldRecord.getContent(), Map.class); - @SuppressWarnings("unchecked") - List> oldSteps = (List>) oldContentMap.get("steps"); - if (oldSteps != null) { - steps.addAll(oldSteps); - } - } - } - - // 添加更新步骤(库区变化) - Map updateStep = new HashMap<>(); - updateStep.put("step", steps.size() + 1); - updateStep.put("action", "更新"); - updateStep.put("operation", "库区变更"); - updateStep.put("old_warehouse_id", String.valueOf(oldCoil.getWarehouseId())); - updateStep.put("new_warehouse_id", String.valueOf(bo.getWarehouseId())); - //放入真实库区 - updateStep.put("old_actual_warehouse_id", String.valueOf(oldCoil.getActualWarehouseId())); - updateStep.put("new_actual_warehouse_id", String.valueOf(bo.getActualWarehouseId())); - updateStep.put("old_coil_id", String.valueOf(oldCoil.getCoilId())); - updateStep.put("current_coil_no", currentCoilNo); - updateStep.put("operator", LoginHelper.getUsername()); // 操作者 - steps.add(updateStep); - - contentMap.put("steps", steps); - - ObjectMapper objectMapper = new ObjectMapper(); - String contentJson = objectMapper.writeValueAsString(contentMap); - - // 2. 生成新的二维码(status = 1) - WmsGenerateRecordBo recordBo = new WmsGenerateRecordBo(); - recordBo.setContent(contentJson); - recordBo.setSerialNumber(oldCoil.getEnterCoilNo() + "-W" + bo.getWarehouseId()); // 使用入场钢卷号+库区ID作为编号 - recordBo.setQrcodeType(0L); - recordBo.setIsEnabled(0L); - recordBo.setSize(200L); - recordBo.setStatus(1); // 1=当前有效码 - - WmsGenerateRecordVo record = generateRecordService.insertByBo(recordBo); - return record.getRecordId(); - } catch (Exception e) { - throw new RuntimeException("生成更新二维码失败: " + e.getMessage()); - } - } - /** * 检查钢卷是否被独占(用于单步分卷操作) * @param coilId 钢卷ID @@ -3522,10 +3449,7 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { validEntityBeforeSave(childCoil); baseMapper.insert(childCoil); - if (childCoilBo.getActualWarehouseId() != null) { - updateActualWarehouseEnableStatus(childCoilBo.getActualWarehouseId(), null); - } - updateActualWarehouseEnableStatus(null, childCoilBo.getActualWarehouseId()); + updateActualWarehouseEnableStatus(parentCoil.getActualWarehouseId(), childCoilBo.getActualWarehouseId()); // 8. 更新二维码中的coilId updateQrcodeCoilId(childQrcodeId, childCoil.getCoilId());