From 3ad65283c54059e0c61110589fb19398ac3525fe Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期二, 08 七月 2025 08:32:32 +0800
Subject: [PATCH] 完善拣料转全板
---
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | 56 ++++++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 48 insertions(+), 8 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 fb369ff..ea77a6a 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -9,6 +9,8 @@
import com.zy.asrs.service.*;
import com.zy.asrs.task.AbstractHandler;
import com.zy.asrs.task.core.ReturnT;
+import com.zy.system.entity.Config;
+import com.zy.system.service.ConfigService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -36,6 +38,8 @@
private LocDetlService locDetlService;
@Autowired
private WaitPakinService waitPakinService;
+ @Autowired
+ private ConfigService configService;
public ReturnT<String> start(WrkMast wrkMast) {
// 9.鍏ュ簱瀹屾垚
@@ -51,6 +55,9 @@
private ReturnT<String> doIn(WrkMast wrkMast){
Date now = new Date();
LocMast locMast = locMastService.selectById(wrkMast.getLocNo());
+
+ //鍒ゆ柇浠诲姟鏄惁鏈夎鍗曞彿
+ Boolean boo=false;
try {
if (null == locMast) {
exceptionHandle("宸ヤ綔妗workNo={0}]搴撲綅鍙烽敊璇痆locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
@@ -84,9 +91,14 @@
if (wrkDetls.isEmpty()) {
exceptionHandle("鍏ㄦ澘鍏ュ簱 ===>> 宸ヤ綔鏄庣粏妗d笉瀛樺湪锛沎workNo={0}]", wrkMast.getWrkNo());
}
+ //鍒ゆ柇鏄惁鏈夎鍗曞彿
+ if(!Cools.isEmpty(wrkDetls.get(0).getOrderNo())){
+ boo=true;
+ }
// 閬嶅巻宸ヤ綔鏄庣粏锛屾洿鏂板簱瀛樻槑缁嗗拰鍏ュ簱閫氱煡妗�
for (WrkDetl wrkDetl : wrkDetls) {
+ wrkDetl.setBatch("");
LocDetl locDetl = locDetlService.selectItem(locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
if (null != locDetl) {
if (!locDetlService.updateAnfme(wrkDetl.getAnfme(), wrkMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch())) {
@@ -143,11 +155,17 @@
if (wrkDetls53.isEmpty()) {
exceptionHandle("鎷f枡鍏ュ簱 ===>> 宸ヤ綔鏄庣粏妗d负绌猴紱[workNo={0}]", wrkMast.getWrkNo());
}
+
+ //鍒ゆ柇鏄惁鏈夎鍗曞彿
+ if(!Cools.isEmpty(wrkDetls53.get(0).getOrderNo())){
+ boo=true;
+ }
+
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())) {
+ if (!locDetlService.updateAnfme(locDetl.getAnfme() - wrkDetl.getAnfme(), locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getManu(),wrkDetl.getMemo())) {
exceptionHandle("鎷f枡鍏ュ簱 ===>> 淇敼搴撳瓨鏄庣粏鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
}
}
@@ -238,13 +256,13 @@
}
}
break;
- // 搴撲綅绉昏浆
- case 11:
+ case 11:// 搴撲綅绉昏浆
+ case 111:// 搴撲綅绉昏浆(楂橀鍖哄煙)
// 榛樿鐩爣搴撲綅鏄┖鏉�
String locSts = "D";
// 搴撲綅绉昏浆鍒ゆ柇鏄惁涓虹┖鏉跨Щ杞�
if (wrkMast.getEmptyMk().equals("N")) {
- locSts = "R";
+ locSts = "F";
// 杞Щ搴撳瓨鏄庣粏鏁版嵁: 搴撳瓨鍙� 鐢卞伐浣滄。婧愬簱浣嶅彉涓虹洰鏍囧簱浣�
if (!locDetlService.updateLocNo(wrkMast.getLocNo(), wrkMast.getSourceLocNo())) {
exceptionHandle("搴撲綅绉昏浆 ===>> 杞Щ搴撳瓨鏄庣粏鏁版嵁澶辫触锛沎婧愬簱浣�={0}],[鐩爣搴撲綅={1}]", wrkMast.getSourceLocNo(), wrkMast.getLocNo());
@@ -273,8 +291,15 @@
default:
break;
}
- // 淇敼宸ヤ綔涓绘。鐘舵��
- wrkMast.setWrkSts(10L);
+
+ //鏄惁闇�瑕佷笂鎶RP
+ Config config = configService.selectOne(new EntityWrapper<Config>().eq("code", "newErpReport"));
+ if(!Cools.isEmpty(config)&&config.getValue().equals("Y")&&boo){
+ wrkMast.setWrkSts(40L);//浠诲姟鐘舵�佽浆ERP涓婃姤涓�
+ }else{
+ // 淇敼宸ヤ綔涓绘。鐘舵��
+ wrkMast.setWrkSts(10L);
+ }
wrkMast.setModiTime(now);
if (!wrkMastService.updateById(wrkMast)) {
exceptionHandle("鏇存柊鍏ュ簱瀹屾垚鐘舵�佸け璐�;[workNo={0}]", wrkMast.getWrkNo());
@@ -289,8 +314,12 @@
}
private ReturnT<String> doOut(WrkMast wrkMast){
+
Date now = new Date();
LocMast locMast = locMastService.selectById(wrkMast.getSourceLocNo());
+
+ //鍒ゆ柇浠诲姟鏄惁鏈夎鍗曞彿
+ Boolean boo=false;
try {
if (null == locMast) {
exceptionHandle("宸ヤ綔妗workNo={0}]搴撲綅鍙烽敊璇痆locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
@@ -338,6 +367,11 @@
if (wrkDetls101.isEmpty()) {
exceptionHandle("鍏ㄦ澘鍑哄簱 ===>> 宸ヤ綔鏄庣粏妗d负绌猴紱[workNo={0}]", wrkMast.getWrkNo());
}
+ //鍒ゆ柇鏄惁鏈夎鍗曞彿
+ if(!Cools.isEmpty(wrkDetls101.get(0).getOrderNo())){
+ boo=true;
+ }
+
for (WrkDetl wrkDetl : wrkDetls101) {
// todo:luxiaotao 3)淇敼鍑哄簱閫氱煡妗� status ==> Y
}
@@ -375,8 +409,14 @@
break;
}
if(wrkMast.getIoType()!=11) {
- // 淇敼宸ヤ綔涓绘。鐘舵��
- wrkMast.setWrkSts(18L);
+ //鏄惁闇�瑕佷笂鎶RP
+ Config config = configService.selectOne(new EntityWrapper<Config>().eq("code", "newErpReport"));
+ if(!Cools.isEmpty(config)&&config.getValue().equals("Y")&&boo){
+ wrkMast.setWrkSts(40L);//浠诲姟鐘舵�佽浆ERP涓婃姤涓�
+ }else{
+ // 淇敼宸ヤ綔涓绘。鐘舵��
+ wrkMast.setWrkSts(18L);
+ }
wrkMast.setModiTime(now);
if (!wrkMastService.updateById(wrkMast)) {
exceptionHandle("鏇存柊鍑哄簱瀹屾垚鐘舵�佸け璐�;[workNo={0}]", wrkMast.getWrkNo());
--
Gitblit v1.9.1