From 66b091963fb0f3356f27ec094c013369bf91db89 Mon Sep 17 00:00:00 2001
From: jiazx0107@163.com <jiazx0107@163.com>
Date: 星期日, 24 十二月 2023 14:02:19 +0800
Subject: [PATCH] 游仙协议解析-3

---
 src/main/java/com/fzzy/protocol/youxian0/service/Youxian0GatewayGrainService.java |   27 ++++++++++++++++-----------
 1 files changed, 16 insertions(+), 11 deletions(-)

diff --git a/src/main/java/com/fzzy/protocol/youxian0/service/Youxian0GatewayGrainService.java b/src/main/java/com/fzzy/protocol/youxian0/service/Youxian0GatewayGrainService.java
index b15b8ba..ba4473e 100644
--- a/src/main/java/com/fzzy/protocol/youxian0/service/Youxian0GatewayGrainService.java
+++ b/src/main/java/com/fzzy/protocol/youxian0/service/Youxian0GatewayGrainService.java
@@ -65,22 +65,26 @@
             String hexStr = "";
             InvokeResult message;
             for (int i = 1; i <= cableX; i++) {
-                if (1 == i) start = 255;
-                start = i * cableY + 1;
+                if (1 == i) {
+                    start = 255;
+                } else {
+                    start = (i - 1) * cableY + 1;
+                }
 
                 hexStr = this.buildGrainCmd(device, i, start, length);
 
-                // 鍙戦�佸懡浠�
-                Channel channel = ClientEngine.getChannel(device.getIp());
+                // 鍙戦�佸懡浠� TODO----->>>鏆傛椂璋冩暣涓烘瘡娆″垱寤轰竴涓柊杩炴帴
+                //Channel channel = ClientEngine.getChannel(device.getIp());
+                Channel channel = null;
                 if (null == channel) {
                     ClientEngine clientEngine = new ClientEngine(device.getIp(), device.getPort());
                     clientEngine.start();
-                    Thread.sleep(500);
+                    Thread.sleep(300);
                     channel = clientEngine.getChannel();
                 }
                 message = ClientEngine.send2(hexStr, channel);
 
-                log.error("骞冲彴------>>>>鎺у埗鏌滐細鍙戦�佺伯鎯呮娴嬪懡浠�-{}", message);
+                log.error("骞冲彴------>>>>涓绘帶锛氬彂閫佺伯鎯呮娴嬪懡浠�-{}---{}", message,hexStr);
 
                 // 灏佽杩斿洖淇℃伅
                 if (!InvokeResult.SUCCESS.getCode().equals(message.getCode())) {
@@ -118,22 +122,23 @@
         //寮�濮嬪皝瑁呮秷鎭綋-涓绘満ID
         String deviceSn = device.getDeviceSn();
         deviceSn = BytesUtil.intToHexStr1(Integer.valueOf(deviceSn));
-        content = content.replaceAll("\\{id}", deviceSn);
+        content = content.replace("{id}", deviceSn);
+        content = content.replace("{id}", deviceSn);
 
         //鍛戒护ID
         String msgIdHex = BytesUtil.intToHexStr1(cur);
-        content = content.replace("\\{msgId}", msgIdHex);
+        content = content.replace("{msgId}", msgIdHex);
 
         //鍛戒护绫诲瀷
-        content = content.replace("\\{funId}", ServiceUtils.FUNCTION_66);
+        content = content.replace("{funId}", ServiceUtils.FUNCTION_66);
 
         //寮�濮嬫牴鍙�
         String startCurHex = BytesUtil.intToHexStr1(startCur);
-        content = content.replace("\\{start}", startCurHex);
+        content = content.replace("{start}", startCurHex);
 
         //鎴彇闀垮害
         String lenHex = BytesUtil.intToHexStr1(length);
-        content = content.replace("\\{length}", lenHex);
+        content = content.replace("{length}", lenHex);
 
         //鏍¢獙鐮�
         String crcCode = this.getCRC(content);

--
Gitblit v1.9.3