From ac0aa960be6abbbc5122944d27323b8db4893ee7 Mon Sep 17 00:00:00 2001 From: pang.jiabao <pang_jiabao@163.com> Date: 星期日, 20 七月 2025 20:39:55 +0800 Subject: [PATCH] 出库订单扣减出库完成数量 --- src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | 19 ++++++++++--------- src/main/java/com/zy/asrs/mapper/OrderDetlPakoutMapper.java | 5 +++++ src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 12 +++++++++--- src/main/resources/mapper/OrderDetlPakoutMapper.xml | 15 +++++++++++++++ 4 files changed, 39 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/zy/asrs/mapper/OrderDetlPakoutMapper.java b/src/main/java/com/zy/asrs/mapper/OrderDetlPakoutMapper.java index 70e2f1c..b0a48a8 100644 --- a/src/main/java/com/zy/asrs/mapper/OrderDetlPakoutMapper.java +++ b/src/main/java/com/zy/asrs/mapper/OrderDetlPakoutMapper.java @@ -22,6 +22,8 @@ @Param("brand")String brand, @Param("standby1")String standby1, @Param("standby2")String standby2, @Param("standby3")String standby3, @Param("boxType1")String boxType1, @Param("boxType2")String boxType2, @Param("boxType3")String boxType3); + OrderDetlPakout selectItemByOrderNoNew(@Param("orderNo") String orderNo, @Param("matnr") String matnr, @Param("batch") String batch, + @Param("model")String model, @Param("volume")Double volume); List<OrderDetlPakout> selectWorkingDetls(Long orderId); @@ -48,6 +50,9 @@ @Param("boxType2")String boxType2, @Param("boxType3")String boxType3, @Param("qty")Double qty); + int increaseQtyByOrderNoNew(@Param("orderNo")String orderNo, @Param("matnr")String matnr, @Param("batch")String batch, + @Param("model")String model, @Param("volume")Double volume, @Param("qty")Double qty); + int increaseWorkQty(@Param("orderId")Long orderId, @Param("matnr")String matnr, @Param("batch")String batch, @Param("brand")String brand, @Param("standby1")String standby1, @Param("standby2")String standby2, @Param("standby3")String standby3, @Param("boxType1")String boxType1, @Param("boxType2")String boxType2, diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java index e948916..6925ad8 100644 --- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java @@ -14,6 +14,7 @@ import com.zy.asrs.entity.param.StockOutParam; import com.zy.asrs.mapper.LocMastMapper; import com.zy.asrs.entity.result.FindLocNoAttributeVo; +import com.zy.asrs.mapper.OrderDetlPakoutMapper; import com.zy.asrs.service.*; import com.zy.asrs.utils.OrderInAndOutUtil; import com.zy.asrs.utils.Utils; @@ -93,6 +94,9 @@ @Resource private OrderPakoutService orderPakOutService; + + @Resource + private OrderDetlPakoutMapper orderDetlPakoutMapper; @Override @Transactional @@ -1150,9 +1154,11 @@ // if (!orderDetlService.decrease(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getAnfme())) { // throw new CoolException("璁㈠崟鏁版嵁鍥炴粴澶辫触"); // } - OrderInAndOutUtil.decrease(Boolean.FALSE,wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(),wrkDetl.getBrand(), - wrkDetl.getStandby1(),wrkDetl.getStandby2(),wrkDetl.getStandby3(), - wrkDetl.getBoxType1(),wrkDetl.getBoxType2(),wrkDetl.getBoxType3(), wrkDetl.getAnfme()); +// OrderInAndOutUtil.decrease(Boolean.FALSE,wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(),wrkDetl.getBrand(), +// wrkDetl.getStandby1(),wrkDetl.getStandby2(),wrkDetl.getStandby3(), +// wrkDetl.getBoxType1(),wrkDetl.getBoxType2(),wrkDetl.getBoxType3(), wrkDetl.getAnfme()); + orderDetlPakoutMapper.increaseQtyByOrderNoNew(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), + wrkDetl.getBatch(),wrkDetl.getModel(),wrkDetl.getVolume(),wrkDetl.getAnfme()); //淇敼璁㈠崟涓昏〃鐘舵��,娌℃湁浣滀笟鏁伴噺鏃舵墠鍙互淇敼 boolean flag = true; diff --git a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java index 8f19b75..82f06c9 100644 --- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.core.common.Cools; import com.zy.asrs.entity.*; +import com.zy.asrs.mapper.OrderDetlPakoutMapper; import com.zy.asrs.service.*; import com.zy.asrs.task.AbstractHandler; import com.zy.asrs.task.core.ReturnT; @@ -12,6 +13,7 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.interceptor.TransactionAspectSupport; +import javax.annotation.Resource; import java.util.Date; import java.util.List; @@ -39,6 +41,9 @@ private OrderDetlPakinService orderDetlPakinService; @Autowired private OrderDetlPakoutService orderDetlPakoutService; + + @Resource + private OrderDetlPakoutMapper orderDetlPakoutMapper; public ReturnT<String> start(WrkMast wrkMast) { // 4.鍏ュ簱瀹屾垚 @@ -447,17 +452,13 @@ } for (WrkDetl wrkDetl : wrkDetls101) { // 鏇存柊璁㈠崟瀹屾垚鏁伴噺 - OrderDetlPakout orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(),wrkDetl.getBrand(),wrkDetl.getStandby1(),wrkDetl.getStandby2(),wrkDetl.getStandby3(), - wrkDetl.getBoxType1(),wrkDetl.getBoxType2(),wrkDetl.getBoxType3()); - if (orderDetlPakout==null){ - orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(),wrkDetl.getBrand(),wrkDetl.getStandby1(),wrkDetl.getStandby2(),wrkDetl.getStandby3(), - wrkDetl.getBoxType1(),wrkDetl.getBoxType2(),wrkDetl.getBoxType3()); - } +// OrderDetlPakout orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(),wrkDetl.getBrand(),wrkDetl.getStandby1(),wrkDetl.getStandby2(),wrkDetl.getStandby3(), +// wrkDetl.getBoxType1(),wrkDetl.getBoxType2(),wrkDetl.getBoxType3()); + OrderDetlPakout orderDetlPakout = orderDetlPakoutMapper.selectItemByOrderNoNew(wrkDetl.getOrderNo(),wrkDetl.getMatnr(),wrkDetl.getBatch(),wrkDetl.getModel(),wrkDetl.getVolume()); try { if(!Cools.isEmpty(orderDetlPakout)){ - if(!orderDetlPakoutService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), - orderDetlPakout.getBatch(),wrkDetl.getBrand(),wrkDetl.getStandby1(),wrkDetl.getStandby2(),wrkDetl.getStandby3(), - wrkDetl.getBoxType1(),wrkDetl.getBoxType2(),wrkDetl.getBoxType3(),wrkDetl.getAnfme())){ + if(orderDetlPakoutMapper.increaseQtyByOrderNoNew(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), + wrkDetl.getBatch(),wrkDetl.getModel(),wrkDetl.getVolume(),wrkDetl.getAnfme())<= 0){ // exceptionHandle("鍏ㄦ澘鍑哄簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]", // wrkMast.getWrkNo(), wrkMast.getLocNo()); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); diff --git a/src/main/resources/mapper/OrderDetlPakoutMapper.xml b/src/main/resources/mapper/OrderDetlPakoutMapper.xml index 7f70401..798de3d 100644 --- a/src/main/resources/mapper/OrderDetlPakoutMapper.xml +++ b/src/main/resources/mapper/OrderDetlPakoutMapper.xml @@ -137,6 +137,13 @@ and mdt.pakout = 1 <include refid="pakOutPageCondition"></include> </select> + <select id="selectItemByOrderNoNew" resultType="com.zy.asrs.entity.OrderDetlPakout"> + select * from man_order_detl_pakout + where 1=1 + and order_no = #{orderNo} + and matnr = #{matnr} + and batch = #{batch} and model = #{model} and volume = #{volume} + </select> <update id="increase"> update man_order_detl_pakout @@ -184,5 +191,13 @@ and matnr = #{matnr} <include refid="standbyAll"></include> </update> + <update id="increaseQtyByOrderNoNew"> + update man_order_detl_pakout + set qty = qty + #{qty} + where 1=1 + and order_no = #{orderNo} + and matnr = #{matnr} + and batch = #{batch} and model = #{model} and volume = #{volume} + </update> </mapper> -- Gitblit v1.9.1