From aa2d520a06c371e76ef26c78d426a01fca76a2fc Mon Sep 17 00:00:00 2001
From: zhangc <zc@123>
Date: 星期五, 07 二月 2025 14:56:35 +0800
Subject: [PATCH] 1
---
src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java | 109 ++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 104 insertions(+), 5 deletions(-)
diff --git a/src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java b/src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java
index e9a090e..eb4747e 100644
--- a/src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java
@@ -93,6 +93,7 @@
mast.setAppeTime(now);
mast.setModiUser(9527L);
mast.setModiTime(now);
+ mast.setLogErrMemo("doAutoMove");
if (!agvWrkMastService.insertByIncrease(mast)) {
throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
}
@@ -190,14 +191,20 @@
//妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅
AgvLocMast locMast = agvCommonService.getLocNo(3,agvWrkMast.getCrnNo(),false,true);
if (Cools.isEmpty(locMast)) {
- throw new CoolException("鏆傛棤搴撲綅");
+ log.info("鏆傛棤搴撲綅");
+ return FAIL;
+ //throw new CoolException("鏆傛棤搴撲綅");
}
AgvWrkMast workingMast = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("loc_no", locMast.getLocNo()));
if (!Cools.isEmpty(workingMast)) {
- throw new CoolException("褰撳墠搴撲綅姝e湪杩涜鍏ュ簱锛岃繘琛屼笅涓�娆¤疆璇�");
+ log.info("褰撳墠搴撲綅姝e湪杩涜鍏ュ簱锛岃繘琛屼笅涓�娆¤疆璇�");
+ return FAIL;
+ //throw new CoolException("褰撳墠搴撲綅姝e湪杩涜鍏ュ簱锛岃繘琛屼笅涓�娆¤疆璇�");
}
agvWrkMast.setWrkSts(201L);
+ agvWrkMast.setModiTime(new Date());
agvWrkMast.setLocNo(locMast.getLocNo());
+ agvWrkMast.setLogErrMemo("start2-doAutoMove2");
agvWrkMastService.updateById(agvWrkMast);
//鏇存柊鐩爣搴撲綅鐘舵��
updateAgvLocMast(locMast,"S");
@@ -212,10 +219,14 @@
//妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅
AgvLocMast locMast = agvCommonService.getLocNo(3,agvWrkMast.getCrnNo(),false,false);
if (Cools.isEmpty(locMast)) {
- throw new CoolException("鏆傛棤搴撲綅");
+ log.info("鏆傛棤搴撲綅");
+ return FAIL;
+ //throw new CoolException("鏆傛棤搴撲綅");
}
agvWrkMast.setWrkSts(201L);
agvWrkMast.setLocNo(locMast.getLocNo());
+ agvWrkMast.setLogErrMemo("start2-doAutoMove2");
+ agvWrkMast.setModiTime(new Date());
agvWrkMastService.updateById(agvWrkMast);
//鏇存柊鐩爣搴撲綅鐘舵��
updateAgvLocMast(locMast,"S");
@@ -234,11 +245,16 @@
}
if (Cools.isEmpty(devpNo)) {
- throw new CoolException("鏆傛棤绌洪棽鎺ラ┏浣�");
+ log.info("鏆傛棤绌洪棽鎺ラ┏浣�");
+ return FAIL;
+ //throw new CoolException("鏆傛棤绌洪棽鎺ラ┏浣�");
}
agvWrkMast.setWrkSts(201L);
agvWrkMast.setLocNo(devpNo.getDevNo());
+ agvWrkMast.setModiTime(new Date());
+ agvWrkMast.setLogErrMemo("start3-doHandMove2");
agvWrkMastService.updateById(agvWrkMast);
+ agvWrkMast.setModiTime(new Date());
updateAgvBasDevp(devpNo,"S",null,agvWrkMast.getBarcode());
return SUCCESS;
}
@@ -297,6 +313,7 @@
mast.setAppeTime(now);
mast.setModiUser(9527L);
mast.setModiTime(now);
+ mast.setLogErrMemo("autoEmptyBack");
if (!agvWrkMastService.insertByIncrease(mast)) {
throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
}
@@ -306,6 +323,7 @@
updateAgvBasDevp(devpNo,"S",agvLocMast.getLocType2(),agvLocMast.getBarcode());
return SUCCESS;
}
+
public ReturnT<String> autoEmptyBack3(AgvWrkMast agvWrkMast) {
Date now = new Date();
AgvBasDevp agvBasDevp = agvBasDevpService.selectByDevNo(agvWrkMast.getSourceLocNo());
@@ -319,6 +337,7 @@
agvWrkMast.setLocNo(locMast.getLocNo());
agvWrkMast.setModiUser(9527L);
agvWrkMast.setModiTime(now);
+ agvWrkMast.setLogErrMemo("autoEmptyBack3");
if (!agvWrkMastService.updateById(agvWrkMast)) {
throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
}
@@ -327,6 +346,7 @@
updateAgvBasDevp(agvBasDevp,"R");
return SUCCESS;
}
+
public ReturnT<String> autoEmptyBack2(AgvLocMast agvLocMast) {
Date now = new Date();
//鏌ヨ宸ヤ綔妗�
@@ -358,6 +378,7 @@
mast.setAppeTime(now);
mast.setModiUser(9527L);
mast.setModiTime(now);
+ mast.setLogErrMemo("autoEmptyBack2");
if (!agvWrkMastService.insertByIncrease(mast)) {
throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
}
@@ -387,7 +408,9 @@
}
List<AgvWrkMast> agvWrkMasts = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>().eq("io_type", 109).like("source_loc_no", floor).or().eq("io_type", 113));
if (agvWrkMasts.size() >= 5) {
- throw new CoolException("鏆傚仠鍥炴祦");
+ //log.error("鏆傚仠鍥炴祦");
+ return FAIL;
+ //throw new CoolException("鏆傚仠鍥炴祦");
}
//妫�绱㈢┖闂插彲鍏ユ帴椹充綅 娌℃湁绌洪棽鍙叆鎺ラ┏浣� 鐩存帴鎵惧簱浣�
AgvBasDevp devpNo = agvCommonService.getDevpNo(3, agvLocMast.getFloor(),"Y","Y");
@@ -425,6 +448,7 @@
mast.setAppeTime(now);
mast.setModiUser(9527L);
mast.setModiTime(now);
+ mast.setLogErrMemo("autoEmptyBack4");
if (!agvWrkMastService.insertByIncrease(mast)) {
throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
}
@@ -463,6 +487,7 @@
mast.setAppeTime(now);
mast.setModiUser(9527L);
mast.setModiTime(now);
+ mast.setLogErrMemo("autoEmptyBack5");
// 鍒ゆ柇 鎺ラ┏鐐规槸鍚﹁嚜鍔�
if ("Y".equals(agvBasDevp.getAutoing())) {
//宸ヤ綔鐘舵��
@@ -519,6 +544,7 @@
mast.setAppeTime(now);
mast.setModiUser(9527L);
mast.setModiTime(now);
+ mast.setLogErrMemo("autoEmptyBack6");
if (!agvWrkMastService.insertByIncrease(mast)) {
throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
}
@@ -528,4 +554,77 @@
return SUCCESS;
}
+
+ public ReturnT<String> autoTransfers(AgvLocMast agvLocMast,Integer maxTansk) {
+ Date now = new Date();
+ List<AgvLocDetl> locDetls = agvLocDetlService.selectList(new EntityWrapper<AgvLocDetl>().eq("loc_no", agvLocMast.getLocNo()));
+ locDetls.forEach(agvLocDetl -> {
+ if (agvLocDetl.getProcessSts().equals(1)) {
+ throw new CoolException("褰撳墠搴撲綅鏈夊簱瀛樻湭鍔犲伐");
+ }
+ });
+ //鏌ヨ宸ヤ綔妗�
+ AgvWrkMast agvWrkMast = agvWrkMastService.selectByContainerCode(agvLocMast.getBarcode());
+ if(!Cools.isEmpty(agvWrkMast)){
+ throw new CoolException("褰撳墠"+agvLocMast.getBarcode()+"璐ф灦鐮佸凡鍦ㄥ伐浣滄。涓�");
+ }
+ //妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅
+ AgvLocMast LocMast = agvCommonService.getLocNo(3,1,false,false);
+ if (LocMast.getLev1() != 2) {
+ throw new CoolException("鐩爣妤煎眰涓嶆槸鍚稿浜屾ゼ");
+ }
+ List<AgvWrkMast> agvWrkMasts = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>().like("loc_no", "02F1").like("source_loc_no", "F1").eq("io_type", 12));
+ if (agvWrkMasts.size() >= maxTansk) {
+ throw new CoolException("鑷姩绉诲簱浠诲姟宸插埌璁惧畾鏈�澶у�硷細" + maxTansk);
+ }
+ //鐢熸垚宸ヤ綔妗�
+ AgvWrkMast mast = new AgvWrkMast();
+ //宸ヤ綔鐘舵��
+ mast.setWrkSts(201L);
+ //鍏ュ嚭搴撶被鍨�
+ mast.setIoType(12);
+ mast.setIoTime(now);
+ //浼樺厛绾�
+ mast.setIoPri(300.0);
+ //婧愮珯鐐�
+ mast.setSourceLocNo(agvLocMast.getLocNo());
+ //鐩爣绔欑偣
+ mast.setLocNo(LocMast.getLocNo());
+ //璐ф灦缂栫爜
+ mast.setBarcode(agvLocMast.getBarcode());
+ //璐ф灦绫诲瀷
+ mast.setWhsType(30);
+
+ mast.setAppeUser(9527L);
+ mast.setAppeTime(now);
+ mast.setModiUser(9527L);
+ mast.setModiTime(now);
+ mast.setLogErrMemo("doAutoMove");
+ if (!agvWrkMastService.insertByIncrease(mast)) {
+ throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
+ }
+
+ AgvWrkMast mast1 = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("loc_no", LocMast.getLocNo()).eq("source_loc_no",agvLocMast.getLocNo()));
+ //鐢熸垚宸ヤ綔妗f槑缁�
+ List<AgvLocDetl> agvLocDetls = agvLocDetlService.selectList(new EntityWrapper<AgvLocDetl>().eq("loc_no", agvLocMast.getLocNo()));
+ agvLocDetls.forEach(agvLocDetl -> {
+ AgvWrkDetl wrkDetl = new AgvWrkDetl();
+ wrkDetl.setWrkNo(mast1.getWrkNo());
+ wrkDetl.sync(agvLocDetl);
+ wrkDetl.setSuppCode(agvLocDetl.getSuppCode());
+ wrkDetl.setIoTime(now);
+ wrkDetl.setAppeUser(9527L);
+ wrkDetl.setAppeTime(now);
+ wrkDetl.setModiUser(9527L);
+ wrkDetl.setModiTime(now);
+ if (!agvWrkDetlService.insert(wrkDetl)) {
+ throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触");
+ }
+ });
+ //鏇存柊鐩爣搴撲綅鐘舵��
+ updateAgvLocMast(agvLocMast,"R");
+ updateAgvLocMast(LocMast,"S");
+
+ return SUCCESS;
+ }
}
--
Gitblit v1.9.1