From e9a4418c14ef68fb454300b092c413e8df259ec2 Mon Sep 17 00:00:00 2001
From: Junjie <xjj@123>
Date: 星期六, 13 四月 2024 11:50:56 +0800
Subject: [PATCH] #

---
 zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayLiftThread.java |   41 ++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 40 insertions(+), 1 deletions(-)

diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayLiftThread.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayLiftThread.java
index ba5bd4e..8fde087 100644
--- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayLiftThread.java
+++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayLiftThread.java
@@ -20,6 +20,7 @@
 import com.zy.asrs.wcs.rcs.thread.LiftThread;
 import com.zy.asrs.wcs.core.utils.RedisUtil;
 import com.zy.asrs.wcs.rcs.entity.Device;
+import lombok.Data;
 import lombok.extern.slf4j.Slf4j;
 
 import java.text.MessageFormat;
@@ -87,6 +88,10 @@
                     liftProtocol.setLiftNo(Integer.valueOf(device.getDeviceNo()));
                     liftProtocol.setProtocolStatus(LiftProtocolStatusType.IDLE);
                     liftProtocol.setDevice(device);
+
+                    InnerLiftExtend innerLiftExtend = new InnerLiftExtend();
+                    innerLiftExtend.setLock(false);//榛樿鏈攣瀹�
+                    liftProtocol.setExtend(innerLiftExtend);
                 }
 
                 //----------璇诲彇鎻愬崌鏈虹姸鎬�-----------
@@ -104,6 +109,13 @@
                 liftProtocol.setErrorCode("");
                 //灞�
                 liftProtocol.setLev(data.getInteger("curFloor"));
+
+
+                //************琛ュ厖鎵╁睍瀛楁*************
+                InnerLiftExtend liftExtend = JSON.parseObject(JSON.toJSONString(liftProtocol.getExtend()), InnerLiftExtend.class);
+                liftExtend.setLock(data.getInteger("lockStatus") == 1 ? true : false);
+                liftProtocol.setExtend(liftExtend);
+
 //                //鍓嶈秴闄�
 //                liftProtocol.setFrontOverrun(status1[4]);
 //                //鍚庤秴闄�
@@ -151,7 +163,7 @@
 
     @Override
     public LiftProtocol getStatus() {
-        return this.liftProtocol;
+        return this.liftProtocol.clone();
     }
 
     @Override
@@ -277,6 +289,20 @@
 
     @Override
     public synchronized boolean reset(LiftCommand command) {
+        return false;
+    }
+
+    @Override
+    public boolean isIdle() {
+        InnerLiftExtend extend = (InnerLiftExtend) liftProtocol.getExtend();//鑾峰彇鎵╁睍瀛楁
+        // 鍒ゆ柇鎻愬崌鏈烘槸鍚﹁嚜鍔ㄣ�佸氨缁�佺┖闂层�佹湭閿佸畾
+        if (liftProtocol.getModel()
+                && !liftProtocol.getRun()
+                && liftProtocol.getReady()
+                && !extend.getLock()
+        ) {
+            return true;
+        }
         return false;
     }
 
@@ -444,4 +470,17 @@
         return command;
     }
 
+    /**
+     * 鎵╁睍瀛楁
+     */
+    @Data
+    private class InnerLiftExtend {
+
+        /**
+         * 鎻愬崌鏈洪攣瀹�
+         */
+        private Boolean lock = false;
+
+    }
+
 }

--
Gitblit v1.9.1