From 7a3c30925acaddbea6199d63c046b1916b4e3416 Mon Sep 17 00:00:00 2001
From: liuhaonan <konodioda2333@vip.qq.com>
Date: 星期六, 02 四月 2022 16:45:10 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/amqp/processor/c3ChargingProcessor.java | 41 +++++++++++++++++++++++++++++++++++++----
1 files changed, 37 insertions(+), 4 deletions(-)
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/amqp/processor/c3ChargingProcessor.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/amqp/processor/c3ChargingProcessor.java
index ab09876..8ffc1dd 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/amqp/processor/c3ChargingProcessor.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/amqp/processor/c3ChargingProcessor.java
@@ -1,10 +1,15 @@
package com.sandu.ximon.admin.manager.iot.amqp.processor;
import com.sandu.common.util.SpringContextHolder;
+import com.sandu.ximon.admin.config.RedisConfig;
+import com.sandu.ximon.admin.manager.iot.frame.inner.report.A5C3CommonReportInnerFrame;
import com.sandu.ximon.admin.manager.iot.frame.inner.report.A5C3HeartbeatReportInnerFrame;
+import com.sandu.ximon.admin.manager.iot.frame.inner.report.A5C3OperationReportInnerFrame;
import com.sandu.ximon.admin.manager.iot.rrpc.dto.CommonFrame;
-import com.sandu.ximon.admin.manager.iot.rrpc.enums.C3ChargingReportEnum;
+import com.sandu.ximon.admin.manager.iot.rrpc.enums.C3ChargingEnum;
+import com.sandu.ximon.admin.manager.iot.rrpc.enums.C3mRedisConstant;
import com.sandu.ximon.admin.service.C3ChargingService;
+import com.sandu.ximon.admin.utils.RedisUtils;
import lombok.extern.slf4j.Slf4j;
/**
@@ -28,13 +33,41 @@
@Override
public void process(String productKey, String deviceName, CommonFrame frame) {
String functionCode = frame.getPayload().substring(2, 4);
- if (C3ChargingReportEnum.HeartBeat_Data.getCode().equals(functionCode)) {
- log.info("蹇冭烦鐩稿簲鈥斺�擟3鍏呯數妗╂暟鎹�"+productKey+" ------- "+deviceName);
+ if (C3ChargingEnum.HEART_BEAT.getCode().equals(functionCode)) {
+ log.info("蹇冭烦鐩稿簲鈥斺�擟3鍏呯數妗╂暟鎹�" + productKey + " ------- " + deviceName);
A5C3HeartbeatReportInnerFrame heartbeatReportInnerFrame = new A5C3HeartbeatReportInnerFrame().transformFrame(frame.getPayload());
log.info("C3鍏呯數妗╀笂鎶ュ鐞哶heartbeatReportInnerFrame");
log.info(heartbeatReportInnerFrame.toString());
- SpringContextHolder.getBean(C3ChargingService.class).saveReportData(deviceName, heartbeatReportInnerFrame.getHeartBeatDataPackage());
+ if (heartbeatReportInnerFrame.isValidate()) {
+ SpringContextHolder.getBean(C3ChargingService.class).updateReportState(deviceName
+ , heartbeatReportInnerFrame.getHeartBeatDataPackage().getC3Mac()
+ , heartbeatReportInnerFrame.getHeartBeatDataPackage().getStatusBit()
+ , heartbeatReportInnerFrame.getHeartBeatDataPackage().getDeviceTemperature());
+
+ RedisUtils.getBean().set(C3mRedisConstant.C3_STATUS.getCode() + heartbeatReportInnerFrame.getHeartBeatDataPackage().getC3Mac()
+ , 1, 300L);
+ }
+ } else if (C3ChargingEnum.StartCharging.getCode().equals(functionCode)) {
+ log.info("蹇冭烦鍝嶅簲鈥斺�擟3鍏呯數妗╁紑濮嬪厖鐢�");
+ A5C3OperationReportInnerFrame operationReportInnerFrame = new A5C3OperationReportInnerFrame().transformFrame(frame.getPayload());
+ log.info("C3鍏呯數妗╀笂鎶ュ鐞哶heartbeatReportInnerFrame");
+ log.info(operationReportInnerFrame.toString());
+
+// if (operationReportInnerFrame.isValidate()) {
+// SpringContextHolder.getBean(C3ChargingService.class).saveReportData(deviceName, operationReportInnerFrame.getHeartBeatDataPackage());
+// }
+ } else if (C3ChargingEnum.NETWORK_REQUEST.getCode().equals(functionCode)) {
+ A5C3CommonReportInnerFrame netRequestFrame = new A5C3CommonReportInnerFrame().transformFrame(frame.getPayload());
+ log.info("C3鍏呯數妗╀笂鎶ュ鐞哶netRequestFrame");
+ log.info(netRequestFrame.toString());
+
+ if (netRequestFrame.isValidate()) {
+ boolean b = SpringContextHolder.getBean(C3ChargingService.class).saveReporEquipment(deviceName, netRequestFrame.getMcuUdid(), netRequestFrame.getDestinationAddress());
+ if (!b) {
+ return;
+ }
+ }
}
}
}
--
Gitblit v1.9.3