From 0c71c4e661195a8109ef698cc3c1d943e24b2be3 Mon Sep 17 00:00:00 2001 From: zhaoqing <3160641494@qq.com> Date: Sat, 25 Jul 2026 09:43:05 +0800 Subject: [PATCH] =?UTF-8?q?fix(oms):=E5=87=BA=E5=BA=93=E5=8D=95=E5=8F=B7/?= =?UTF-8?q?=E9=A2=84=E7=BA=A6=E5=8D=95=E7=94=9F=E6=88=90=E4=BF=AE=E6=94=B9?= =?UTF-8?q?,=E9=A2=84=E7=BA=A6=E7=A1=AE=E8=AE=A4=E7=94=9F=E6=88=90?= =?UTF-8?q?=E5=8D=95=E5=8F=B7=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../persistence/ReservationStockInOrderImpl.java | 6 +++--- .../ReservationStockInOrderDomainService.java | 2 +- .../ReservationStockOutOrderDomainService.java | 2 +- .../service/ReserveStockInOrderDomainService.java | 13 ++++++------- .../service/ReserveStockOutOrderDomainService.java | 14 ++++++-------- 5 files changed, 17 insertions(+), 20 deletions(-) diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/repository/persistence/ReservationStockInOrderImpl.java b/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/repository/persistence/ReservationStockInOrderImpl.java index af18fa80b..08c317997 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/repository/persistence/ReservationStockInOrderImpl.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/repository/persistence/ReservationStockInOrderImpl.java @@ -221,7 +221,7 @@ public class ReservationStockInOrderImpl extends ServiceImpl stockInOrderDOList) { for (ReserveStockInOrderDO stockInOrderDO : stockInOrderDOList){ if (StringUtils.isBlank(stockInOrderDO.getInOrderNumber())){ - stockInOrderDO.setInOrderNumber(generateReserveOrderNumber()); + stockInOrderDO.setInOrderNumber(reservationStockInOrderDomainService.generateReserveOrderNumber1()); } // //设置物料信息 // setMaterialDetailInfo(stockInOrderDO); @@ -475,17 +475,16 @@ public class ReserveStockInOrderDomainService { String jsbz = reservationStockInOrderMapper.getJsbz(shipperId); reservationStockInOrder.setSettlementCurrency(jsbz); String oldInOrderNumber = reservationStockInOrder.getInOrderNumber(); - // 生成新业务单号,防止与已生成的入库业务单号重复 - String newOrderNumber = reservationStockInOrderDomainService.generateReserveOrderNumber(); - reservationStockInOrder.setInOrderNumber(newOrderNumber); - reservationStockInOrder.setBusinessOrderNo(newOrderNumber); + // 直接使用预约单号作为业务单号 + reservationStockInOrder.setInOrderNumber(oldInOrderNumber); + reservationStockInOrder.setBusinessOrderNo(oldInOrderNumber); List materialDetailList = materialDetailService.list(new QueryWrapper().lambda().eq(ReserveInMaterialDetail::getInOrderNumber, oldInOrderNumber)); List inMaterialDetailList = new ArrayList<>(); int index = 1; for (ReserveInMaterialDetail reserveInMaterialDetail : materialDetailList) { ReservationInMaterialDetail reservationInMaterialDetail = new ReservationInMaterialDetail(); BeanUtils.copyProperties(reserveInMaterialDetail, reservationInMaterialDetail,"materialDetailId"); - reservationInMaterialDetail.setInOrderNumber(newOrderNumber); // 使用新单号保持与主表关联 + reservationInMaterialDetail.setInOrderNumber(oldInOrderNumber); reservationInMaterialDetail.setQuantity(reserveInMaterialDetail.getReserveQuantity()); String lot = generateDateSerialNumber(); lot = lot+"-"+index; diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/reserveStockOutOrder/service/ReserveStockOutOrderDomainService.java b/mhd_oms/src/main/java/com/mhd/oms/domain/reserveStockOutOrder/service/ReserveStockOutOrderDomainService.java index cb75be175..17c415570 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/reserveStockOutOrder/service/ReserveStockOutOrderDomainService.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/reserveStockOutOrder/service/ReserveStockOutOrderDomainService.java @@ -97,7 +97,7 @@ public class ReserveStockOutOrderDomainService { @Transactional(rollbackFor = Exception.class) public Boolean insert(ReserveStockOutOrderDO stockOutOrderDO) { if (stockOutOrderDO.getOutOrderNumber() == null) { - stockOutOrderDO.setOutOrderNumber(generateReserveOrderNumber()); + stockOutOrderDO.setOutOrderNumber(reservationStockOutOrderDomainService.generateReserveOrderNumber1()); } // 与 update / batchInsert 一致:前端传计划数量为 quantity,非 outboundQuantity setMaterialDetailInfo(stockOutOrderDO); @@ -127,7 +127,7 @@ public class ReserveStockOutOrderDomainService { public Boolean batchInsert(List stockOutOrderDOList) { for (ReserveStockOutOrderDO stockOutOrderDO : stockOutOrderDOList){ if (StringUtils.isBlank(stockOutOrderDO.getOutOrderNumber())){ - stockOutOrderDO.setOutOrderNumber(generateReserveOrderNumber()); + stockOutOrderDO.setOutOrderNumber(reservationStockOutOrderDomainService.generateReserveOrderNumber1()); } //设置物料信息 setMaterialDetailInfo(stockOutOrderDO); @@ -306,12 +306,10 @@ public class ReserveStockOutOrderDomainService { Long shipperId = reservationStockOutOrder.getShipperId(); String jsbz = reservationStockInOrderMapper.getJsbz(shipperId); reservationStockOutOrder.setSettlementCurrency(jsbz); - // 保留旧单号,用于查询源明细数据 + // 直接使用预约出库单号作为业务单号 String oldOutOrderNumber = reservationStockOutOrder.getOutOrderNumber(); - // 生成出库业务单号,防止与已生成的出库业务单号重复 - String newOrderNumber = reservationStockOutOrderDomainService.generateReserveOrderNumber(); - reservationStockOutOrder.setOutOrderNumber(newOrderNumber); - reservationStockOutOrder.setBusinessOrderNo(newOrderNumber); + reservationStockOutOrder.setOutOrderNumber(oldOutOrderNumber); + reservationStockOutOrder.setBusinessOrderNo(oldOutOrderNumber); reservationStockOutOrderService.save(reservationStockOutOrder); List materialDetailList = outMaterialDetailService.list(new QueryWrapper().lambda().eq(ReserveOutMaterialDetail::getOutOrderNumber, oldOutOrderNumber)); List inMaterialDetailList = new ArrayList<>(); @@ -319,7 +317,7 @@ public class ReserveStockOutOrderDomainService { for (ReserveOutMaterialDetail reserveOutMaterialDetail : materialDetailList) { ReservationOutMaterialDetail reservationOutMaterialDetail = new ReservationOutMaterialDetail(); BeanUtils.copyProperties(reserveOutMaterialDetail, reservationOutMaterialDetail,"materialDetailId"); - reservationOutMaterialDetail.setOutOrderNumber(newOrderNumber); // 使用新单号保持与主表关联 + reservationOutMaterialDetail.setOutOrderNumber(oldOutOrderNumber); String lot = generateDateSerialNumber(); lot = lot+"-"+index; index++;