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/task/handler/AgvWrkMastHandler.java | 65 ++++++++++++++++++--------------
1 files changed, 37 insertions(+), 28 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 99a2dae..22b7f22 100644
--- a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
@@ -43,9 +43,9 @@
//绉诲簱绫诲瀷鏁扮粍
private static final List<Integer> MOVE_TYPE_List = new ArrayList<Integer>() {{
add(11);
- add(101);
add(12);
add(53);
+ add(101);
add(103);
add(108);
add(111);
@@ -135,6 +135,26 @@
}
+ Integer pltType = agvWrkMast.getPltType();
+ if (Cools.isEmpty(pltType)) {
+ AgvLocMast agvLocMast;
+ if (!Cools.isEmpty(agvWrkMast.getLocNo())) {
+ agvLocMast = agvLocMastService.selectById(agvWrkMast.getLocNo());
+ if (agvLocMast != null) {
+ pltType = agvLocMast.getPltType();
+ }
+ }
+ if (!Cools.isEmpty(agvWrkMast.getSourceLocNo())) {
+ agvLocMast = agvLocMastService.selectById(agvWrkMast.getSourceLocNo());
+ if (agvLocMast != null) {
+ pltType = agvLocMast.getPltType();
+ }
+ }
+ if (pltType != null) {
+ agvWrkMast.setPltType(pltType);
+ }
+ log.info("宸ヤ綔鍙�--{},浠撳簱缂栫爜锛歿}", agvWrkMast.getWrkNo(), agvWrkMast.getPltType());
+ }
agvWrkMast.setModiTime(new Date());
//淇敼宸ヤ綔妗g姸鎬佷负207.搴撳瓨鏇存柊瀹屾垚
agvWrkMast.setWrkSts(207L);
@@ -336,13 +356,7 @@
// }
// agvWrkMastService.updateById(agvWrkMast);
// }
- Integer pltType = agvWrkMast.getPltType();
- if (Cools.isEmpty(pltType) && !Cools.isEmpty(agvWrkMast.getLocNo())) {
- AgvLocMast agvLocMast = agvLocMastService.selectById(agvWrkMast.getLocNo());
- if (agvLocMast != null) {
- pltType = agvLocMast.getPltType();
- }
- }
+
if (!isJSON(orderNo)) {
//妫�鏌ヨ鍗曟槸鍚﹀凡瀹屾垚
orderService.checkComplete(orderNo, pltType);
@@ -713,32 +727,27 @@
if (Cools.isEmpty(agvWrkDetls)) {
return;
}
+ List<AgvWrkDetl> data = new ArrayList<>();
//鍖哄垎涓嶅悓浠诲姟绫诲瀷鐨勪笂鎶ユ柟寮�
-
- if (IN_TYPE_LIST.contains(agvWrkMast.getIoType())) {
- String barcode = agvWrkMast.getBarcode();
- if (barcode.startsWith("20") || barcode.startsWith("21") || barcode.startsWith("40")) {
- reportMesPakinOrder(agvWrkMast, agvWrkDetls);
+ for (AgvWrkDetl agvWrkDetl : agvWrkDetls) {
+ if (agvWrkDetl.getMatnr().compareTo("39") <= 0) {
+ data.add(agvWrkDetl);
}
}
- if (OUT_TYPE_List.contains(agvWrkMast.getIoType())) {
- String barcode = agvWrkMast.getBarcode();
- if (barcode.startsWith("20") || barcode.startsWith("21") || barcode.startsWith("40")) {
- reportMesPakoutOrder(agvWrkMast, agvWrkDetls);
+ if (!data.isEmpty()) {
+ if (IN_TYPE_LIST.contains(agvWrkMast.getIoType())) {
+ reportMesPakinOrder(agvWrkMast, data);
+ }
+ if (OUT_TYPE_List.contains(agvWrkMast.getIoType())) {
+ reportMesPakoutOrder(agvWrkMast, data);
+ }
+ if (MOVE_TYPE_List.contains(agvWrkMast.getIoType())) {
+ generateMesParam(agvWrkMast, data);
}
}
- if (MOVE_TYPE_List.contains(agvWrkMast.getIoType())) {
- String barcode = agvWrkMast.getBarcode();
- if (agvWrkMast == null || agvWrkMast.getBarcode() == null) {
- return;
- }
- if (barcode.startsWith("20") || barcode.startsWith("21") || barcode.startsWith("40")) {
- generateMesParam(agvWrkMast, agvWrkDetls);
- }
- }
-
}
+
private void reportMesPakinOrder(AgvWrkMast agvWrkMast, List<AgvWrkDetl> agvWrkDetls) {
@@ -764,7 +773,7 @@
iteam.setLineNo(orderDetl.getItemNum());
iteam.setSupplierCode(order.getSalesman());
iteam.setUnit(agvWrkDetl.getUnit());
-
+ iteam.setRemark(agvWrkDetl.getThreeCode());
iteams.add(iteam);
mesBuyPakinReportParam.setCode(orderNo);
--
Gitblit v1.9.1