From 9c0dbc95b469f9f28184afa83fedaaba7a0b8d49 Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期四, 12 三月 2026 13:51:43 +0800
Subject: [PATCH] erp出库作业完善 1.出库任务下发给wcs之前会先卡住,等erp发立即出库时再给wcs下发(补丁,后需要删掉) 2.给wcs自动下发出库任务 3.新增出库任务完成后上报erp接口(三次上报失败后直接转历史档这个地方有点问题)

---
 src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java |   24 ++++++++++++++++++++++--
 1 files changed, 22 insertions(+), 2 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 aa515c1..f031611 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -88,11 +88,30 @@
         if (!Cools.isEmpty(erpReport) && !"true".equalsIgnoreCase(erpReport)) {
             return false;
         }
-        if (wrkMast == null || Cools.isEmpty(wrkMast.getBarcode())) {
+        if (wrkMast == null) {
             return false;
         }
         Integer ioType = wrkMast.getIoType();
-        return ioType != null && (ioType == 101 || ioType == 108 || ioType == 110);
+        if (ioType == null || (ioType != 101 && ioType != 108 && ioType != 110)) {
+            return false;
+        }
+        return !Cools.isEmpty(resolveOutboundPalletId(wrkMast));
+    }
+
+    private String resolveOutboundPalletId(WrkMast wrkMast) {
+        if (!Cools.isEmpty(wrkMast.getBarcode())) {
+            return wrkMast.getBarcode();
+        }
+        List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
+        if (Cools.isEmpty(wrkDetls)) {
+            return null;
+        }
+        for (WrkDetl wrkDetl : wrkDetls) {
+            if (!Cools.isEmpty(wrkDetl.getZpallet())) {
+                return wrkDetl.getZpallet();
+            }
+        }
+        return null;
     }
 
     public ReturnT<String> doIn(WrkMast wrkMast) {
@@ -595,3 +614,4 @@
         return SUCCESS;
     }
 }
+

--
Gitblit v1.9.1