From a36535db12500082c443ef86a0c53bc039f5b615 Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期一, 26 九月 2022 18:30:04 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/frame/inner/report/A5LightErrorCodeReportInnerFrame.java | 14 ++++++++++----
1 files changed, 10 insertions(+), 4 deletions(-)
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/frame/inner/report/A5LightErrorCodeReportInnerFrame.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/frame/inner/report/A5LightErrorCodeReportInnerFrame.java
index 5a44b37..527dcc1 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/frame/inner/report/A5LightErrorCodeReportInnerFrame.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/frame/inner/report/A5LightErrorCodeReportInnerFrame.java
@@ -1,5 +1,6 @@
package com.sandu.ximon.admin.manager.iot.frame.inner.report;
+import cn.hutool.core.util.HexUtil;
import cn.hutool.core.util.StrUtil;
import com.sandu.ximon.admin.manager.iot.frame.inner.BaseResponseInnerFrame;
import com.sandu.ximon.admin.manager.iot.rrpc.util.CRC32Utils;
@@ -23,12 +24,14 @@
/**
* 鏁呴殰鐮�
*/
- private String errorCode;
+ private int errorCode;
@Override
public A5LightErrorCodeReportInnerFrame transformFrame(String hex) {
- if (StrUtil.isBlank(hex)) {
+ if (StrUtil.isBlank(hex) || hex.length() != 24) {
+ System.out.println("hex is blank or length is not 24");
return null;
+
}
// MQTT閫氫俊鏂瑰紡(1)
setConnectType(hex.substring(0, 2));
@@ -39,10 +42,13 @@
setDestinationAddress(hex.substring(8, 12));
- setErrorCode(hex.substring(12, 16));
+ String errorCodeHex = hex.substring(12, 16);
+ errorCode = HexUtil.hexToInt(errorCodeHex);
+ System.out.println("鏁呴殰鐮侊細" + errorCodeHex + " - " + errorCode);
+
setCrc32(hex.substring(hex.length() - 8));
// 鏍¢獙CRC32
- String frame = getFunctionCode() + getPayloadLength() + getDestinationAddress() + getErrorCode();
+ String frame = getFunctionCode() + getPayloadLength() + getDestinationAddress() + errorCodeHex;
this.setValidate(CRC32Utils.validateFrame(frame, getCrc32()));
return this;
}
--
Gitblit v1.9.3