bugfix ebike auto register fallback

This commit is contained in:
Guoqs
2026-06-13 10:36:46 +08:00
parent d569f70315
commit d7e8562f42
6 changed files with 564 additions and 46 deletions

View File

@@ -47,9 +47,15 @@ public class HeartbeatHandler extends AbstractEBikeHandler {
public byte[] supplyProcess(EBikeDataProtocol dataProtocol, ChannelHandlerContext ctx) {
// 解析字节数组
EBikeMessageCmd21 eBikeMessageCmd21 = new EBikeMessageCmd21(dataProtocol.getBytes());
String pileSn = eBikeMessageCmd21.getPhysicalId() + "";
// 保存时间
saveLastTimeAndCheckChannel(eBikeMessageCmd21.getPhysicalId() + "", ctx);
saveLastTimeAndCheckChannel(pileSn, ctx);
log.info("设备心跳包:{}", JSON.toJSONString(eBikeMessageCmd21));
try {
pileBasicInfoService.ensureEBikePileRegistered(pileSn, eBikeMessageCmd21.getPortNumber(), "heartbeat_0x21");
} catch (Exception e) {
log.error("电单车心跳兜底建档失败, pileSn:{}, portNumber:{}", pileSn, eBikeMessageCmd21.getPortNumber(), e);
}
// 更新充电桩状态
updatePileStatus(eBikeMessageCmd21);
return getResult(dataProtocol, Constants.zeroByteArray);