From 8d0d0ca7d0d40223181067fde7afc697fa3e54fb Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期二, 28 六月 2022 16:22:27 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/frame/inner/request/C3QrCodeReqInnerFrame.java |   11 +++++++----
 1 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/frame/inner/request/C3QrCodeReqInnerFrame.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/frame/inner/request/C3QrCodeReqInnerFrame.java
index 6cefff4..456a81e 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/frame/inner/request/C3QrCodeReqInnerFrame.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/frame/inner/request/C3QrCodeReqInnerFrame.java
@@ -1,9 +1,11 @@
 package com.sandu.ximon.admin.manager.iot.frame.inner.request;
 
+import cn.hutool.core.util.HexUtil;
 import com.sandu.ximon.admin.manager.iot.frame.inner.IRequestInnerFrame;
 import com.sandu.ximon.admin.manager.iot.rrpc.enums.C3ChargingEnum;
 import com.sandu.ximon.admin.manager.iot.rrpc.enums.MQTTConnectTypeEnum;
 import com.sandu.ximon.admin.manager.iot.rrpc.util.CRC32Utils;
+import com.sandu.ximon.admin.manager.iot.rrpc.util.SupplementUtils;
 
 /**
  * @author ZZQ
@@ -13,15 +15,16 @@
     private final String payload;
 
     public C3QrCodeReqInnerFrame(String c3Mac, String qrCodeData) {
-        payload = c3Mac + qrCodeData;
-
+        System.out.println("qrCodeData:    " + qrCodeData);
+        String encodeHexStr = HexUtil.encodeHexStr(qrCodeData).toUpperCase();
+        payload = c3Mac + encodeHexStr;
     }
 
     @Override
     public String getEncodeFrame() {
-        String functionCode = C3ChargingEnum.QR_CODE_REQUEST.getCode();
+        String functionCode = C3ChargingEnum.QrCode.getCode();
         //闀垮害鍙彉锛屼笉瀹氶暱
-        String payloadLength = payload.length() + "";
+        String payloadLength = SupplementUtils.suppleZero(Integer.toHexString((payload.length() / 2)).toUpperCase(), 4);
         String frame = functionCode + payloadLength + payload;
         return MQTTConnectTypeEnum.SYNCHRONIZATION.getCode() + frame.toUpperCase() + CRC32Utils.getCRC32(frame.toUpperCase());
     }

--
Gitblit v1.9.3