From 6e899c21d86bd68adbd9b95caac98466b57033a2 Mon Sep 17 00:00:00 2001
From: whycq <123456>
Date: 星期五, 05 八月 2022 09:44:05 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/core/thread/SiemensCrnThread.java  |   14 ++++++++------
 src/main/java/com/zy/core/enums/CrnLiftPosType.java     |    8 +++++---
 src/main/java/com/zy/asrs/controller/CrnController.java |   14 ++++++++++++--
 src/main/resources/application.yml                      |   18 ++++++++++++------
 4 files changed, 37 insertions(+), 17 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/CrnController.java b/src/main/java/com/zy/asrs/controller/CrnController.java
index 6376556..4d02d12 100644
--- a/src/main/java/com/zy/asrs/controller/CrnController.java
+++ b/src/main/java/com/zy/asrs/controller/CrnController.java
@@ -394,8 +394,18 @@
         if (param.getCrnNo() == null) {
             throw new CoolException("璇烽�夋嫨鍫嗗灈鏈�");
         }
-        MessageQueue.clear(SlaveType.Crn, param.getCrnNo());
-        return R.ok("娓呴櫎鍛戒护鎴愬姛");
+        CrnCommand command = new CrnCommand();
+        command.setCrnNo(param.getCrnNo()); // 鍫嗗灈鏈虹紪鍙�
+        command.setTaskNo((short) 0); // 宸ヤ綔鍙�
+        command.setAckFinish((short) 0);  // 浠诲姟瀹屾垚纭浣�
+        command.setTaskMode(CrnTaskModeType.NONE); // 浠诲姟妯″紡
+        command.setSourcePosX((short) 0);     // 婧愬簱浣嶆帓
+        command.setSourcePosY((short) 0);     // 婧愬簱浣嶅垪
+        command.setSourcePosZ((short) 0);     // 婧愬簱浣嶅眰
+        command.setDestinationPosX((short) 0);     // 鐩爣搴撲綅鎺�
+        command.setDestinationPosY((short) 0);     // 鐩爣搴撲綅鍒�
+        command.setDestinationPosZ((short) 0);     // 鐩爣搴撲綅灞�
+        return crnControl(command)?R.ok():R.error();
     }
 
     @ManagerAuth(memo = "鎵嬪姩澶嶄綅")
diff --git a/src/main/java/com/zy/core/enums/CrnLiftPosType.java b/src/main/java/com/zy/core/enums/CrnLiftPosType.java
index bd2514d..71b809c 100644
--- a/src/main/java/com/zy/core/enums/CrnLiftPosType.java
+++ b/src/main/java/com/zy/core/enums/CrnLiftPosType.java
@@ -3,9 +3,11 @@
 public enum CrnLiftPosType {
 
     ERROR(-1, "鏈煡"),   // 涓嶅湪瀹氫綅
-    DOWN(0, "涓嬪畾浣�"),  //
-    UP(1, "涓婂畾浣�"),   //
-    NONE(2, "涓嶅湪瀹氫綅"),   // 涓嶅湪瀹氫綅
+    NONE(0, "涓嶅湪瀹氫綅"),   // 涓嶅湪瀹氫綅
+    _DOWN(1, "鍙屾繁浣庝綅"),  //
+    DOWN(2, "鍗曟繁浣庝綅"),  //
+    _UP(3, "鍗曟繁楂樹綅"),   //
+    UP(4, "鍙屾繁楂樹綅"),   //
     ;
 
     public Integer id;
diff --git a/src/main/java/com/zy/core/thread/SiemensCrnThread.java b/src/main/java/com/zy/core/thread/SiemensCrnThread.java
index 31b9ff5..9bc94c7 100644
--- a/src/main/java/com/zy/core/thread/SiemensCrnThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensCrnThread.java
@@ -151,6 +151,7 @@
             if (result.IsSuccess) {
                 if (null == crnProtocol) {
                     crnProtocol = new CrnProtocol();
+                    crnProtocol.setCrnNo(slave.getId());
                 }
                 crnProtocol.setMode(siemensNet.getByteTransform().TransInt16(result.Content, 0));
                 crnProtocol.setTaskNo(siemensNet.getByteTransform().TransInt16(result.Content, 2));
@@ -231,9 +232,9 @@
             log.error("鍫嗗灈鏈哄啓鍏ュ懡浠や负绌�");
             return false;
         }
-        convertRow(command);
+//        convertRow(command);
         command.setCrnNo(slave.getId());
-        short[] array = new short[12];
+        short[] array = new short[10];
         array[0] = command.getAckFinish();
         array[1] = command.getTaskNo();
         array[2] = command.getTaskMode();
@@ -243,14 +244,15 @@
         array[6] = command.getDestinationPosX();
         array[7] = command.getDestinationPosY();
         array[8] = command.getDestinationPosZ();
-        array[9] = command.getSourceStaNo();
-        array[10] = command.getDestinationStaNo();
-        array[11] = command.getCommand();
+//        array[9] = command.getSourceStaNo();
+//        array[10] = command.getDestinationStaNo();
+        array[9] = command.getCommand();
         OperateResult result = siemensNet.Write("DB100.0", array);
 
         if (command.getAckFinish() == 0) {
             short commandFinish = 1;
-            result = siemensNet.Write("DB100.22", commandFinish);
+            Thread.sleep(100L);
+            result = siemensNet.Write("DB100.18", commandFinish);
         }
 
         try {
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index d9ce534..a21257d 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -47,8 +47,10 @@
   # 鍫嗗灈鏈�1
   crn[0]:
     id: 1
-    ip: 10.10.10.10
-    port: 8888
+    ip: 10.10.10.101
+    port: 102
+    rack: 0
+    slot: 0
     # 鍋忕Щ閲忥紝褰撳爢鍨涙満绔欑偣鍒楀彿=1鏃讹紝鍋忕Щ閲�=2
     offset: 2
     demo: false
@@ -69,8 +71,10 @@
   # 鍫嗗灈鏈�2
   crn[1]:
     id: 2
-    ip: 10.10.10.13
-    port: 8888
+    ip: 10.10.10.111
+    port: 102
+    rack: 0
+    slot: 0
     # 鍋忕Щ閲忥紝褰撳爢鍨涙満绔欑偣鍒楀彿=1鏃讹紝鍋忕Щ閲�=2
     offset: 2
     demo: false
@@ -91,8 +95,10 @@
   # 鍫嗗灈鏈�3
   crn[2]:
     id: 3
-    ip: 10.10.10.16
-    port: 8888
+    ip: 10.10.10.121
+    port: 102
+    rack: 0
+    slot: 0
     # 鍋忕Щ閲忥紝褰撳爢鍨涙満绔欑偣鍒楀彿=1鏃讹紝鍋忕Щ閲�=2
     offset: 2
     demo: false

--
Gitblit v1.9.1