From 231cdeb9b7a55ba08fb8cffda35f5535b9292873 Mon Sep 17 00:00:00 2001
From: jiazx0107@163.com <jiazx0107@163.com>
Date: 星期四, 14 十二月 2023 19:33:41 +0800
Subject: [PATCH] 提交正来电子协议解析-2

---
 src/main/java/com/fzzy/protocol/zldz/server/SessionListener.java |   31 ++++++++++++++++++++++++-------
 1 files changed, 24 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/fzzy/protocol/zldz/server/SessionListener.java b/src/main/java/com/fzzy/protocol/zldz/server/SessionListener.java
index ccf6678..edb2881 100644
--- a/src/main/java/com/fzzy/protocol/zldz/server/SessionListener.java
+++ b/src/main/java/com/fzzy/protocol/zldz/server/SessionListener.java
@@ -4,7 +4,10 @@
 import com.fzzy.api.data.ApiCommonDevice;
 import com.fzzy.api.utils.SpringUtil;
 import com.fzzy.gateway.service.GatewayDeviceService;
-import com.fzzy.protocol.bhzn.server.BhznGrainV2ServerUtils;
+import com.fzzy.io.request.BaseRequest;
+import com.fzzy.protocol.zldz.cmd.OnLineCommandBuilder;
+import com.fzzy.protocol.zldz.data.Message;
+import com.ld.io.api.InvokeResult;
 import com.ld.io.api.IoSession;
 import com.ld.io.api.IoSessionListener;
 import lombok.extern.slf4j.Slf4j;
@@ -26,13 +29,27 @@
         log.info("++++鏂板缓杩炴帴++++-IP={}锛孭ORT={}", session.getAddress(), session.getPort());
 
         // 娣诲姞鑷畾涔変笟鍔D
-        session.setBusinessKey(BhznGrainV2ServerUtils.getServerKey(session.getAddress(), session.getPort()));
+        session.setBusinessKey(ZldzServerUtil.getServerKey(session.getAddress(), session.getPort()));
 
         //鎵ц鍒嗘満涓婄嚎
-        ApiCommonDevice commonDevice = Constant.updateCacheOnline(session.getAddress(), session.getPort());
-        if (null == commonDevice.getSn()) {
-            log.error("------璁惧涓婄嚎锛岀郴缁熶腑鏈彂鐜板綋鍓嶉厤缃�-------");
+        Constant.updateCacheOnline(session.getAddress(), session.getPort());
+
+
+        /***********************璁惧涓婄嚎鍚庝富鍔ㄨ幏鍙栭厤缃俊鎭�******************/
+
+        BaseRequest request = new BaseRequest();
+        request.setIp(session.getAddress());
+        request.setPort(session.getPort());
+        request.setCompanyId(ZldzServerUtil.DEFAULT_COMPANY);
+        // Step1 鐢熸垚鍦ㄧ嚎娴嬭瘯鍛戒护
+        Message message = OnLineCommandBuilder.getInstance().buildMessage(request);
+        // 鍙戦�佸懡浠�
+        InvokeResult result = session.invoke(message.getByteMsg());
+        //濡傛灉鍛戒护鍙戦�佸け璐ワ紝鐩存帴韪㈡帀杩炴帴
+        if (!InvokeResult.SUCCESS.getCode().equals(result.getCode())) {
+            session.destroy();
         }
+        log.info("骞冲彴------->>鍒嗘満---璁惧涓婄嚎锛岃嚜鍔ㄥ彂閫佽澶囬厤缃俊鎭姹傚懡浠�--{}",message);
     }
 
     /**
@@ -51,9 +68,9 @@
 
         if (null == gatewayDeviceService) {
             gatewayDeviceService = SpringUtil.getBean(GatewayDeviceService.class);
-
-            gatewayDeviceService.OfflineByCommonDevice(commonDevice);
         }
 
+        gatewayDeviceService.OfflineByCommonDevice(commonDevice);
+
     }
 }

--
Gitblit v1.9.3