From 0e262efdb8cb2768e0aa845ccb26f47b8732c577 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期三, 25 六月 2025 10:37:11 +0800
Subject: [PATCH] 1

---
 src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java |   35 ++++++++++++++++++++++++++++-------
 1 files changed, 28 insertions(+), 7 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 281169d..d53164d 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
@@ -495,6 +495,10 @@
         if (Cools.isEmpty(agvBasDevp)) {
             throw new CoolException("鏆傛棤" + station + "绔欑偣");
         }
+        AgvBasDevp agvBasDevp2 = agvBasDevpService.selectOne(new EntityWrapper<AgvBasDevp>().eq("barcode", containerCode).ne("dev_no", agvBasDevp.getDevNo()));
+        if (!Cools.isEmpty(agvBasDevp2)) {
+            throw new CoolException(station + "绔欑偣缁戝畾璇ヨ揣鏋讹紝鏃犳硶鍏ュ簱");
+        }
         int br = 0;
         if (containerType == 21 && agvBasDevp.getFloor() == 2) {
             containerType = 20;
@@ -645,6 +649,15 @@
         if (Cools.isEmpty(agvBasDevp)) {
             throw new CoolException("鏆傛棤" + station + "绔欑偣");
         }
+
+        AgvBasDevp agvBasDevp2 = agvBasDevpService.selectOne(new EntityWrapper<AgvBasDevp>().eq("barcode", containerCode).ne("dev_no", agvBasDevp.getDevNo()));
+        if (!Cools.isEmpty(agvBasDevp2)) {
+            throw new CoolException(station + "绔欑偣缁戝畾璇ヨ揣鏋讹紝鏃犳硶鍏ュ簱");
+        }
+        if (Cools.isEmpty(agvBasDevp)) {
+            throw new CoolException("鏆傛棤" + station + "绔欑偣");
+        }
+
         int br = 0;
         if (containerType == 21 && agvBasDevp.getFloor() == 2) {
             containerType = 20;
@@ -800,6 +813,10 @@
         AgvBasDevp agvBasDevp = agvBasDevpService.selectById(station);
         if (Cools.isEmpty(agvBasDevp)) {
             throw new CoolException("鏆傛棤" + station + "绔欑偣");
+        }
+        AgvBasDevp agvBasDevp2 = agvBasDevpService.selectOne(new EntityWrapper<AgvBasDevp>().eq("barcode", containerCode).ne("dev_no", agvBasDevp.getDevNo()));
+        if (!Cools.isEmpty(agvBasDevp2)) {
+            throw new CoolException(station + "绔欑偣缁戝畾璇ヨ揣鏋讹紝鏃犳硶鍏ュ簱");
         }
         int br = 0;
         if (containerType == 21 && agvBasDevp.getFloor() == 2) {
@@ -1390,12 +1407,12 @@
                         if (!orderDetlService.update(orderDetl, new EntityWrapper<OrderDetl>().eq("order_no", "DB" + agvLocDetl.getOrderNo()).eq("matnr", agvLocDetl.getMatnr()).eq("three_code", agvLocDetl.getThreeCode()))) {
                             throw new CoolException("淇敼璁㈠崟鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�" + agvLocDetl.getOrderNo() + agvLocDetl.getMatnr());
                         }
-                    }else {
-                        orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("matnr", agvLocDetl.getMatnr()).eq("three_code", agvLocDetl.getThreeCode()).ge("qty",agvLocDetl.getAnfme()));
+                    } else {
+                        orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("matnr", agvLocDetl.getMatnr()).eq("three_code", agvLocDetl.getThreeCode()).eq("source", 33).ge("qty", agvLocDetl.getAnfme()));
                         if (orderDetl != null) {
                             orderDetl.setQty(orderDetl.getQty() - agvLocDetl.getAnfme());
-                            if (!orderDetlService.update(orderDetl, new EntityWrapper<OrderDetl>().eq("order_no", "DB" + agvLocDetl.getOrderNo()).eq("matnr", agvLocDetl.getMatnr()).eq("three_code", agvLocDetl.getThreeCode()))) {
-                                throw new CoolException("淇敼璁㈠崟鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�" + agvLocDetl.getOrderNo() + agvLocDetl.getMatnr());
+                            if (!orderDetlService.update(orderDetl, new EntityWrapper<OrderDetl>().eq("order_no", orderDetl.getOrderNo()).eq("matnr", agvLocDetl.getMatnr()).eq("three_code", agvLocDetl.getThreeCode()))) {
+                                //throw new CoolException("淇敼璁㈠崟鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�" + agvLocDetl.getOrderNo() + agvLocDetl.getMatnr());
                             }
                         }
                     }
@@ -1538,9 +1555,13 @@
                 throw new CoolException("鍒犻櫎澶辫触锛岃鑱旂郴绠$悊鍛�");
             }
 
-            if (type == 2) {
-                //璋冪敤agv鍙栨秷浠诲姟鎺ュ彛
-                agvWrkMastService.callCancelTask(wrkMast.getWrkNo());
+            if (type == 2 || type == 5) {
+                try {
+                    //璋冪敤agv鍙栨秷浠诲姟鎺ュ彛
+                    agvWrkMastService.callCancelTask(wrkMast.getWrkNo());
+                } catch (Exception e) {
+                    log.info("璋冪敤agv鍙栨秷浠诲姟鎺ュ彛澶辫触");
+                }
             }
         }
     }

--
Gitblit v1.9.1