From 6c8bbda65905a9dd299062d725682a8bc896cd72 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期五, 21 六月 2024 19:14:33 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/core/thread/SteThread.java           |   49 +++++++-----------------
 src/main/java/com/zy/core/enums/SteLocaType.java          |   16 ++++++--
 src/main/java/com/zy/core/model/protocol/SteProtocol.java |   34 +++++++++++++++++
 3 files changed, 60 insertions(+), 39 deletions(-)

diff --git a/src/main/java/com/zy/core/enums/SteLocaType.java b/src/main/java/com/zy/core/enums/SteLocaType.java
index bf72a9c..a95cc7c 100644
--- a/src/main/java/com/zy/core/enums/SteLocaType.java
+++ b/src/main/java/com/zy/core/enums/SteLocaType.java
@@ -3,12 +3,20 @@
 public enum SteLocaType {
 
     NONE(0, "鏈煡"),
-    A(1, "A鐐�"),
-    B(2, "B鐐�"),
-    A_WAITING(3, "A寰呮満鐐�"),
-    B_WAITING(4, "B寰呮満鐐�"),
+    POINT20(20, "A闈㈠钩绉昏溅"),
+    POINT21(21, "纭寲缃怉绔�"),
+    POINT22(22, "纭寲缃怋绔�"),
+    POINT23(23, "B闈㈠钩绉昏溅"),
+    POINT24(24, "姘存ЫA绔�"),
+    POINT25(25, "姘存ЫB绔�"),
+    POINT26(26, "B绔緭閫佺嚎"),
+//    A(1, "A鐐�"),
+//    B(2, "B鐐�"),
+//    A_WAITING(3, "A寰呮満鐐�"),
+//    B_WAITING(4, "B寰呮満鐐�"),
     ;
 
+
     public Integer id;
     public String desc;
     SteLocaType(Integer id, String desc) {
diff --git a/src/main/java/com/zy/core/model/protocol/SteProtocol.java b/src/main/java/com/zy/core/model/protocol/SteProtocol.java
index 21102b2..47d8130 100644
--- a/src/main/java/com/zy/core/model/protocol/SteProtocol.java
+++ b/src/main/java/com/zy/core/model/protocol/SteProtocol.java
@@ -100,6 +100,20 @@
     public SteLocaType locaType;
 
     /**
+     * 褰撳墠浣嶇疆     1锛岃繎鐐癸紝2杩滅偣锛�3A鐐癸紝4B鐐�
+     */
+    public Short locaStart;
+
+    public SteLocaType locaStartType;
+
+    /**
+     * 褰撳墠浣嶇疆     1锛岃繎鐐癸紝2杩滅偣锛�3A鐐癸紝4B鐐�
+     */
+    public Short locaEnd;
+
+    public SteLocaType locaEndType;
+
+    /**
      * 杩戠偣璺濈
      */
     public Double closer;
@@ -226,6 +240,26 @@
         this.loca = SteLocaType.get(type).id.shortValue();
     }
 
+    public void setLocaStart(Short locaStart){
+        this.locaStart = locaStart;
+        this.locaStartType = SteLocaType.get(locaStart);
+    }
+
+    public void setLocaStart(SteLocaType type){
+        this.locaStartType = type;
+        this.locaStart = SteLocaType.get(type).id.shortValue();
+    }
+
+    public void setLocaEnd(Short locaEnd){
+        this.locaEnd = locaEnd;
+        this.locaEndType = SteLocaType.get(locaEnd);
+    }
+
+    public void setLocaEnd(SteLocaType type){
+        this.locaEndType = type;
+        this.locaEnd = SteLocaType.get(type).id.shortValue();
+    }
+
     public void setHisTaskStatus(Short hisTaskStatus){
         this.hisTaskStatus = hisTaskStatus;
         this.hisTaskStatusType = SteHisTaskStatusType.get(hisTaskStatus);
diff --git a/src/main/java/com/zy/core/thread/SteThread.java b/src/main/java/com/zy/core/thread/SteThread.java
index 536e038..22155d8 100644
--- a/src/main/java/com/zy/core/thread/SteThread.java
+++ b/src/main/java/com/zy/core/thread/SteThread.java
@@ -143,44 +143,23 @@
                 steProtocol.setRow(siemensS7Net.getByteTransform().TransInt16(result.Content, 14));
                 steProtocol.setBay(siemensS7Net.getByteTransform().TransInt16(result.Content, 16));
                 steProtocol.setLev(siemensS7Net.getByteTransform().TransInt16(result.Content, 18));
-
-//                steProtocol.setReady(siemensS7Net.getByteTransform().TransInt16(result.Content, 20));
-                boolean[] status = siemensS7Net.getByteTransform().TransBool(result.Content, 20, 1);
-                steProtocol.setReady(status[0]?(short)1:(short)0);
+                steProtocol.setLoca(siemensS7Net.getByteTransform().TransInt16(result.Content, 20));
+                steProtocol.setLocaStart(siemensS7Net.getByteTransform().TransInt16(result.Content, 22));
+                steProtocol.setLocaEnd(siemensS7Net.getByteTransform().TransInt16(result.Content, 24));
+                boolean[] status = siemensS7Net.getByteTransform().TransBool(result.Content, 26, 1);
+//                steProtocol.setReady(status[0]?(short)1:(short)0);
 //                steProtocol.setReady(status[1]?(short)1:(short)0);
-//                steProtocol.setReady(status[2]?(short)1:(short)0);
-//                steProtocol.setLoad(status[3]?(short)1:(short)0);
-//                steProtocol.setReady(status[4]?(short)1:(short)0);
-                steProtocol.setChargeStatus(status[5]?(short)1:(short)0);
-                steProtocol.setTrack(status[6]?(short)1:(short)0);
+                steProtocol.setReady(status[3]?(short)1:(short)0);
+//                steProtocol.setReady(status[3]?(short)1:(short)0);
+//                steProtocol.setTrack(status[6]?(short)1:(short)0);
 
-                SteLocaType locaType = SteLocaType.NONE;
-                boolean[] status2 = siemensS7Net.getByteTransform().TransBool(result.Content, 21, 1);
-                if (steProtocol.getRow().intValue() >= 6) {
-                    if (status[7]){//A鐐�
-                        locaType = SteLocaType.A;
-                    }
-                    if (status2[1]){//A寰呮満鐐�
-                        if (locaType.equals(SteLocaType.NONE)) {
-                            locaType = SteLocaType.A_WAITING;
-                        }
-                    }
-                }else {
-                    if (status2[0]){//B鐐�
-                        if (locaType.equals(SteLocaType.NONE)) {
-                            locaType = SteLocaType.B;
-                        }
-                    }
-                    if (status2[2]){//B寰呮満鐐�
-                        if (locaType.equals(SteLocaType.NONE)) {
-                            locaType = SteLocaType.B_WAITING;
-                        }
-                    }
-                }
+                boolean[] status2 = siemensS7Net.getByteTransform().TransBool(result.Content, 27, 1);
 
-                steProtocol.setLoca(locaType.id.shortValue());
-                steProtocol.setReady(status2[3]?(short)1:(short)0);
-                steProtocol.setLoad(status2[4]?(short)1:(short)0);
+                steProtocol.setChargeStatus(status[0]?(short)1:(short)0);
+                steProtocol.setTrack(status[1]?(short)1:(short)0);
+
+//                steProtocol.setLoad(status2[6]?(short)1:(short)0);
+                steProtocol.setLoad(status2[7]?(short)1:(short)0);
 
                 OutputQueue.STE.offer(MessageFormat.format("銆恵0}銆慬id:{1}] <<<<< 瀹炴椂鏁版嵁鏇存柊鎴愬姛",DateUtils.convert(new Date()), slave.getId()));
 

--
Gitblit v1.9.1