From a12efdaa9b8a86c32111060fe01a6f85e1a14bfe Mon Sep 17 00:00:00 2001 From: Guoqs <123@jsowell.com> Date: Thu, 12 Sep 2024 16:27:39 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E7=94=B5=E5=8D=95=E8=BD=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PowerHeartbeatHandler.java | 29 +++++++++++++++++++ .../ebike/deviceupload/EBikeMessageCmd06.java | 2 +- .../impl/OrderBasicInfoServiceImpl.java | 2 +- 3 files changed, 31 insertions(+), 2 deletions(-) diff --git a/jsowell-netty/src/main/java/com/jsowell/netty/handler/electricbicycles/PowerHeartbeatHandler.java b/jsowell-netty/src/main/java/com/jsowell/netty/handler/electricbicycles/PowerHeartbeatHandler.java index 4d4369d5d..c1d0d385e 100644 --- a/jsowell-netty/src/main/java/com/jsowell/netty/handler/electricbicycles/PowerHeartbeatHandler.java +++ b/jsowell-netty/src/main/java/com/jsowell/netty/handler/electricbicycles/PowerHeartbeatHandler.java @@ -3,7 +3,9 @@ package com.jsowell.netty.handler.electricbicycles; import com.alibaba.fastjson2.JSON; import com.jsowell.common.constant.Constants; import com.jsowell.common.core.domain.ebike.EBikeDataProtocol; +import com.jsowell.common.core.domain.ykc.RealTimeMonitorData; import com.jsowell.common.enums.ebike.PortStatusEnum; +import com.jsowell.common.util.DateUtils; import com.jsowell.common.util.StringUtils; import com.jsowell.common.util.YKCUtils; import com.jsowell.netty.factory.EBikeOperateFactory; @@ -11,6 +13,7 @@ import com.jsowell.pile.domain.ebike.AbsEBikeMessage; import com.jsowell.pile.domain.ebike.EBikeCommandEnum; import com.jsowell.pile.domain.ebike.deviceupload.EBikeMessageCmd06; import com.jsowell.pile.domain.ebike.deviceupload.EBikeMessageCmd21; +import com.jsowell.pile.service.PileBasicInfoService; import com.jsowell.pile.service.PileConnectorInfoService; import io.netty.channel.ChannelHandlerContext; import lombok.extern.slf4j.Slf4j; @@ -30,6 +33,9 @@ public class PowerHeartbeatHandler extends AbstractEBikeHandler { @Autowired private PileConnectorInfoService pileConnectorInfoService; + @Autowired + private PileBasicInfoService pileBasicInfoService; + @Override public void afterPropertiesSet() throws Exception { EBikeOperateFactory.register(type, this); @@ -54,9 +60,32 @@ public class PowerHeartbeatHandler extends AbstractEBikeHandler { // updatePileStatus(message); + saveRealTimeMonitorData(message); + return getResult(dataProtocol, Constants.zeroByteArray); } + /** + * 保存实时监控数据 + * @param message + */ + private void saveRealTimeMonitorData(EBikeMessageCmd06 message) { + EBikeMessageCmd06.PowerHeartbeat powerHeartbeat = message.getPowerHeartbeat(); + // 组装数据 + RealTimeMonitorData realTimeMonitorData = new RealTimeMonitorData(); + realTimeMonitorData.setPileSn(message.getPhysicalId() + ""); + realTimeMonitorData.setConnectorCode(powerHeartbeat.getPort()); + realTimeMonitorData.setPileConnectorCode(realTimeMonitorData.getPileSn() + realTimeMonitorData.getConnectorCode()); + realTimeMonitorData.setTransactionCode(powerHeartbeat.getOrderCode()); + realTimeMonitorData.setConnectorStatus(powerHeartbeat.getPortStatus()); + realTimeMonitorData.setOutputVoltage(powerHeartbeat.getVoltage()); + realTimeMonitorData.setOutputCurrent(powerHeartbeat.getCurrent()); + realTimeMonitorData.setOutputPower(""); + realTimeMonitorData.setDateTime(DateUtils.getDateTime()); + + pileBasicInfoService.saveRealTimeMonitorData2Redis(realTimeMonitorData); + } + /** * 更新充电桩状态 * @param message diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/domain/ebike/deviceupload/EBikeMessageCmd06.java b/jsowell-pile/src/main/java/com/jsowell/pile/domain/ebike/deviceupload/EBikeMessageCmd06.java index aeecbb646..edeeebe22 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/domain/ebike/deviceupload/EBikeMessageCmd06.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/domain/ebike/deviceupload/EBikeMessageCmd06.java @@ -162,7 +162,7 @@ public class EBikeMessageCmd06 extends AbsEBikeMessage { this.avgPower = BytesUtil.bytesToIntLittle(Arrays.copyOfRange(dataBytes, startIndex, startIndex = startIndex + length)) * 0.1 + ""; length = 16; - this.orderCode = BytesUtil.bcd2StrLittle(Arrays.copyOfRange(dataBytes, startIndex, startIndex = startIndex + length)); + this.orderCode = BytesUtil.bcd2Str(Arrays.copyOfRange(dataBytes, startIndex, startIndex = startIndex + length)); length = 2; this.peakPower = BytesUtil.bytesToIntLittle(Arrays.copyOfRange(dataBytes, startIndex, startIndex = startIndex + length)) + ""; diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java index 118d3d301..1b3f95988 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java @@ -3177,7 +3177,7 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService { try { wxAppletRemoteService.startChargingSendMsg(orderInfo.getMemberId(), orderInfo.getOrderCode()); } catch (Exception e) { - logger.info("推送小程序启动充电消息error", e); + logger.error("推送小程序启动充电消息error", e); } }