mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-04-20 11:05:18 +08:00
update 电单车
This commit is contained in:
@@ -4,7 +4,6 @@ import com.alibaba.fastjson2.JSON;
|
||||
import com.jsowell.common.constant.Constants;
|
||||
import com.jsowell.common.core.domain.ebike.EBikeDataProtocol;
|
||||
import com.jsowell.common.enums.ebike.PortStatusEnum;
|
||||
import com.jsowell.common.util.StringUtils;
|
||||
import com.jsowell.common.util.YKCUtils;
|
||||
import com.jsowell.netty.factory.EBikeOperateFactory;
|
||||
import com.jsowell.pile.domain.ebike.AbsEBikeMessage;
|
||||
@@ -75,23 +74,8 @@ public class HeartbeatHandler extends AbstractEBikeHandler {
|
||||
String pileConnectorCode = pileSn + connectorCode;
|
||||
// 电单车协议状态
|
||||
String eBikeStatus = portStatus.get(i);
|
||||
pileConnectorInfoService.updateConnectorStatus(pileConnectorCode, eBikeStatusTransformDBStatus(eBikeStatus));
|
||||
pileConnectorInfoService.updateConnectorStatus(pileConnectorCode, PortStatusEnum.eBikeStatusTransformDBStatus(eBikeStatus));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 电单车协议状态转换为数据库状态
|
||||
* @param eBikeStatus
|
||||
* @return
|
||||
*/
|
||||
private String eBikeStatusTransformDBStatus(String eBikeStatus) {
|
||||
String dbStatus = Constants.ZERO; // 默认0-离网
|
||||
if (StringUtils.isNotBlank(eBikeStatus)) {
|
||||
PortStatusEnum enumByValue = PortStatusEnum.getEnumByValue(Integer.parseInt(eBikeStatus));
|
||||
if (enumByValue != null) {
|
||||
dbStatus = enumByValue.getDbStatus();
|
||||
}
|
||||
}
|
||||
return dbStatus;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,13 +6,11 @@ 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;
|
||||
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;
|
||||
@@ -20,8 +18,6 @@ import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 端口充电时功率心跳包
|
||||
*/
|
||||
@@ -58,8 +54,10 @@ public class PowerHeartbeatHandler extends AbstractEBikeHandler {
|
||||
EBikeMessageCmd06.PowerHeartbeat powerHeartbeat = message.getPowerHeartbeat();
|
||||
log.info("端口充电时功率心跳包:{}", JSON.toJSONString(message));
|
||||
|
||||
// updatePileStatus(message);
|
||||
// 更新枪口状态
|
||||
updatePileStatus(message);
|
||||
|
||||
// 保存实时监控数据
|
||||
saveRealTimeMonitorData(message);
|
||||
|
||||
return getResult(dataProtocol, Constants.zeroByteArray);
|
||||
@@ -80,7 +78,7 @@ public class PowerHeartbeatHandler extends AbstractEBikeHandler {
|
||||
realTimeMonitorData.setConnectorStatus(powerHeartbeat.getPortStatus());
|
||||
realTimeMonitorData.setOutputVoltage(powerHeartbeat.getVoltage());
|
||||
realTimeMonitorData.setOutputCurrent(powerHeartbeat.getCurrent());
|
||||
realTimeMonitorData.setOutputPower("");
|
||||
// realTimeMonitorData.setOutputPower("");
|
||||
realTimeMonitorData.setDateTime(DateUtils.getDateTime());
|
||||
|
||||
pileBasicInfoService.saveRealTimeMonitorData2Redis(realTimeMonitorData);
|
||||
@@ -90,34 +88,12 @@ public class PowerHeartbeatHandler extends AbstractEBikeHandler {
|
||||
* 更新充电桩状态
|
||||
* @param message
|
||||
*/
|
||||
private void updatePileStatus(EBikeMessageCmd21 message) {
|
||||
private void updatePileStatus(EBikeMessageCmd06 message) {
|
||||
String pileSn = message.getPhysicalId() + "";
|
||||
EBikeMessageCmd21.DeviceHeartbeat deviceHeartbeat = message.getDeviceHeartbeat();
|
||||
int portNumber = deviceHeartbeat.getPortNumber();
|
||||
List<String> portStatus = deviceHeartbeat.getPortStatus();
|
||||
for (int i = 0; i < portNumber; i++) {
|
||||
// 组装pile_connector_info表数据
|
||||
String connectorCode = String.format("%1$02d", i + 1);
|
||||
String pileConnectorCode = pileSn + connectorCode;
|
||||
// 电单车协议状态
|
||||
String eBikeStatus = portStatus.get(i);
|
||||
pileConnectorInfoService.updateConnectorStatus(pileConnectorCode, eBikeStatusTransformDBStatus(eBikeStatus));
|
||||
}
|
||||
EBikeMessageCmd06.PowerHeartbeat powerHeartbeat = message.getPowerHeartbeat();
|
||||
String connectorCode = powerHeartbeat.getPort();
|
||||
String portStatus = powerHeartbeat.getPortStatus();
|
||||
pileConnectorInfoService.updateConnectorStatus(pileSn + connectorCode, PortStatusEnum.eBikeStatusTransformDBStatus(portStatus));
|
||||
}
|
||||
|
||||
/**
|
||||
* 电单车协议状态转换为数据库状态
|
||||
* @param eBikeStatus
|
||||
* @return
|
||||
*/
|
||||
private String eBikeStatusTransformDBStatus(String eBikeStatus) {
|
||||
String dbStatus = Constants.ZERO; // 默认0-离网
|
||||
if (StringUtils.isNotBlank(eBikeStatus)) {
|
||||
PortStatusEnum enumByValue = PortStatusEnum.getEnumByValue(Integer.parseInt(eBikeStatus));
|
||||
if (enumByValue != null) {
|
||||
dbStatus = enumByValue.getDbStatus();
|
||||
}
|
||||
}
|
||||
return dbStatus;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user