From 955033fd4b1f9a7e972909eae71927654a54f7ac Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期五, 07 六月 2024 10:11:08 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/core/thread/SiemensCrnThread.java    |   26 ++++++++----
 src/main/java/com/zy/asrs/entity/BasCrnp.java             |   34 +++++++++++++++++
 src/main/resources/mapper/BasCrnpMapper.xml               |    2 +
 src/main/java/com/zy/core/model/protocol/CrnProtocol.java |    9 +++-
 src/main/java/com/zy/core/ServerBootstrap.java            |    2 
 5 files changed, 61 insertions(+), 12 deletions(-)

diff --git a/src/main/java/com/zy/asrs/entity/BasCrnp.java b/src/main/java/com/zy/asrs/entity/BasCrnp.java
index 1013128..6b92323 100644
--- a/src/main/java/com/zy/asrs/entity/BasCrnp.java
+++ b/src/main/java/com/zy/asrs/entity/BasCrnp.java
@@ -51,6 +51,20 @@
     private Integer crnSts;
 
     /**
+     * 鐘舵��
+     */
+    @ApiModelProperty(value= "鐘舵��1")
+    @TableField("crn_status_one")
+    private Integer crnStatusOne;
+
+    /**
+     * 鐘舵��
+     */
+    @ApiModelProperty(value= "鐘舵��2")
+    @TableField("crn_status_two")
+    private Integer crnStatusTwo;
+
+    /**
      * 宸ヤ綔鍙�
      */
     @ApiModelProperty(value= "宸ヤ綔鍙�")
@@ -235,6 +249,22 @@
         this.crnSts = crnSts;
     }
 
+    public Integer getCrnStatusOne() {
+        return crnStatusOne;
+    }
+
+    public void setCrnStatusOne(Integer crnStatusOne) {
+        this.crnStatusOne = crnStatusOne;
+    }
+
+    public Integer getCrnStatusTwo() {
+        return crnStatusTwo;
+    }
+
+    public void setCrnStatusTwo(Integer crnStatusTwo) {
+        this.crnStatusTwo = crnStatusTwo;
+    }
+
     public Integer getWrkNo() {
         return wrkNo;
     }
@@ -243,6 +273,10 @@
         this.wrkNo = wrkNo;
     }
 
+    public Integer getWrkNoTwo() {
+        return wrkNoTwo;
+    }
+
     public void setWrkNoTwo(Integer wrkNoTwo) {
         this.wrkNoTwo = wrkNoTwo;
     }
diff --git a/src/main/java/com/zy/core/ServerBootstrap.java b/src/main/java/com/zy/core/ServerBootstrap.java
index 51b4378..15c8d16 100644
--- a/src/main/java/com/zy/core/ServerBootstrap.java
+++ b/src/main/java/com/zy/core/ServerBootstrap.java
@@ -171,7 +171,7 @@
                     continue;
                 }
                 if (System.currentTimeMillis() - key.getSign() > 120000 && System.currentTimeMillis() - key.getSign()<1200000) {
-                    System.out.println("绗�"+CRN_COUNT+"涓爢鍨涙満绾跨▼琚噸鍚�");
+                    System.out.println("绗�" + CRN_COUNT + "涓爢鍨涙満绾跨▼琚噸鍚�");
 
                     // 璇锋眰绾跨▼瀹夊叏鍋滄
                     key.requestStop();
diff --git a/src/main/java/com/zy/core/model/protocol/CrnProtocol.java b/src/main/java/com/zy/core/model/protocol/CrnProtocol.java
index 691649b..b12b476 100644
--- a/src/main/java/com/zy/core/model/protocol/CrnProtocol.java
+++ b/src/main/java/com/zy/core/model/protocol/CrnProtocol.java
@@ -43,6 +43,7 @@
 
     /**
      * 鍫嗗灈鏈哄綋鍓嶇姸鎬�
+     * -1锛氭湭鐭�
      * 0锛氱┖闂诧紝鏃犱换鍔�
      * 1锛氬彇璐у畾浣嶄腑
      * 2锛氬彇璐т腑
@@ -53,9 +54,11 @@
      * 7锛氬簱浣嶇Щ浣�
      * 90锛氫换鍔″畬鎴愮瓑寰匴CS纭
      * 99锛氭姤璀�
+     * 100锛氬叾浠�100
+     * 101锛氭湭鐭�101
      */
-    public Short status;
-    public Short statusTwo;
+    public Short status = -1;
+    public Short statusTwo = -1;
 
     /**
      * 鐘舵�佹灇涓�
@@ -285,6 +288,8 @@
         }
         basCrnp.setWrkNo(taskNo.intValue());
         basCrnp.setWrkNoTwo(taskNoTwo.intValue());
+        basCrnp.setCrnStatusOne(status.intValue());
+        basCrnp.setCrnStatusTwo(statusTwo.intValue());
         return basCrnp;
     }
 
diff --git a/src/main/java/com/zy/core/thread/SiemensCrnThread.java b/src/main/java/com/zy/core/thread/SiemensCrnThread.java
index 192e9dc..70deceb 100644
--- a/src/main/java/com/zy/core/thread/SiemensCrnThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensCrnThread.java
@@ -135,6 +135,7 @@
         crnProtocol.setMode((short) -1);
 //        crnProtocol.setTaskNo((short)0);
         crnProtocol.setStatus((short)-1);
+        crnProtocol.setStatusTwo((short)-1);
         crnProtocol.setBay((short)0);
         crnProtocol.setLevel((short)0);
         crnProtocol.setForkPos((short) -1);
@@ -149,6 +150,16 @@
         crnProtocol.setyDistance((short) 0);
         crnProtocol.setxDuration((short) 0);
         crnProtocol.setyDuration((short) 0);
+
+        // 鏍规嵁瀹炴椂淇℃伅鏇存柊鏁版嵁搴�
+        BasCrnpService basCrnpService = SpringUtils.getBean(BasCrnpService.class);
+        BasCrnp basCrnp = basCrnpService.selectById(slave.getId());
+        basCrnp.setCrnSts((int)crnProtocol.getMode());
+        basCrnp.setCrnStatusOne(-1);
+        basCrnp.setCrnStatusTwo(-1);
+        if (!basCrnpService.updateById(basCrnp)){
+            log.error("鍫嗗灈鏈簆lc鏁版嵁搴撴洿鏂板け璐� ===>> [id:{}] [ip:{}] [port:{}] [rack:{}] [slot:{}]", slave.getId(), slave.getIp(), slave.getPort(), slave.getRack(), slave.getSlot());
+        }
     }
 
     @Override
@@ -178,9 +189,9 @@
         try {
             OperateResultExOne<byte[]> result = new OperateResultExOne<byte[]>();
             if (slave.getId()>2 && slave.getId()<6){
-                result = siemensNet.Read("DB101.0", (short) 62);
+                result = siemensNet.Read("DB101.0", (short) 66);
             } else {
-                result = siemensNet.Read("DB101.0", (short) 52);
+                result = siemensNet.Read("DB101.0", (short) 56);
             }
             if (result.IsSuccess) {
                 if (null == crnProtocol) {
@@ -194,7 +205,7 @@
                 crnProtocol.setLevel(siemensNet.getByteTransform().TransInt16(result.Content, 8));
                 crnProtocol.setForkPos(siemensNet.getByteTransform().TransInt16(result.Content, 10));
 
-                if (slave.getId()>2 && slave.getId()<6){
+                if (slave.getId()<3 || slave.getId()>5){
                     crnProtocol.setLiftPos(siemensNet.getByteTransform().TransInt16(result.Content, 12));
                     crnProtocol.setWalkPos(siemensNet.getByteTransform().TransInt16(result.Content, 14));
                     crnProtocol.setLoaded(siemensNet.getByteTransform().TransInt16(result.Content, 16));
@@ -220,6 +231,9 @@
                     crnProtocol.setForkPosTwo(siemensNet.getByteTransform().TransInt16(result.Content, 22));
                     crnProtocol.setLoadedTwo(siemensNet.getByteTransform().TransInt16(result.Content, 24));
 
+                    crnProtocol.setLiftPos(siemensNet.getByteTransform().TransInt16(result.Content, 30));
+                    crnProtocol.setAlarm(siemensNet.getByteTransform().TransInt16(result.Content, 32));
+
                     crnProtocol.setxSpeed(siemensNet.getByteTransform().TransInt16(result.Content, 34));
                     crnProtocol.setySpeed(siemensNet.getByteTransform().TransInt16(result.Content, 38));
                     crnProtocol.setzSpeed(siemensNet.getByteTransform().TransInt16(result.Content, 42));
@@ -229,12 +243,6 @@
                     crnProtocol.setyDistance(siemensNet.getByteTransform().TransInt16(result.Content, 54));
                     crnProtocol.setxDuration(siemensNet.getByteTransform().TransInt16(result.Content, 58));
                     crnProtocol.setyDuration(siemensNet.getByteTransform().TransInt16(result.Content, 62));
-                }
-                //宸ヤ綅2鏁版嵁  鏃犲垯鏃犻渶鐞嗕細
-                try{
-
-                }catch (Exception e){
-
                 }
 
                 OutputQueue.CRN.offer(MessageFormat.format("銆恵0}銆慬id:{1}] <<<<< 瀹炴椂鏁版嵁鏇存柊鎴愬姛",DateUtils.convert(new Date()), slave.getId()));
diff --git a/src/main/resources/mapper/BasCrnpMapper.xml b/src/main/resources/mapper/BasCrnpMapper.xml
index 8cf886b..e2ac8b4 100644
--- a/src/main/resources/mapper/BasCrnpMapper.xml
+++ b/src/main/resources/mapper/BasCrnpMapper.xml
@@ -8,6 +8,8 @@
         <result column="in_enable" property="inEnable" />
         <result column="out_enable" property="outEnable" />
         <result column="crn_sts" property="crnSts" />
+        <result column="crn_status_one" property="crnStatusOne" />
+        <result column="crn_status_two" property="crnStatusTwo" />
         <result column="wrk_no" property="wrkNo" />
         <result column="wrk_no_two" property="wrkNoTwo" />
         <result column="crn_err" property="crnErr" />

--
Gitblit v1.9.1