From d2b0cd7ae27bb7ea24549d6930a53cbb27c6e44a Mon Sep 17 00:00:00 2001
From: skyouc <958836976@qq.com>
Date: 星期日, 08 三月 2026 19:55:34 +0800
Subject: [PATCH] no message
---
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | 156 +++++++++++++++++++++++++++++++++++-----------------
1 files changed, 105 insertions(+), 51 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 43f85c0..5a7dd25 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -7,6 +7,7 @@
import com.zy.asrs.enums.LocAreaType;
import com.zy.asrs.enums.LocStsType;
import com.zy.asrs.enums.TaskIOType;
+import com.zy.asrs.enums.TaskStatusType;
import com.zy.asrs.service.*;
import com.zy.asrs.service.impl.*;
import com.zy.asrs.task.AbstractHandler;
@@ -87,8 +88,6 @@
locMast.setAreaName(basAreas.getName());
try {
if (null == locMast) {
- // exceptionHandle("宸ヤ綔妗workNo={0}]搴撲綅鍙烽敊璇痆locNo={1}]", wrkMast.getWrkNo(),
- // wrkMast.getLocNo());
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return FAIL.setMsg("宸ヤ綔妗workNo=" + wrkMast.getWrkNo() + "]搴撲綅鍙烽敊璇痆locNo=" + wrkMast.getLocNo() + "]");
}
@@ -103,10 +102,9 @@
}
locMast.setLocSts("D");
locMast.setIoTime(now);
+ locMast.setBarcode(wrkMast.getBarcode());
locMast.setModiTime(now);
if (!locMastService.updateById(locMast)) {
- // exceptionHandle("绌烘澘鍏ュ簱 ===>> 淇敼搴撲綅鐘舵�佸け璐�;[workNo={0}],[locNo={1}]",
- // wrkMast.getWrkNo(), wrkMast.getLocNo());
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return FAIL.setMsg("绌烘澘鍏ュ簱 ===>> 淇敼搴撲綅鐘舵�佸け璐�; [workNo=" + wrkMast.getWrkNo() + "],[locNo="
+ wrkMast.getLocNo() + "]");
@@ -194,8 +192,8 @@
}
}
} catch (Exception ignore) {
+
}
-
}
// 淇敼搴撲綅鐘舵�� S ====>> F
if (locMast.getLocSts().equals("S")) {
@@ -280,7 +278,6 @@
+ wrkMast.getLocNo() + "]");
}
for (WrkDetl wrkDetl : wrkDetls53) {
-
LocDetl locDetl = locDetlService.selectItem(locMast.getLocNo(), wrkDetl.getMatnr(),
wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(),
wrkDetl.getStandby3(), wrkDetl.getBoxType1(), wrkDetl.getBoxType2(),
@@ -325,8 +322,8 @@
}
}
} catch (Exception ignore) {
- }
+ }
}
// 淇敼搴撲綅鐘舵�� Q ====>> F
if (locMast.getLocSts().equals("Q")) {
@@ -391,7 +388,7 @@
// 鏇存柊璁㈠崟瀹屾垚鏁伴噺
OrderDetlPakin orderDetlPakin = orderDetlPakinService.selectItem(wrkDetl.getOrderNo(),
wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(),
- wrkDetl.getStandby2(), wrkDetl.getStandby3(), wrkDetl.getBoxType1(),
+ wrkDetl.getStandby2(), wrkDetl.getStandby3(), "1",
wrkDetl.getBoxType2(), wrkDetl.getBoxType3());
try {
if (!Cools.isEmpty(orderDetlPakin)) {
@@ -399,7 +396,7 @@
wrkDetl.getMatnr(),
orderDetlPakin.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(),
wrkDetl.getStandby2(), wrkDetl.getStandby3(),
- wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3(),
+ "1", wrkDetl.getBoxType2(), wrkDetl.getBoxType3(),
wrkDetl.getAnfme())) {
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return FAIL.setMsg("骞舵澘鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo()
@@ -409,7 +406,6 @@
} catch (Exception ignore) {
}
-
}
// 淇敼搴撲綅鐘舵�� Q ====>> F
if (locMast.getLocSts().equals("Q")) {
@@ -427,10 +423,9 @@
}
String agvSta = null;
- if (wrkMast.getIoType() == TaskIOType.MERGE_OUT.type) {
+ if (wrkMast.getIoType() == TaskIOType.MERGE_IN.type) {
agvSta = wrkMast.getPauseMk();
}
-
// . 鍒犻櫎缂撳瓨绔欑偣鏄庣粏
if (!Objects.isNull(agvSta)) {
// 淇敼鐩爣绔欑偣淇℃伅
@@ -444,9 +439,6 @@
throw new CoolException("绔欑偣鐘舵�佹洿鏂板け璐ワ紒锛�");
}
}
-
-
-
break;
// 鐩樼偣鍏ュ簱
case 57:
@@ -637,6 +629,46 @@
}
}
break;
+ case 103:
+// List<WrkDetl> wrkDetls103 = wrkDetlService
+// .selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()));
+// if (wrkDetls103.isEmpty()) {
+// // exceptionHandle("鍏ㄦ澘鍑哄簱 ===>> 宸ヤ綔鏄庣粏妗d负绌猴紱[workNo={0}]", wrkMast.getWrkNo());
+// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+// return FAIL.setMsg("鍏ㄦ澘鍑哄簱 ===>> 宸ヤ綔鏄庣粏妗d负绌�; [workNo=" + wrkMast.getWrkNo() + "],[locNo="
+// + wrkMast.getSourceLocNo() + "]");
+// }
+
+// for (WrkDetl wrkDetl : wrkDetls103) {
+// // 鏇存柊璁㈠崟瀹屾垚鏁伴噺
+// OrderDetlPakout orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(),
+// wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(),
+// wrkDetl.getStandby2(), wrkDetl.getStandby3(),
+// wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3());
+// if (orderDetlPakout == null) {
+// orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(),
+// wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(),
+// wrkDetl.getStandby2(), wrkDetl.getStandby3(),
+// wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3());
+// }
+// try {
+// if (!Cools.isEmpty(orderDetlPakout)) {
+// if (!orderDetlPakoutService.increaseQtyByOrderNo(wrkDetl.getOrderNo(),
+// wrkDetl.getMatnr(),
+// orderDetlPakout.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(),
+// wrkDetl.getStandby2(), wrkDetl.getStandby3(),
+// wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3(),
+// wrkDetl.getAnfme())) {
+// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+// return FAIL.setMsg("鍏ㄦ澘鍑哄簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo()
+// + "],[locNo=" + wrkMast.getSourceLocNo() + "]");
+// }
+// }
+// } catch (Exception ignore) {
+// log.error(ignore.getMessage());
+// }
+// }
+ break;
// 骞舵澘閫斾腑鎹℃枡
case 108:
// 鏍规嵁宸ヤ綔鍙凤紝鏌ヨ宸ヤ綔鏄庣粏妗�
@@ -731,10 +763,10 @@
@Transactional(rollbackFor = Exception.class)
public ReturnT<String> AgvStart(Task task) {
// 4.鍏ュ簱瀹屾垚
- if (task.getWrkSts() == 4) {
+ if (task.getWrkSts().equals(TaskStatusType.AGV_TASK_FINISHED_IN.type)) {
return agvDoIn(task);
// 14.鍑哄簱瀹屾垚
- } else if (task.getWrkSts() == 14) {
+ } else if (task.getWrkSts().equals(TaskStatusType.AGV_TASK_FINISHED_OUT.type)) {
return agvDoOut(task);
}
return SUCCESS;
@@ -743,7 +775,7 @@
/**
* @author Ryan
* @date 2025/9/25
- * @description: AGV鍑哄簱浠诲姟
+ * @description: AGV鍑哄簱浠�
* @version 1.0
*/
@Transactional(rollbackFor = Exception.class)
@@ -769,6 +801,7 @@
throw new CoolException("绔欑偣锛�" + task.getSourceStaNo() + ", 涓嶅瓨鍦紒锛�");
}
devNo.setLocSts(LocStsType.LOC_STS_TYPE_F.type);
+ devNo.setBarcode(task.getBarcode());
devNo.setModiTime(new Date());
if (!basStationService.updateById(devNo)) {
throw new CoolException("绔欑偣淇℃伅淇敼澶辫触锛侊紒");
@@ -831,9 +864,7 @@
throw new CoolException("褰撳墠搴撲綅鐘舵��" + locMast.getLocSts() + ", 鏃犳硶鎵ц鍑哄簱鎿嶄綔锛侊紒");
}
-
-
- task.setWrkSts(15L);
+ task.setWrkSts(TaskStatusType.AGV_INVENTORY_UPDATED_OUT.type);
if (!taskService.updateById(task)) {
throw new CoolException("浠诲姟鐘舵�佷慨鏀瑰け璐ワ紒锛�");
}
@@ -869,7 +900,7 @@
if (!basStationService.updateById(devNo)) {
throw new CoolException("绔欑偣淇℃伅淇敼澶辫触锛侊紒");
}
- task.setWrkSts(15L);
+ task.setWrkSts(TaskStatusType.AGV_INVENTORY_UPDATED_OUT.type);
if (!taskService.updateById(task)) {
throw new CoolException("浠诲姟鐘舵�佷慨鏀瑰け璐ワ紒锛�");
}
@@ -882,6 +913,21 @@
@Transactional(rollbackFor = Exception.class)
public ReturnT<String> agvDoIn(Task wrkMast) {
LocCache locCache = locCacheService.selectOne(new EntityWrapper<LocCache>().eq("loc_no", wrkMast.getLocNo()));
+ if (!Objects.isNull(wrkMast.getSourceStaNo())) {
+ BasStation station = basStationService.selectOne(new EntityWrapper<BasStation>()
+ .eq("dev_no", wrkMast.getSourceStaNo()));
+ if (!Objects.isNull(station)) {
+ List<String> list = Arrays.asList(LocStsType.LOC_STS_TYPE_O.type, LocStsType.LOC_STS_TYPE_D.type);
+ if (!list.contains(station.getLocSts())) {
+ station.setLocSts(LocStsType.LOC_STS_TYPE_O.type);
+ }
+ station.setBarcode("");
+ if (!basStationService.updateById(station)) {
+ basStationDetlService.delete(new EntityWrapper<BasStationDetl>().eq("dev_no", station.getDevNo()));
+ }
+ }
+ }
+
if(wrkMast.getIoType().equals(1)){
if (Objects.isNull(locCache)) {
throw new CoolException("鏁版嵁閿欒锛屽簱浣嶄笉瀛樺湪锛侊紒");
@@ -901,7 +947,7 @@
taskDetls.forEach(pakin -> {
LocDetl detl = new LocDetl();
BeanUtils.copyProperties(pakin, detl);
- detl.setBarcode(pakin.getBarcode());
+ detl.setBarcode(pakin.getZpallet());
detl.setAnfme(pakin.getAnfme());
detl.setBrand(pakin.getBrand());
detl.setSuppCode(pakin.getSuppCode());
@@ -918,31 +964,39 @@
throw new CoolException("搴撲綅鏄庣粏淇濆瓨澶辫触锛侊紒");
}
- // 鏇存柊璁㈠崟瀹屾垚鏁伴噺
- OrderDetlPakin orderDetlPakin = orderDetlPakinService.selectItem(pakin.getOrderNo(),
- pakin.getMatnr(), pakin.getBatch(), pakin.getBrand(), pakin.getStandby1(),
- pakin.getStandby2(), pakin.getStandby3(),
- pakin.getBoxType1(), pakin.getBoxType2(), pakin.getBoxType3());
- if (orderDetlPakin == null) {
- orderDetlPakin = orderDetlPakinService.selectItem(pakin.getOrderNo(), pakin.getMatnr(),
- pakin.getBatch(),
- pakin.getBrand(), pakin.getStandby1(), pakin.getStandby2(),
- pakin.getStandby3(),
- pakin.getBoxType1(), pakin.getBoxType2(), pakin.getBoxType3());
+ OrderPakin orderPakin = orderPakinService.selectOne(new EntityWrapper<OrderPakin>().eq("order_no", pakin.getOrderNo()));
+ if (Objects.isNull(orderPakin)) {
+ throw new CoolException("鏁版嵁閿欒锛岃鍗曚俊鎭笉瀛樺湪锛侊紒");
}
- try {
- if (!Cools.isEmpty(orderDetlPakin)) {
- if (!orderDetlPakinService.increaseQtyByOrderNo(pakin.getOrderNo(),
- pakin.getMatnr(),
- orderDetlPakin.getBatch(), pakin.getBrand(), pakin.getStandby1(),
- pakin.getStandby2(), pakin.getStandby3(),
- pakin.getBoxType1(), pakin.getBoxType2(), pakin.getBoxType3(),
- pakin.getAnfme())) {
- throw new CoolException("AGV鍏ㄦ澘鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo()
- + "],[locNo=" + wrkMast.getLocNo() + "]");
- }
+
+ if (!orderPakin.getDocType().equals(0)) {
+ // 鏇存柊璁㈠崟瀹屾垚鏁伴噺
+ OrderDetlPakin orderDetlPakin = orderDetlPakinService.selectItem(pakin.getOrderNo(),
+ pakin.getMatnr(), pakin.getBatch(), pakin.getBrand(), pakin.getStandby1(),
+ pakin.getStandby2(), pakin.getStandby3(),
+ pakin.getBoxType1(), pakin.getBoxType2(), pakin.getBoxType3());
+ if (orderDetlPakin == null) {
+ orderDetlPakin = orderDetlPakinService.selectItem(pakin.getOrderNo(), pakin.getMatnr(),
+ pakin.getBatch(),
+ pakin.getBrand(), pakin.getStandby1(), pakin.getStandby2(),
+ pakin.getStandby3(),
+ pakin.getBoxType1(), pakin.getBoxType2(), pakin.getBoxType3());
}
- } catch (Exception ignore) {
+ try {
+ if (!Cools.isEmpty(orderDetlPakin)) {
+ if (!orderDetlPakinService.increaseQtyByOrderNo(pakin.getOrderNo(),
+ pakin.getMatnr(),
+ orderDetlPakin.getBatch(), pakin.getBrand(), pakin.getStandby1(),
+ pakin.getStandby2(), pakin.getStandby3(),
+ pakin.getBoxType1(), pakin.getBoxType2(), pakin.getBoxType3(),
+ pakin.getAnfme())) {
+ throw new CoolException("AGV鍏ㄦ澘鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo()
+ + "],[locNo=" + wrkMast.getLocNo() + "]");
+ }
+ }
+ } catch (Exception ignore) {
+
+ }
}
});
@@ -954,7 +1008,7 @@
if (!locCacheService.updateById(locCache)) {
throw new CoolException("搴撲綅鐘舵�佷慨鏀瑰け璐ワ紒");
}
- wrkMast.setWrkSts(5L);
+ wrkMast.setWrkSts(TaskStatusType.AGV_INVENTORY_UPDATED_IN.type);
wrkMast.setModiTime(new Date());
if (!taskService.updateById(wrkMast)) {
throw new CoolException("浠诲姟鐘舵�佷慨鏀瑰け璐ワ紒锛�");
@@ -971,9 +1025,9 @@
Set<Long> list = apallets.stream().map(WaitPakin::getOrderId).collect(Collectors.toSet());
List<OrderPakin> pakins = orderPakinService.selectList(new EntityWrapper<OrderPakin>().in("id", list));
- if (Objects.isNull(pakins) || pakins.isEmpty()) {
-// throw new CoolException("鍗曟嵁涓嶅瓨鍦紒锛�");
- }
+// if (Objects.isNull(pakins) || pakins.isEmpty()) {
+//// throw new CoolException("鍗曟嵁涓嶅瓨鍦紒锛�");
+// }
}else if(wrkMast.getIoType().equals(53)){
// 鏍规嵁宸ヤ綔鍙凤紝鏌ヨ宸ヤ綔鏄庣粏妗�
List<TaskDetl> wrkDetls53 = taskDetlService
@@ -1049,7 +1103,7 @@
}
// 淇敼宸ヤ綔涓绘。鐘舵��
- wrkMast.setWrkSts(5L);
+ wrkMast.setWrkSts(TaskStatusType.AGV_INVENTORY_UPDATED_IN.type);
wrkMast.setModiTime(now);
if (!taskService.updateById(wrkMast)) {
// exceptionHandle("鏇存柊鍏ュ簱瀹屾垚鐘舵�佸け璐�;[workNo={0}]", wrkMast.getWrkNo());
--
Gitblit v1.9.1