diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/repository/mapper/ExecutionStockOutOrderMapper.java b/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/repository/mapper/ExecutionStockOutOrderMapper.java index 95c0deb2f..173c8151a 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/repository/mapper/ExecutionStockOutOrderMapper.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/repository/mapper/ExecutionStockOutOrderMapper.java @@ -37,4 +37,5 @@ public interface ExecutionStockOutOrderMapper extends BaseMapper1) { - reservationStockInOrder.setOutOrderNumber(OrderSequence.getOrderCode("CK")); - } else { - reservationStockInOrder.setOutOrderNumber(inOrderNumber); - } + reservationStockInOrder.setOutOrderNumber(generateExecutionOrderNumber(warehouseCode)); + + // reservationStockInOrder.setBusinessOrderNo(byId.getBusinessOrderNo()); + reservationStockInOrder.setBusinessOrderNo(reservationStockInOrder.getOutOrderNumber()); List inMaterialDetailList = new ArrayList<>(); for (ReservationOutMaterialDetail reservationOutMaterialDetail : details) { @@ -513,11 +516,9 @@ public class ReservationStockOutOrderDomainService { reservationStockInOrder.setWarehouseCode(warehouseCode); reservationStockInOrder.setWarehouseName(warehouseName); reservationStockInOrder.setBusinessOutOrderNumber(inOrderNumber); - if (materialDetailGroupByWarehouse!=null&&materialDetailGroupByWarehouse.size()>1) { - reservationStockInOrder.setOutOrderNumber(OrderSequence.getOrderCode("CK")); - } else { - reservationStockInOrder.setOutOrderNumber(inOrderNumber); - } + reservationStockInOrder.setOutOrderNumber(generateExecutionOrderNumber(warehouseCode)); + // reservationStockInOrder.setBusinessOrderNo(byId.getBusinessOrderNo()); + reservationStockInOrder.setBusinessOrderNo(reservationStockInOrder.getOutOrderNumber()); List inMaterialDetailList = new ArrayList<>(); for (ReservationOutMaterialDetail reservationOutMaterialDetail : details) { @@ -1051,4 +1052,16 @@ public class ReservationStockOutOrderDomainService { } } + /** + * 生成执行出库单号:仓库代码简称 + YYMMDD + 当日累加(3位,不足补零) + */ + public String generateExecutionOrderNumber(String warehouseCode) { + SimpleDateFormat sdf = new SimpleDateFormat("yyMMdd"); + String datePart = sdf.format(new Date()); + String prefix = warehouseCode + datePart; + int todayCount = executionStockOutOrderMapper.countByOrderNumberPrefix(prefix); + String seq = String.format("%03d", todayCount + 1); + return prefix + seq; + } + } \ No newline at end of file diff --git a/mhd_oms/src/main/resources/mapper/executionStockOutOrder/ExecutionStockOutOrderMapper.xml b/mhd_oms/src/main/resources/mapper/executionStockOutOrder/ExecutionStockOutOrderMapper.xml index c53eb17e2..47081b394 100644 --- a/mhd_oms/src/main/resources/mapper/executionStockOutOrder/ExecutionStockOutOrderMapper.xml +++ b/mhd_oms/src/main/resources/mapper/executionStockOutOrder/ExecutionStockOutOrderMapper.xml @@ -475,4 +475,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" update "NGWL_TEST_WMS".out_material_detail set DEL_FLAG = 2 where DEL_FLAG = 1 and out_order_number = #{outOrderNumber} + \ No newline at end of file