From bca8b5fbed4f9c24e172db3d38b68a70ce12d8c5 Mon Sep 17 00:00:00 2001 From: rcx <3084692334@qq.com> Date: Tue, 18 Aug 2026 11:36:21 +0800 Subject: [PATCH] =?UTF-8?q?fix(oms):=E5=85=A5=E5=BA=93=E6=89=A7=E8=A1=8C?= =?UTF-8?q?=E5=8D=95=E4=B8=9A=E5=8A=A1=E5=8D=95=E5=8F=B7=E4=B8=8D=E9=9A=8F?= =?UTF-8?q?=E4=B8=8B=E5=8F=91=E5=A4=8D=E5=88=B6=EF=BC=8C=E6=89=A7=E8=A1=8C?= =?UTF-8?q?=E5=B9=B6=E4=B8=8B=E5=8F=91=E5=85=A5=E5=8F=A3=E8=A1=A5=E5=85=85?= =?UTF-8?q?=E6=9C=89=E6=95=88=E8=BF=90=E8=BE=93=E4=B8=9A=E5=8A=A1=E5=8D=95?= =?UTF-8?q?=E5=9B=9E=E5=A1=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ReservationStockInOrderDomainService.java | 25 ++++++++++++++++--- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/service/ReservationStockInOrderDomainService.java b/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/service/ReservationStockInOrderDomainService.java index b09091343..6623dfbbc 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/service/ReservationStockInOrderDomainService.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/service/ReservationStockInOrderDomainService.java @@ -645,8 +645,9 @@ public class ReservationStockInOrderDomainService { String warehouseName = reservationStockInOrderMapper.getWarehouseName(warehouseId); ExecutionStockInOrder reservationStockInOrder = new ExecutionStockInOrder(); - // 运输业务单号不直接从业务单头复制,避免历史已取消运输单号残留下发到执行单 - BeanUtils.copyProperties(byId, reservationStockInOrder,"inOrderId","issueStatus","issueTime","issueId","issueName","reservationAuditId","reservationAuditName","reservationAuditTime","businessNumber","tmsOrderNumber"); + // 业务单号/运输业务单号不从业务单头复制:业务单的businessOrderNo=自身单号,直接复制会导致 + // 执行单"运输业务单号"列永远显示入库业务单号(未选运输也显示) + BeanUtils.copyProperties(byId, reservationStockInOrder,"inOrderId","issueStatus","issueTime","issueId","issueName","reservationAuditId","reservationAuditName","reservationAuditTime","businessOrderNo","businessNumber","tmsOrderNumber"); reservationStockInOrder.setIssueStatus(0); reservationStockInOrder.setOrderTypeCode("pu_tong_ru_ku"); reservationStockInOrder.setOrderTypeName("普通入库"); @@ -666,7 +667,8 @@ public class ReservationStockInOrderDomainService { reservationStockInOrder.setWarehouseName(warehouseName); reservationStockInOrder.setBusinessInOrderNumber(inOrderNumber); - // 仅当存在有效(未取消/未拦截/未删除)的运输业务单时,才回填运输业务单号 + // 仅当存在有效(未取消/未拦截/未删除)的运输业务单时才回填运输业务单号, + // businessOrderNo与businessNumber同值,兼容前端绑定任一字段 BusinessDocumentOrder activeTransportOrder = businessDocumentOrderMapper.selectOne(new LambdaQueryWrapper() .eq(BusinessDocumentOrder::getInOrderNumber, inOrderNumber) .eq(BusinessDocumentOrder::getDelFlag, 1) @@ -674,6 +676,7 @@ public class ReservationStockInOrderDomainService { .orderByDesc(BusinessDocumentOrder::getCreateTime) .last("limit 1")); if (activeTransportOrder != null) { + reservationStockInOrder.setBusinessOrderNo(activeTransportOrder.getGoodsNumber()); reservationStockInOrder.setBusinessNumber(activeTransportOrder.getGoodsNumber()); reservationStockInOrder.setTmsOrderNumber(byId.getTmsOrderNumber()); } @@ -857,7 +860,7 @@ public class ReservationStockInOrderDomainService { ExecutionStockInOrder reservationStockInOrder = new ExecutionStockInOrder(); // 运输业务单号不直接从业务单头复制,避免历史已取消运输单号残留下发到执行单 - BeanUtils.copyProperties(byId, reservationStockInOrder,"inOrderId","issueStatus","issueTime","issueId","issueName","reservationAuditId","reservationAuditName","reservationAuditTime","businessNumber","tmsOrderNumber"); + BeanUtils.copyProperties(byId, reservationStockInOrder,"inOrderId","issueStatus","issueTime","issueId","issueName","reservationAuditId","reservationAuditName","reservationAuditTime","businessOrderNo","businessNumber","tmsOrderNumber"); reservationStockInOrder.setIssueStatus(0); reservationStockInOrder.setOrderTypeCode("pu_tong_ru_ku"); reservationStockInOrder.setOrderTypeName("普通入库"); @@ -871,6 +874,20 @@ public class ReservationStockInOrderDomainService { reservationStockInOrder.setWarehouseName(warehouseName); reservationStockInOrder.setBusinessInOrderNumber(inOrderNumber); + // 仅当存在有效(未取消/未拦截/未删除)的运输业务单时才回填运输业务单号, + // businessOrderNo与businessNumber同值,兼容前端绑定任一字段 + BusinessDocumentOrder activeTransportOrder = businessDocumentOrderMapper.selectOne(new LambdaQueryWrapper() + .eq(BusinessDocumentOrder::getInOrderNumber, inOrderNumber) + .eq(BusinessDocumentOrder::getDelFlag, 1) + .notIn(BusinessDocumentOrder::getOrderStatus, 4L, 5L) + .orderByDesc(BusinessDocumentOrder::getCreateTime) + .last("limit 1")); + if (activeTransportOrder != null) { + reservationStockInOrder.setBusinessOrderNo(activeTransportOrder.getGoodsNumber()); + reservationStockInOrder.setBusinessNumber(activeTransportOrder.getGoodsNumber()); + reservationStockInOrder.setTmsOrderNumber(byId.getTmsOrderNumber()); + } + //设置入库单号 // Long warehouseId1 = reservationStockInOrder.getWarehouseId();