From 984039880e1f6ccc4cb61c35e0004147aa46d5bc Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期六, 21 九月 2024 11:20:39 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java | 110 ++++++++++++++++++++++++++++++++----------------------
1 files changed, 65 insertions(+), 45 deletions(-)
diff --git a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
index 688fa4f..b895aad 100644
--- a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
@@ -66,6 +66,7 @@
}
+ agvWrkMast.setModiTime(new Date());
//淇敼宸ヤ綔妗g姸鎬佷负207.搴撳瓨鏇存柊瀹屾垚
agvWrkMast.setWrkSts(207L);
agvWrkMastService.updateById(agvWrkMast);
@@ -119,11 +120,30 @@
agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue());
break;
+ case 57:
+ Date now = new Date();
+ // 鏇存柊搴撳瓨鏄庣粏
+ List<AgvWrkDetl> wrkDetlList = agvWrkDetlService.selectList(new EntityWrapper<AgvWrkDetl>().eq("wrk_no", agvWrkMast.getWrkNo()));
+ wrkDetlList.forEach(agvWrkDetl -> {
+ AgvLocDetl agvLocDetl = new AgvLocDetl();
+ agvLocDetl.setLocNo(agvWrkMast.getLocNo());
+ agvLocDetl.sync(agvWrkDetl);
+ agvLocDetl.setModiTime(now);
+ agvLocDetl.setAppeTime(now);
+ if (!agvLocDetlService.insert(agvLocDetl)) {
+ throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触");
+ }
+ });
+ // 鏇存柊绔欑偣 + 搴撲綅鐘舵�� 婧愬簱浣嶆槸绔欑偣
+ agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue());
+ agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
+ break;
case 58:
agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue());
break;
case 108:
+ case 114:
agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
//鏇存柊搴撳瓨鏄庣粏
agvLocDetlService.updateStock(agvWrkMast.getSourceLocNo(),agvWrkMast.getLocNo());
@@ -163,48 +183,23 @@
} else {
//淇敼婧愬簱浣嶇姸鎬佷负O
agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue(),"",(short)0);
+ //鏇存柊鐩爣搴撲綅鏄庣粏 101.鍑哄簱 鍒犻櫎婧愬簱浣嶅簱瀛樻槑缁�
+ agvLocDetlService.delete(new EntityWrapper<AgvLocDetl>().eq("loc_no",agvWrkMast.getSourceLocNo()));
}
- break;
- case 113:
- agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"D",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
- // 鎺ラ┏浣� -- 搴撲綅
- if (agvWrkMast.getSourceLocNo().substring(0,2).equals("DB")) {
- agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",(short)0);
- }
- break;
- case 1:
- agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
- //鏇存柊鐩爣搴撲綅鏄庣粏
- log.info("鏇存柊鐩爣搴撲綅鏄庣粏 agvWrkMast.getLocNo(): " + agvWrkMast.getLocNo() + ", wrkNo: " + wrkNo);
- agvLocDetlService.addLocDetlInfo(agvWrkMast.getLocNo(),wrkNo);
- //鐢熸垚鍏ュ簱閫氱煡鍘嗗彶妗�
- boolean save = agvWaitPakinLogService.save(barcode);
- //鍒犻櫎鍏ュ簱閫氱煡妗�
- log.info("鍒犻櫎鍏ュ簱閫氱煡妗� supp_code: " + barcode);
- agvWaitPakinService.delete(new EntityWrapper<AgvWaitPakin>().eq("supp_code",barcode));
- break;
- case 11:
- case 12:
- agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
- //鏇存柊搴撳瓨鏄庣粏
- agvLocDetlService.updateStock(agvWrkMast.getSourceLocNo(),agvWrkMast.getLocNo());
- //淇敼婧愬簱浣嶇姸鎬佷负O
- agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",null);
- break;
- case 108:
- case 121:
- agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
- //鏇存柊搴撳瓨鏄庣粏
- agvLocDetlService.updateStock(agvWrkMast.getSourceLocNo(),agvWrkMast.getLocNo());
- //淇敼婧愬簱浣嶇姸鎬佷负O
- agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue(),"",(short)0);
break;
case 112:
agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
+ List<AgvWrkDetl> agvWrkDetls = agvWrkDetlService.selectList(new EntityWrapper<AgvWrkDetl>().eq("wrk_no", agvWrkMast.getWrkNo()));
+ for (AgvWrkDetl agvWrkDetl : agvWrkDetls) {
+ AgvLocDetl locDetl = new AgvLocDetl();
+ locDetl.setLocNo(agvWrkMast.getLocNo());
+ locDetl.sync(agvWrkDetl);
+ locDetl.setModiTime(new Date());
+ agvLocDetlService.insert(locDetl);
+ }
// 鎺ラ┏浣� -- 搴撲綅
if (agvWrkMast.getSourceLocNo().substring(0,2).equals("DB")) {
agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",(short)0);
- agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F","",agvWrkMast.getWhsType().shortValue(),"",(short)0);
// 搴撲綅 -- 鎺ラ┏浣� / 搴撲綅
} else {
//淇敼婧愬簱浣嶇姸鎬佷负O
@@ -218,11 +213,13 @@
agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",(short)0);
}
break;
-
-
-
-
-
+ case 121:
+ agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
+ //鏇存柊搴撳瓨鏄庣粏
+ agvLocDetlService.updateStock(agvWrkMast.getSourceLocNo(),agvWrkMast.getLocNo());
+ //淇敼婧愬簱浣嶇姸鎬佷负O
+ agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue(),"",(short)0);
+ break;
default:
return null;
@@ -233,6 +230,13 @@
//鍒犻櫎AGV宸ヤ綔鏄庣粏妗�
agvWrkDetlService.delete(new EntityWrapper<AgvWrkDetl>().eq("wrk_no",wrkNo));
}
+// else {
+// agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(),"O","",agvWrkMast.getWhsType().shortValue());
+// if (!agvWrkMast.getSourceLocNo().substring(0,2).equals("DB")) {
+// agvWrkMast.setSourceLocNo("");
+// }
+// agvWrkMastService.updateById(agvWrkMast);
+// }
if(!isJSON(orderNo)){
//妫�鏌ヨ鍗曟槸鍚﹀凡瀹屾垚
@@ -256,26 +260,30 @@
@Transactional
public ReturnT<String> completedCarryWrk(AgvWrkMast agvWrkMast) {
try{
+ Date now = new Date();
int wrkNo = agvWrkMast.getWrkNo();
String orderNo = getOrderNoByWrkNo(wrkNo);
//淇敼宸ヤ綔妗g姸鎬佷负207.搴撳瓨鏇存柊瀹屾垚
agvWrkMast.setWrkSts(207L);
+ agvWrkMast.setModiTime(new Date());
agvWrkMastService.updateById(agvWrkMast);
//淇敼婧愬簱浣嶇姸鎬佷负O
- agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",null);
+ if (agvWrkMast.getIoType() == 110) {
+ agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",null);
+ }
if(agvWrkMast.getIoType() == 101){
//鏇存柊鐩爣搴撲綅鏄庣粏 101.鍑哄簱 鍒犻櫎婧愬簱浣嶅簱瀛樻槑缁�
agvLocDetlService.delete(new EntityWrapper<AgvLocDetl>().eq("loc_no",agvWrkMast.getSourceLocNo()));
//鐢熸垚绌烘澘鍏ュ簱浠诲姟
Short containerType = Short.valueOf(agvWrkMast.getBarcode().substring(0, 2));
try {
- //agvWorkService.emptyPlateIn(agvWrkMast.getLocNo(),agvWrkMast.getBarcode(),containerType,9527L,true);
+// agvWorkService.emptyPlateIn(agvWrkMast.getLocNo(),agvWrkMast.getBarcode(),containerType,9527L,true);
AgvWrkMast wrkMast = new AgvWrkMast();
//宸ヤ綔鐘舵��
wrkMast.setWrkSts(201L);
//鍏ュ嚭搴撶被鍨�
wrkMast.setIoType(10);
- wrkMast.setIoTime(new Date());
+ wrkMast.setIoTime(now);
//浼樺厛绾�
wrkMast.setIoPri(300.0);
//婧愮珯鐐�
@@ -288,14 +296,23 @@
wrkMast.setWhsType(Integer.valueOf(agvWrkMast.getBarcode().substring(0, 2)));
wrkMast.setAppeUser(9527L);
- wrkMast.setAppeTime(new Date());
+ wrkMast.setAppeTime(now);
wrkMast.setModiUser(9527L);
- wrkMast.setModiTime(new Date());
+ wrkMast.setModiTime(now);
+ wrkMast.setLogErrMemo("completedCarryWrk");
if (!agvWrkMastService.insertByIncrease(wrkMast)) {
throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
}
+ AgvLocMast agvLocMast = agvLocMastService.selectById(agvWrkMast.getSourceLocNo());
+ agvLocMast.setLocSts("S");
+ agvLocMast.setModiTime(now);
+ agvLocMastService.updateById(agvLocMast);
+ AgvBasDevp agvBasDevp = agvBasDevpService.selectById(agvWrkMast.getLocNo());
+ agvBasDevp.setLocSts("R");
+ agvBasDevp.setLocType2(Short.valueOf(agvWrkMast.getBarcode().substring(0, 2)));
+ agvBasDevpService.updateById(agvBasDevp);
}catch (Exception e){
e.printStackTrace();
log.error(e.getMessage());
@@ -340,6 +357,7 @@
}
//淇敼宸ヤ綔妗g姸鎬佷负207.搴撳瓨鏇存柊瀹屾垚
agvWrkMast.setWrkSts(207L);
+ agvWrkMast.setModiTime(new Date());
agvWrkMastService.updateById(agvWrkMast);
//淇敼婧愬簱浣嶇姸鎬佷负O
agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",null);
@@ -385,6 +403,7 @@
}
agvWrkMast.setWrkSts(202L);
+ agvWrkMast.setModiTime(new Date());
agvWrkMastService.updateById(agvWrkMast);
if(agvWrkMast.getIoType() == 1){
//淇敼AGV鍏ュ簱閫氱煡妗g姸鎬佸叆鍑虹姸鎬佷负Y
@@ -450,6 +469,7 @@
Map<String, Object> devNoMap = devNoMaps.get(0);
if((int)devNoMap.get("num") < maxWrokNum){
agvWrkMast.setLocNo(devNoMap.get("dev_no").toString());
+ agvWrkMast.setModiTime(new Date());
agvWrkMastService.updateById(agvWrkMast);
log.info("after锛�" + devNoMap.toString() + ", wrkNo:" + agvWrkMast.getWrkNo() + ", locNo: " + agvWrkMast.getLocNo());
}
--
Gitblit v1.9.1