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