From 7b0c10626e919801509fbfc39fef64c2a1822f3b Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期三, 11 三月 2026 13:51:41 +0800
Subject: [PATCH] #全板出库更新订单信息
---
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | 60 +++++++++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 43 insertions(+), 17 deletions(-)
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 f821f84..3f48070 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -128,11 +128,15 @@
}
// 鏇存柊璁㈠崟瀹屾垚鏁伴噺
- OrderDetl orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
+ OrderDetl orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(),wrkDetl.getBomCode(),wrkDetl.getThreeCode());
try {
if(!Cools.isEmpty(orderDetl)){
- if(!orderDetlService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(),
- wrkDetl.getBatch(),wrkDetl.getAnfme())){
+ if(!orderDetlService.increaseQtyByOrderNo(wrkDetl.getOrderNo(),
+ wrkDetl.getMatnr(),
+ wrkDetl.getBatch(),
+ wrkDetl.getAnfme(),
+ wrkDetl.getBomCode(),
+ wrkDetl.getThreeCode())){
// exceptionHandle("鍏ㄦ澘鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]",
// wrkMast.getWrkNo(), wrkMast.getLocNo());
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
@@ -146,6 +150,7 @@
if (locMast.getLocSts().equals("S")) {
locMast.setLocSts("F");
locMast.setBarcode(wrkMast.getBarcode());
+ locMast.setFullPlt(wrkMast.getFullPlt());
locMast.setIoTime(now);
locMast.setModiTime(now);
if (!locMastService.updateById(locMast)) {
@@ -178,6 +183,9 @@
return FAIL.setMsg("鎷f枡鍏ュ簱 ===>> 淇敼搴撳瓨鏄庣粏鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
}
} else {
+ if (Math.abs(wrkDetl.getAnfme())<=0){
+ continue;
+ }
LocDetl detl = new LocDetl();
// Mat mat = matService.selectByMatnr(wrkDetl.getMatnr());
@@ -231,10 +239,12 @@
}
// 淇敼搴撳瓨鏄庣粏鏁伴噺锛屽鏃犲簱瀛橈紝鏇炬柊澧�
for (WrkDetl wrkDetl:wrkDetls54) {
-
- LocDetl locDetl = locDetlService.selectItem(locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
+ if (Cools.isEmpty(wrkDetl.getMemo())) {
+ continue;
+ }
+ LocDetl locDetl = locDetlService.selectItem(locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(),wrkDetl.getBomCode(), wrkDetl.getThreeCode());
if (null != locDetl) {
- if (!locDetlService.updateAnfme(locDetl.getAnfme() + wrkDetl.getAnfme(), locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch())) {
+ if (!locDetlService.updateAnfme(locDetl.getAnfme() + wrkDetl.getAnfme(), locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(),wrkDetl.getBomCode(), wrkDetl.getThreeCode())) {
exceptionHandle("骞舵澘鍏ュ簱 ===>> 淇敼搴撳瓨鏄庣粏鏁伴噺澶辫触锛沎workNo={0}],[matnr={1}]", wrkMast.getWrkNo(), wrkDetl.getMatnr());
}
} else {
@@ -251,14 +261,18 @@
}
// 鏇存柊璁㈠崟瀹屾垚鏁伴噺
- OrderDetl orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
+ OrderDetl orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBomCode(), wrkDetl.getThreeCode());
if (orderDetl == null) {
- orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
+ orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBomCode(), wrkDetl.getThreeCode());
}
try {
if(!Cools.isEmpty(orderDetl)){
- if (!orderDetlService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(),
- orderDetl.getBatch(), wrkDetl.getAnfme())) {
+ if (!orderDetlService.increaseQtyByOrderNo(wrkDetl.getOrderNo(),
+ wrkDetl.getMatnr(),
+ orderDetl.getBatch(),
+ wrkDetl.getAnfme(),
+ wrkDetl.getBomCode(),
+ wrkDetl.getThreeCode())) {
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return FAIL.setMsg("骞舵澘鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
}
@@ -386,13 +400,25 @@
}
for (WrkDetl w: wrkDetls101) {
- //鏇存敼璁㈠崟鏁伴噺
-// OrderDetl orderDetl=orderDetlService.selectItem(w.getOrderNo(),w.getMatnr(),w.getBatch());
-// orderDetl.setQty(orderDetl.getQty()+w.getAnfme());
-// if(!orderDetlService.updateById(orderDetl)){
-// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
-// return FAIL.setMsg("鍏ㄦ澘鍑哄簱 ===>> 淇敼璁㈠崟鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]");
-// }
+ if (!Cools.isEmpty(w.getOrderNo())) {
+ //鏇存敼璁㈠崟鏁伴噺
+// OrderDetl orderDetl=orderDetlService.selectItem(w.getOrderNo(),w.getMatnr(),w.getBatch());
+ List<OrderDetl> orderDetls = orderDetlService.selectList(new EntityWrapper<OrderDetl>()
+ .eq("order_no", w.getOrderNo())
+ .eq("matnr", w.getMatnr())
+ .eq(!Cools.isEmpty(w.getBatch()),"batch", w.getBatch())
+ );
+ if (Cools.isEmpty(orderDetls) || orderDetls.size() != 1) {
+ log.error("鍏ㄦ澘鍑哄簱鏇存柊璁㈠崟淇℃伅锛屾煡鎵惧埌璁㈠崟鏄庣粏涓虹┖鎴栦笉涓�1锛氳鍗�:"+w.getOrderNo()+",鐗╂枡:"+w.getMatnr()+",鎵规:"+w.getBatch());
+ continue;
+ }
+ OrderDetl orderDetl = orderDetls.get(0);
+ orderDetl.setQty(orderDetl.getQty()+w.getAnfme());
+ if(!orderDetlService.updateById(orderDetl)){
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+ return FAIL.setMsg("鍏ㄦ澘鍑哄簱 ===>> 淇敼璁㈠崟鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]");
+ }
+ }
}
// 鍒犻櫎宸ヤ綔妗f簮搴撲綅鐨勫簱瀛樻槑缁�
--
Gitblit v1.9.1