From 1092553a73104036db71acb087327d7e0ca501a0 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期三, 11 六月 2025 17:30:35 +0800
Subject: [PATCH] bug修复;下发任务给rcs携带货架码

---
 src/main/java/com/zy/asrs/controller/AgvWrkMastLogController.java |    3 +
 src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java    |   31 +++++++++++++--
 src/main/java/com/zy/asrs/controller/AgvOpenController.java       |   28 +++++++++-----
 src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java  |   14 ++++++-
 src/main/resources/application.yml                                |    2 
 5 files changed, 60 insertions(+), 18 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/AgvOpenController.java b/src/main/java/com/zy/asrs/controller/AgvOpenController.java
index d531487..86f6fdc 100644
--- a/src/main/java/com/zy/asrs/controller/AgvOpenController.java
+++ b/src/main/java/com/zy/asrs/controller/AgvOpenController.java
@@ -90,6 +90,15 @@
                 return r;
             }
         }
+        try {
+            if (!Cools.isEmpty(agvWrkMast.getBarcode()) && !Cools.isEmpty(param.getPodCode())) {
+                if (!agvWrkMast.getBarcode().equals(param.getPodCode())) {
+                    log.info("AGV鍥炶皟鐨勮繑鍥炵殑鎵樼洏鐮佸拰宸ヤ綔妗f墭鐩樹笉涓�鑷�,{}{}", agvWrkMast.getBarcode(), param.getPodCode());
+                }
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
         if (agvWrkMast.getIoType().equals(121)) {
             try {
                 if (agvWrkMast.getWrkSts().equals(12L)) {
@@ -173,17 +182,7 @@
     end {
         @Transactional
         public void success(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) {
-            try {
-                if (!Cools.isEmpty(agvWrkMast.getBarcode()) && !Cools.isEmpty(param.getPodCode())) {
-                    if (!agvWrkMast.getBarcode().equals(param.getPodCode())) {
-                        agvWrkMast.setTakeNone(agvWrkMast.getBarcode() + "!=" + param.getPodCode());
-                        log.info("AGV鍥炶皟鐨勮繑鍥炵殑鎵樼洏鐮佸拰宸ヤ綔妗f墭鐩樹笉涓�鑷�,{}{}", agvWrkMast.getBarcode(), param.getPodCode());
-                        log.error("AGV鍥炶皟鐨勮繑鍥炵殑鎵樼洏鐮佸拰宸ヤ綔妗f墭鐩樹笉涓�鑷�,{}{}", agvWrkMast.getBarcode(), param.getPodCode());
-                    }
-                }
-            } catch (Exception e) {
 
-            }
             //淇敼AGV宸ヤ綔妗g殑宸ヤ綔鐘舵�佷负205.宸ヤ綔瀹屾垚
             agvWrkMast.setWrkSts(205L);
 
@@ -367,6 +366,15 @@
         }
 
     }
+
+    public static void main(String[] args) {
+        try {
+            String s = null;
+            System.out.println(s.equals("1"));
+        }catch (Exception e){
+
+        }
+    }
 }
 
 
diff --git a/src/main/java/com/zy/asrs/controller/AgvWrkMastLogController.java b/src/main/java/com/zy/asrs/controller/AgvWrkMastLogController.java
index f69b4c1..ae9d051 100644
--- a/src/main/java/com/zy/asrs/controller/AgvWrkMastLogController.java
+++ b/src/main/java/com/zy/asrs/controller/AgvWrkMastLogController.java
@@ -115,9 +115,12 @@
                     wrapper.like(entry.getKey().replace("%", ""), val, SqlLike.LEFT);
                 } else if (key.endsWith("%")) {
                     wrapper.like(entry.getKey().replace("%", ""), val, SqlLike.RIGHT);
+                } else if (entry.getKey().equals("manu_type")) {
+                    wrapper.like(entry.getKey(), val);
                 } else {
                     wrapper.eq(entry.getKey(), val);
                 }
+
             }
         }
     }
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 332fbc0..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,8 +1407,8 @@
                         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()).eq("source",33).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", orderDetl.getOrderNo()).eq("matnr", agvLocDetl.getMatnr()).eq("three_code", agvLocDetl.getThreeCode()))) {
@@ -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鍙栨秷浠诲姟鎺ュ彛澶辫触");
+                }
             }
         }
     }
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java b/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
index da569a5..bce6969 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
@@ -16,6 +16,7 @@
 import com.zy.asrs.service.*;
 import com.zy.common.service.AgvCommonService;
 import com.zy.common.utils.HttpHandler;
+import com.zy.system.entity.Config;
 import com.zy.system.service.ConfigService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -275,8 +276,17 @@
                 }
                 break;
         }
-        if (!Cools.isEmpty(agvWrkMast.getBarcode())) {
-            agvTaskCreateParam.setPodCode(agvWrkMast.getBarcode());
+        try {
+            Config config = configService.selectOne(new EntityWrapper<Config>().eq("code", "BARCODE"));
+            boolean flag = false;
+            if (!Cools.isEmpty(config)) {
+                flag = config.getValue().equals("Y");
+            }
+            if (!Cools.isEmpty(agvWrkMast.getBarcode()) && flag) {
+                agvTaskCreateParam.setPodCode(agvWrkMast.getBarcode());
+            }
+        }catch (Exception e){
+
         }
         agvTaskCreateParam.setPositionCodePath(agvTaskParamList);
 
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index f4d5610..0bef8f0 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -1,4 +1,4 @@
 spring:
   profiles:
     #dev loc prod
-    active: prod
+    active: dev

--
Gitblit v1.9.1