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 c42c28519..7bb51daf1 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 @@ -897,6 +897,10 @@ public class ReservationStockInOrderDomainService { .set(ReservationStockInOrder::getIssueStatus, 3) //清空下发/执行时间(前端"是否执行"列按执行时间判断,不清会仍显示已执行,与取消下发 cancelIssueOrder 同口径) .set(ReservationStockInOrder::getIssueTime, null) + //入库进度状态(1-已创建 2-已审核 3-收货中 4-上架中 5-已入库):首轮"完成上架"会经WMS回传写成5, + //不重置的话重新下发时copy给执行单→W入库单→收货单,收货单带着"已完成"状态导致前端不给收货按钮; + //重置为1(已创建),与手工新单首次下发链路一致(W入库单/收货单起点=1-待收货) + .set(ReservationStockInOrder::getStatus, 1) .set(ReservationStockInOrder::getInQuantity, BigDecimal.ZERO) .set(ReservationStockInOrder::getStorageTime, null) .set(ReservationStockInOrder::getExecutionInOrderNumber, null) diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/inOrderAbnormal/repository/persistence/InOrderAbnormalImpl.java b/mhd_wms/src/main/java/com/mhd/wms/domain/inOrderAbnormal/repository/persistence/InOrderAbnormalImpl.java index e6d13bec3..af61aeb41 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/inOrderAbnormal/repository/persistence/InOrderAbnormalImpl.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/inOrderAbnormal/repository/persistence/InOrderAbnormalImpl.java @@ -187,6 +187,8 @@ public class InOrderAbnormalImpl extends ServiceImpl from in_order_abnormal a - LEFT JOIN stock_in_order b ON a.in_order_number = b.in_order_number and a.DEL_FLAG = 1 and b.DEL_FLAG = 1 + + LEFT JOIN stock_in_order b ON a.in_order_number = b.in_order_number + and a.DEL_FLAG = 1 + and b.DEL_FLAG = (case when a.TYPE = 3 then 2 else 1 end) + and b.IN_ORDER_ID = (select max(c.IN_ORDER_ID) from stock_in_order c + where c.IN_ORDER_NUMBER = a.in_order_number + and c.DEL_FLAG = (case when a.TYPE = 3 then 2 else 1 end)) diff --git a/mhd_wms/src/main/resources/mapper/stockReceiptOrder/StockReceiptOrderMapper.xml b/mhd_wms/src/main/resources/mapper/stockReceiptOrder/StockReceiptOrderMapper.xml index ef2f4463b..e63fab53f 100644 --- a/mhd_wms/src/main/resources/mapper/stockReceiptOrder/StockReceiptOrderMapper.xml +++ b/mhd_wms/src/main/resources/mapper/stockReceiptOrder/StockReceiptOrderMapper.xml @@ -173,9 +173,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and a.DEL_FLAG = 2 and b.DEL_FLAG = 2 + + and b.IN_ORDER_ID = (select max(c.IN_ORDER_ID) from stock_in_order c + where c.IN_ORDER_NUMBER = a.in_order_number and c.DEL_FLAG = 2) and a.DEL_FLAG = 1 and b.DEL_FLAG = 1 + and b.IN_ORDER_ID = (select max(c.IN_ORDER_ID) from stock_in_order c + where c.IN_ORDER_NUMBER = a.in_order_number and c.DEL_FLAG = 1) diff --git a/mhd_wms/src/main/resources/mapper/stockShelfOrder/StockShelfOrderMapper.xml b/mhd_wms/src/main/resources/mapper/stockShelfOrder/StockShelfOrderMapper.xml index 108b25ec3..3b468716c 100644 --- a/mhd_wms/src/main/resources/mapper/stockShelfOrder/StockShelfOrderMapper.xml +++ b/mhd_wms/src/main/resources/mapper/stockShelfOrder/StockShelfOrderMapper.xml @@ -164,9 +164,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and a.DEL_FLAG = 2 and b.DEL_FLAG = 2 + + and b.IN_ORDER_ID = (select max(c.IN_ORDER_ID) from stock_in_order c + where c.IN_ORDER_NUMBER = a.in_order_number and c.DEL_FLAG = 2) and a.DEL_FLAG = 1 and b.DEL_FLAG = 1 + and b.IN_ORDER_ID = (select max(c.IN_ORDER_ID) from stock_in_order c + where c.IN_ORDER_NUMBER = a.in_order_number and c.DEL_FLAG = 1)