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