From 40631d025469ac3fb60a57dfab1d9022cb0298a6 Mon Sep 17 00:00:00 2001
From: ZY <zc857179121@qq.com>
Date: 星期二, 25 三月 2025 16:57:46 +0800
Subject: [PATCH] 站点退回操作,防止改成空库位

---
 src/main/java/com/zy/common/service/AgvCommonService.java |   35 ++++++++++++++++++++++++++++++++++-
 1 files changed, 34 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/zy/common/service/AgvCommonService.java b/src/main/java/com/zy/common/service/AgvCommonService.java
index e09b94e..1762837 100644
--- a/src/main/java/com/zy/common/service/AgvCommonService.java
+++ b/src/main/java/com/zy/common/service/AgvCommonService.java
@@ -269,6 +269,39 @@
         }
     }
 
+    /**
+     * 搴撲綅瑙勫垯鏌ユ壘
+     */
+    public AgvLocMast getLocByLocRule2(int type, int floor, int lev1) {
+
+        try {
+            EntityWrapper<AgvLocMast> wrapper = new EntityWrapper<>();
+            wrapper.eq("loc_sts", "O").eq("loc_type1", type);
+            wrapper.eq("floor", floor).eq("lev1", lev1);
+            List<AgvLocMast> agvLocMasts = agvLocMastService.selectList(wrapper);
+            if (lev1 == 2) {
+                int num = 20;
+                Config config = configService.selectOne(new EntityWrapper<Config>().eq("code", "LOC_3_NUM"));
+                if (config != null && !Cools.isEmpty(config.getValue())) {
+                    num = Integer.parseInt(config.getValue());
+                }
+                int er = agvLocMasts.size();
+                if (er < num) {
+                    throw new CoolException("鎼滅储搴撲綅鏃讹紝鏈壘鍒板彲鍏ュ簱搴撲綅銆�20");
+                }
+            }
+            for (AgvLocMast agvLocMast : agvLocMasts) {
+                AgvLocMast agvLocMast1 = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", agvLocMast.getLocNo()));
+                if (agvLocMast1.getLocSts().equals("O")) {
+                    return agvLocMast1;
+                }
+            }
+            throw new CoolException("鎼滅储搴撲綅鏃讹紝鏈壘鍒板彲鍏ュ簱搴撲綅銆�");
+        } catch (Exception e) {
+            throw new CoolException("鎼滅储搴撲綅鏃讹紝鏈壘鍒板彲鍏ュ簱搴撲綅銆�");
+        }
+    }
+
     /*
   搴撲綅瑙勫垯鏌ユ壘
    */
@@ -418,7 +451,7 @@
             if (config != null && !Cools.isEmpty(config.getValue())) {
                 num = Integer.parseInt(config.getValue());
             }
-            if (agvLocMasts.size()>num){
+            if (agvLocMasts.size() > num) {
                 for (AgvLocMast agvLocMast : agvLocMasts) {
                     AgvLocMast agvLocMast1 = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", agvLocMast.getLocNo()));
                     if (agvLocMast1.getLocSts().equals("O")) {

--
Gitblit v1.9.1