From 23a2e30f0f70c1f526a04bffda38fd124ed47630 Mon Sep 17 00:00:00 2001
From: zhangc <zc@123>
Date: 星期五, 18 四月 2025 14:51:52 +0800
Subject: [PATCH] 999

---
 src/main/java/com/zy/asrs/utils/Utils.java |   25 +++++++++++++++++++++----
 1 files changed, 21 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/zy/asrs/utils/Utils.java b/src/main/java/com/zy/asrs/utils/Utils.java
index 8d2466b..3c27181 100644
--- a/src/main/java/com/zy/asrs/utils/Utils.java
+++ b/src/main/java/com/zy/asrs/utils/Utils.java
@@ -4,8 +4,11 @@
 import com.core.common.Arith;
 import com.core.common.Cools;
 import com.core.common.SpringUtils;
+import com.core.exception.CoolException;
 import com.zy.asrs.entity.LocMast;
+import com.zy.asrs.entity.WrkMast;
 import com.zy.asrs.service.LocMastService;
+import com.zy.asrs.service.WrkMastService;
 import com.zy.common.model.NavigateNode;
 import com.zy.common.model.enums.NavigationMapType;
 import com.zy.common.utils.NavigatePositionConvert;
@@ -19,9 +22,6 @@
 import java.text.DecimalFormat;
 import java.util.*;
 
-/**
- * Created by vincent on 2020/8/27
- */
 public class Utils {
 
     private static final DecimalFormat fmt = new DecimalFormat("##0.00");
@@ -145,9 +145,10 @@
         return list;
     }
 
-    //妫�娴嬫ゼ灞傛槸鍚︽湁绌挎杞�
+    //妫�娴嬫ゼ灞傛槸鍚︽湁鍙敤绌挎杞�
     public static boolean checkLevHasShuttle(Integer lev) {
         SlaveProperties slaveProperties = SpringUtils.getBean(SlaveProperties.class);
+        WrkMastService wrkMastService = SpringUtils.getBean(WrkMastService.class);
         for (ShuttleSlave shuttle : slaveProperties.getShuttle()) {
             //鑾峰彇鍥涘悜绌挎杞︾嚎绋�
             ShuttleThread shuttleThread = (ShuttleThread) SlaveConnection.get(SlaveType.Shuttle, shuttle.getId());
@@ -163,6 +164,22 @@
                 continue;
             }
 
+            //灏忚溅姝e湪鍏呯數
+            if (shuttleThread.isCharging()) {
+                continue;
+            }
+
+            //灏忚溅鏈夊厖鐢典换鍔�
+            WrkMast chargeWorking = wrkMastService.selectChargeWorking(shuttleProtocol.getShuttleNo());
+            if (chargeWorking != null) {//宸叉湁鍏呯數浠诲姟
+                continue;
+            }
+
+            //灏忚溅澶勪簬鏁呴殰鐘舵��
+            if (shuttleThread.isFault()) {
+                continue;
+            }
+
             if (lev == Utils.getLev(currentLocNo)) {
                 return true;//鎸囧畾妤煎眰鏈夌┛姊溅
             }

--
Gitblit v1.9.1