From 9268cd77b4e864b901a8b0bf965f441f2e8c4fbd Mon Sep 17 00:00:00 2001
From: dubin <bindu_bean@163.com>
Date: 星期日, 04 一月 2026 08:06:14 +0800
Subject: [PATCH] #1
---
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | 114 +++++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 95 insertions(+), 19 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 f5fb2df..09452fd 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -35,6 +35,10 @@
private WaitPakinService waitPakinService;
@Autowired
private OrderDetlService orderDetlService;
+ @Autowired
+ private WrkMastLogService wrkMastLogService;
+ @Autowired
+ private WrkDetlLogService wrkDetlLogService;
public ReturnT<String> start(WrkMast wrkMast) {
// 4.鍏ュ簱瀹屾垚
@@ -116,10 +120,13 @@
// 鏇存柊璁㈠崟瀹屾垚鏁伴噺
OrderDetl orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
+ if(orderDetl==null){
+ orderDetl=orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null);
+ }
try {
if(!Cools.isEmpty(orderDetl)){
if(!orderDetlService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(),
- wrkDetl.getBatch(),wrkDetl.getAnfme())){
+ orderDetl.getBatch(),wrkDetl.getAnfme())){
// exceptionHandle("鍏ㄦ澘鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]",
// wrkMast.getWrkNo(), wrkMast.getLocNo());
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
@@ -132,7 +139,7 @@
// 淇敼搴撲綅鐘舵�� S ====>> F
if (locMast.getLocSts().equals("S")) {
locMast.setLocSts("F");
- locMast.setBarcode(wrkMast.getBarcode());
+// locMast.setBarcode(wrkMast.getBarcode());
locMast.setIoTime(now);
locMast.setModiTime(now);
if (!locMastService.updateById(locMast)) {
@@ -153,9 +160,18 @@
}
for (WrkDetl wrkDetl : wrkDetls53) {
- LocDetl locDetl = locDetlService.selectItem(locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
- if (null != locDetl) {
- if (!locDetlService.updateAnfme(locDetl.getAnfme() - wrkDetl.getAnfme(), locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch())) {
+ LocDetl locDetl1 = locDetlService.selectItem(locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
+// LocDetl locDetl = new LocDetl();
+// locDetl.sync(wrkDetl);
+// locDetl.setAnfme(wrkDetl.getPrice()-wrkDetl.getAnfme());//鏁伴噺
+// locDetl.setLocNo(wrkMast.getLocNo()); // 搴撲綅鍙�
+// locDetl.setZpallet(wrkDetl.getZpallet()); // 鎵樼洏鏉$爜
+// locDetl.setModiTime(now);
+// locDetl.setAppeTime(now);
+// locDetl.setPrice(0.0);
+ if (null != locDetl1) {
+// if (!locDetlService.insert(locDetl)) {
+ if (!locDetlService.updateAnfme(locDetl1.getAnfme() - wrkDetl.getAnfme(), locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch())) {
// exceptionHandle("鎷f枡鍏ュ簱 ===>> 淇敼搴撳瓨鏄庣粏鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return FAIL.setMsg("鎷f枡鍏ュ簱 ===>> 淇敼搴撳瓨鏄庣粏鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
@@ -164,10 +180,13 @@
// 鏇存柊璁㈠崟瀹屾垚鏁伴噺
OrderDetl orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
+ if(orderDetl==null){
+ orderDetl=orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null);
+ }
try {
if(!Cools.isEmpty(orderDetl)){
if(!orderDetlService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(),
- wrkDetl.getBatch(),wrkDetl.getAnfme())){
+ orderDetl.getBatch(),wrkDetl.getAnfme())){
// exceptionHandle("鎷f枡鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]",
// wrkMast.getWrkNo(), wrkMast.getLocNo());
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
@@ -180,7 +199,7 @@
// 淇敼搴撲綅鐘舵�� Q ====>> F
if (locMast.getLocSts().equals("Q")) {
locMast.setLocSts("F");
- locMast.setBarcode(wrkMast.getBarcode());
+// locMast.setBarcode(wrkMast.getBarcode());
locMast.setIoTime(now);
locMast.setModiTime(now);
if (!locMastService.updateById(locMast)) {
@@ -214,7 +233,7 @@
locDetl.sync(wrkDetl);
locDetl.setLocNo(wrkMast.getLocNo()); // 搴撲綅鍙�
locDetl.setAnfme(wrkDetl.getAnfme()); // 鏁伴噺
- locDetl.setZpallet(wrkDetl.getZpallet()); // 鎵樼洏鏉$爜
+// locDetl.setZpallet(wrkDetl.getZpallet()); // 鎵樼洏鏉$爜
locDetl.setModiTime(now);
locDetl.setAppeTime(now);
if (!locDetlService.insert(locDetl)) {
@@ -227,7 +246,7 @@
// 淇敼搴撲綅鐘舵�� Q ====>> F
if (locMast.getLocSts().equals("Q")) {
locMast.setLocSts("F");
- locMast.setBarcode(wrkMast.getBarcode());
+// locMast.setBarcode(wrkMast.getBarcode());
locMast.setIoTime(now);
locMast.setModiTime(now);
if (!locMastService.updateById(locMast)) {
@@ -246,10 +265,29 @@
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return FAIL.setMsg("鐩樼偣鍏ュ簱 ===>> 宸ヤ綔鏄庣粏妗d负绌�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
}
- // 淇敼搴撲綅鐘舵�� Q ====>> F
+// for (WrkDetl wrkDetl:wrkDetls57){
+// LocDetl locDetl1 = locDetlService.selectItem(locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
+// LocDetl locDetl = new LocDetl();
+// locDetl.sync(wrkDetl);
+// locDetl.setAnfme(wrkDetl.getAnfme());//鏁伴噺
+// locDetl.setLocNo(wrkMast.getLocNo()); // 搴撲綅鍙�
+// locDetl.setZpallet(wrkDetl.getZpallet()); // 鎵樼洏鏉$爜
+// locDetl.setModiTime(now);
+// locDetl.setAppeTime(now);
+// locDetl.setPrice(0.0);
+// if (null != locDetl1) {
+// if (!locDetlService.insert(locDetl)) {
+// if (!locDetlService.updateAnfme(locDetl1.getAnfme() - wrkDetl.getAnfme(), locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch())) {
+// exceptionHandle("鎷f枡鍏ュ簱 ===>> 淇敼搴撳瓨鏄庣粏鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
+// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+// return FAIL.setMsg("鐩樼偣鍏ュ簱 ===>> 淇敼搴撳瓨鏄庣粏鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
+// }
+// }
+// }
+ // 淇敼搴撲綅鐘舵�� S ====>> F
if (locMast.getLocSts().equals("Q")) {
- locMast.setLocSts(wrkMast.getFullPlt().equals("Y")?"F":"D");
- locMast.setBarcode(wrkMast.getBarcode());
+ locMast.setLocSts("F");
+// locMast.setBarcode(wrkMast.getBarcode());
locMast.setIoTime(now);
locMast.setModiTime(now);
if (!locMastService.updateById(locMast)) {
@@ -276,7 +314,7 @@
// 淇敼婧愬簱浣嶇姸鎬� ==> O
LocMast sourceLoc = locMastService.selectById(wrkMast.getSourceLocNo());
if (null != sourceLoc) {
- sourceLoc.setBarcode("");
+// sourceLoc.setBarcode("");
sourceLoc.setLocSts("O");
sourceLoc.setModiTime(now);
sourceLoc.setIoTime(now);
@@ -288,7 +326,7 @@
}
// 淇敼鐩爣搴撲綅鐘舵�� ==> .locSts
locMast.setLocSts(locSts);
- locMast.setBarcode(wrkMast.getBarcode());
+// locMast.setBarcode(wrkMast.getBarcode());
locMast.setIoTime(now);
locMast.setModiTime(now);
if (!locMastService.updateById(locMast)) {
@@ -344,10 +382,13 @@
for (WrkDetl wrkDetl : wrkDetls101) {
// 鏇存柊璁㈠崟瀹屾垚鏁伴噺
OrderDetl orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
+ if(orderDetl==null){
+ orderDetl=orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null);
+ }
try {
if(!Cools.isEmpty(orderDetl)){
if(!orderDetlService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(),
- wrkDetl.getBatch(),wrkDetl.getAnfme())){
+ orderDetl.getBatch(),wrkDetl.getAnfme())){
// exceptionHandle("鍏ㄦ澘鍑哄簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]",
// wrkMast.getWrkNo(), wrkMast.getLocNo());
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
@@ -365,7 +406,7 @@
// 淇敼婧愬簱浣嶇姸鎬� R ===>> O
if (locMast.getLocSts().equals("R")) {
locMast.setLocSts("O");
- locMast.setBarcode("");
+// locMast.setBarcode("");
locMast.setModiTime(now);
locMast.setIoTime(now);
if (!locMastService.updateById(locMast)) {
@@ -373,6 +414,8 @@
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return FAIL.setMsg("鍏ㄦ澘鍑哄簱 ===>> 淇敼婧愬簱浣嶇姸鎬佸け璐�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]");
}
+ // 淇敼宸ヤ綔涓绘。鐘舵��
+ wrkMast.setWrkSts(15L);
}
break;
// 绌烘澘鍑哄簱
@@ -380,7 +423,7 @@
// 淇敼搴撲綅鐘舵�� R ===>> O
if (locMast.getLocSts().equals("R")) {
locMast.setLocSts("O");
- locMast.setBarcode("");
+// locMast.setBarcode("");
locMast.setModiTime(now);
locMast.setIoTime(now);
if (!locMastService.updateById(locMast)) {
@@ -388,13 +431,46 @@
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return FAIL.setMsg("绌烘澘鍑哄簱 ===>> 淇敼婧愬簱浣嶇姸鎬佸け璐�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]");
}
+ // 淇敼宸ヤ綔涓绘。鐘舵��
+ wrkMast.setWrkSts(15L);
}
+ break;
+ //鎷f枡鍜岀洏鐐瑰嚭搴�
+ case 103:
+ case 107:
+// if (locMast.getLocSts().equals("P")) {
+// locMast.setLocSts("O");
+// locMast.setBarcode("");
+// locMast.setModiTime(now);
+// locMast.setIoTime(now);
+// if (!locMastService.updateById(locMast)) {
+//// exceptionHandle("绌烘澘鍑哄簱 ===>> 淇敼婧愬簱浣嶇姸鎬佸け璐ワ紱[workNo={0}],[sourceLocNo={1}]", wrkMast.getWrkNo(), wrkMast.getSourceLocNo());
+// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+// return FAIL.setMsg("鎷f枡鍜岀洏鐐瑰嚭搴� ===>> 淇敼婧愬簱浣嶇姸鎬佸け璐�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]");
+// }
+// wrkMast.setWrkSts(14L);//绛夊緟鍏ュ簱
+// // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
+// if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
+// exceptionHandle("淇濆瓨宸ヤ綔鍘嗗彶妗workNo={0}]澶辫触", wrkMast.getWrkNo());
+// }
+// if(!wrkMast.getEmptyMk().equals("Y")) {
+// // 淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。
+// if (!wrkDetlLogService.save(wrkMast.getWrkNo())) {
+// exceptionHandle("淇濆瓨宸ヤ綔鏄庣粏鍘嗗彶妗workNo={0}]澶辫触", wrkMast.getWrkNo());
+// }
+// }
+// // 鍒犻櫎宸ヤ綔妗f簮搴撲綅鐨勫簱瀛樻槑缁�
+// if (!locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getSourceLocNo()))) {
+//// exceptionHandle("鍏ㄦ澘鍑哄簱 ===>> 鍒犻櫎搴撳瓨鏄庣粏澶辫触锛沎workNo={0}],[sourceLocNo={1}]", wrkMast.getWrkNo(), wrkMast.getSourceLocNo());
+// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+// return FAIL.setMsg("鎷f枡鐩樼偣鍑哄簱 ===>> 鍒犻櫎搴撳瓨鏄庣粏澶辫触; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]");
+// }
+// }
break;
default:
break;
}
- // 淇敼宸ヤ綔涓绘。鐘舵��
- wrkMast.setWrkSts(15L);
+
wrkMast.setModiTime(now);
if (!wrkMastService.updateById(wrkMast)) {
// exceptionHandle("鏇存柊鍑哄簱瀹屾垚鐘舵�佸け璐�;[workNo={0}]", wrkMast.getWrkNo());
--
Gitblit v1.9.1