From ab14726215678ac69adfeafbd845ebc5b0776ea2 Mon Sep 17 00:00:00 2001
From: zhangc <zc@123>
Date: 星期二, 14 一月 2025 14:56:41 +0800
Subject: [PATCH] 优化订单同步逻辑及库位查找
---
src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java | 28 ++++++++++++++++++++--------
1 files changed, 20 insertions(+), 8 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
index 376531f..4b4c04e 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
@@ -103,7 +103,7 @@
List<AgvWaitPakin> agvWaitPakinList = agvWaitPakinService.selectList(new EntityWrapper<AgvWaitPakin>().eq("supp_code", agvBasDevp.getBarcode()));
//妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅
- AgvLocMast agvLocMast = agvCommonService.getLocNo(agvBasDevp.getLocType1(), agvBasDevp.getFloor(), false, false);
+ AgvLocMast agvLocMast = agvCommonService.getLocNo(agvBasDevp.getLocType1(), agvBasDevp.getFloor(), false, false,null);
//鐢熸垚宸ヤ綔妗�
AgvWrkMast wrkMast = createWrkMast(1, 201L, agvBasDevp.getDevNo(), agvLocMast.getLocNo(), agvBasDevp.getBarcode(), now, userId, agvBasDevp.getLocType2(), agvLocMast.getPltType());
//鏍囪鏄惁涓鸿緭閫佺嚎鍏ュ簱
@@ -480,7 +480,7 @@
鍏ュ簱
*/
@Transactional
- public String emptyPlateIn(String station, String containerCode, Short containerType, Long userId, boolean emptyAutoIn) {
+ public String emptyPlateIn(String station, String containerCode, Short containerType, Long userId, boolean emptyAutoIn,String factory) {
Date now = new Date();
@@ -507,6 +507,9 @@
case 30:
br = 3;
break;
+ case 31:
+ br = 6;
+ break;
case 40:
br = 5;
break;
@@ -525,7 +528,9 @@
locType = 2;
} else if (containerType == 30) {
locType = 3;
- } else {
+ } else if (containerType == 31) {
+ locType = 6;
+ }else {
locType = agvBasDevp.getLocType1();
}
@@ -564,19 +569,19 @@
Config config = configService.selectOne(new EntityWrapper<Config>().eq("code", "elevatorTasks"));
if (Cools.isEmpty(config)) {
if (isCurrLev.get()) {
- agvLocMast = agvCommonService.getLocNo(locType, agvBasDevp.getFloor(), false, true);
+ agvLocMast = agvCommonService.getLocNo(locType, agvBasDevp.getFloor(), false, true,factory);
} else {
- agvLocMast = agvCommonService.getLocNo(locType, agvBasDevp.getFloor(), false, false);
+ agvLocMast = agvCommonService.getLocNo(locType, agvBasDevp.getFloor(), false, false,factory);
}
} else {
List<AgvWrkMast> agvWrkMasts = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>().like("loc_no", "02F1").like("source_loc_no", "F1"));
if (Integer.parseInt(config.getValue()) <= agvWrkMasts.size()) {
- agvLocMast = agvCommonService.getLocNo(locType, agvBasDevp.getFloor(), false, true);
+ agvLocMast = agvCommonService.getLocNo(locType, agvBasDevp.getFloor(), false, true,factory);
} else {
if (isCurrLev.get()) {
- agvLocMast = agvCommonService.getLocNo(locType, agvBasDevp.getFloor(), false, true);
+ agvLocMast = agvCommonService.getLocNo(locType, agvBasDevp.getFloor(), false, true,factory);
} else {
- agvLocMast = agvCommonService.getLocNo(locType, agvBasDevp.getFloor(), false, false);
+ agvLocMast = agvCommonService.getLocNo(locType, agvBasDevp.getFloor(), false, false,factory);
}
//agvLocMast = agvCommonService.getLocNo(locType,agvBasDevp.getFloor(),false,false);
}
@@ -1242,6 +1247,9 @@
throw new CoolException(matnr + "鍟嗗搧缁存姢澶辫触");
}
OrderDetl orderDetl = orderDetlService.selectItem(orderNo, mat.getMatnr(), batch, csocode);
+ if (orderDetl == null) {
+ throw new CoolException("璁㈠崟鏄庣粏涓嶅瓨鍦�");
+ }
AgvWrkDetl wrkDetl = new AgvWrkDetl();
wrkDetl.sync(mat);
if (orderDetl != null) {
@@ -1324,6 +1332,10 @@
wrkMast.setAppeTime(now);
wrkMast.setModiUser(userId);
wrkMast.setModiTime(now);
+ if (!Cools.isEmpty(locNo) && Cools.isEmpty(pltType)) {
+ AgvLocMast agvLocMast = agvLocMastService.selectById(locNo);
+ pltType = agvLocMast.getPltType();
+ }
wrkMast.setPltType(pltType);
wrkMast.setLogErrMemo("createWaitPainWrkMastStart");
--
Gitblit v1.9.1