From ae0d613e60b2308d23b2760d514d0ff3356bfa48 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期六, 14 十月 2023 09:06:23 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/core/thread/SteThread.java |   42 +++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 41 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/zy/core/thread/SteThread.java b/src/main/java/com/zy/core/thread/SteThread.java
index 823247a..72dbc49 100644
--- a/src/main/java/com/zy/core/thread/SteThread.java
+++ b/src/main/java/com/zy/core/thread/SteThread.java
@@ -11,12 +11,16 @@
 import com.core.exception.CoolException;
 import com.zy.asrs.entity.BasSte;
 import com.zy.asrs.entity.BasSteOpt;
+import com.zy.asrs.entity.WrkCharge;
 import com.zy.asrs.service.BasSteOptService;
 import com.zy.asrs.service.BasSteService;
+import com.zy.common.model.enums.WrkChargeType;
+import com.zy.core.DevpThread;
 import com.zy.core.News;
 import com.zy.core.ThreadHandler;
 import com.zy.core.cache.MessageQueue;
 import com.zy.core.cache.OutputQueue;
+import com.zy.core.cache.SlaveConnection;
 import com.zy.core.enums.SlaveType;
 import com.zy.core.enums.SteStatusType;
 import com.zy.core.model.SteSlave;
@@ -175,7 +179,13 @@
                 steProtocol.setCrnStopRun(siemensS7Net.getByteTransform().TransInt16(result.Content, 38));
                 steProtocol.setCrnStopFork(siemensS7Net.getByteTransform().TransInt16(result.Content, 40));
                 steProtocol.setCrnAllowRun(siemensS7Net.getByteTransform().TransInt16(result.Content, 42));
-                steProtocol.setChargeStatus(siemensS7Net.getByteTransform().TransInt16(result.Content, 44));
+//                steProtocol.setCrnAllowRun(siemensS7Net.getByteTransform().TransInt16(result.Content, 44));
+                SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1);
+                if (!devpThread.charge0 || devpThread.charge1){
+                    steProtocol.setChargeStatus((short)1);
+                }else {
+                    steProtocol.setChargeStatus((short)0);
+                }
 
                 OutputQueue.STE.offer(MessageFormat.format("銆恵0}銆慬id:{1}] <<<<< 瀹炴椂鏁版嵁鏇存柊鎴愬姛",DateUtils.convert(new Date()), slave.getId()));
 
@@ -210,6 +220,9 @@
                     steProtocol.setForcedTravel(status[68]);
                     steProtocol.setDemoMode(status[69]);
                     steProtocol.setBrushConnect(status[70]);
+//                    if (status[70]){
+//                        steProtocol.setChargeStatus((short)1);
+//                    }
                     steProtocol.setTaskManualForbid(status[71]);
                     steProtocol.setOnlineManualForbid(status[72]);
                     steProtocol.setDevpEmergency(status[73]);
@@ -286,6 +299,33 @@
             News.error("绌挎杞﹀啓鍏ュ懡浠や负绌�");
             return false;
         }
+        //鍒ゆ柇灏忚溅鏄惁鍦ㄥ厖鐢�
+        SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1);
+        if (devpThread.charge1){
+            // led 寮傚父鏄剧ず
+            LedThread ledThread1 = (LedThread) SlaveConnection.get(SlaveType.Led, 1);
+            LedThread ledThread2 = (LedThread) SlaveConnection.get(SlaveType.Led, 1);
+            LedThread ledThread3 = (LedThread) SlaveConnection.get(SlaveType.Led, 1);
+            if (ledThread1 != null && ledThread2 != null && ledThread3 != null) {
+                MessageQueue.offer(SlaveType.Led, 1, new Task(3, "绌挎杞︽鍦ㄥ厖鐢�"));
+                MessageQueue.offer(SlaveType.Led, 2, new Task(3, "绌挎杞︽鍦ㄥ厖鐢�"));
+                MessageQueue.offer(SlaveType.Led, 3, new Task(3, "绌挎杞︽鍦ㄥ厖鐢�"));
+            }
+            News.error("绌挎杞︽鍦ㄥ厖鐢�");
+            return false;
+        }else if (!devpThread.charge0){
+            // led 寮傚父鏄剧ず
+            LedThread ledThread1 = (LedThread) SlaveConnection.get(SlaveType.Led, 1);
+            LedThread ledThread2 = (LedThread) SlaveConnection.get(SlaveType.Led, 1);
+            LedThread ledThread3 = (LedThread) SlaveConnection.get(SlaveType.Led, 1);
+            if (ledThread1 != null && ledThread2 != null && ledThread3 != null) {
+                MessageQueue.offer(SlaveType.Led, 1, new Task(3, "绌挎杞﹀彲鑳藉湪绂荤嚎鍏呯數锛屾鏌ョ數鎺ф煖绌挎杞︽槸鍚﹀厖鐢垫々鍦ㄧ嚎"));
+                MessageQueue.offer(SlaveType.Led, 2, new Task(3, "绌挎杞﹀彲鑳藉湪绂荤嚎鍏呯數锛屾鏌ョ數鎺ф煖绌挎杞︽槸鍚﹀厖鐢垫々鍦ㄧ嚎"));
+                MessageQueue.offer(SlaveType.Led, 3, new Task(3, "绌挎杞﹀彲鑳藉湪绂荤嚎鍏呯數锛屾鏌ョ數鎺ф煖绌挎杞︽槸鍚﹀厖鐢垫々鍦ㄧ嚎"));
+            }
+            News.error("绌挎杞﹀彲鑳藉湪绂荤嚎鍏呯數锛屾鏌ョ數鎺ф煖绌挎杞︽槸鍚﹀厖鐢垫々鍦ㄧ嚎");
+            return false;
+        }
         command.setSteNo(slave.getId());
         OperateResult result = null;
         // 寮�濮嬩换鍔�

--
Gitblit v1.9.1