mirror of
https://gitee.com/san-bing/JChargePointProtocol
synced 2026-05-06 02:49:57 +08:00
!33 新增云快充启动充电的逻辑卡号和物理卡号,和双枪并充序号以及双枪并充的测试接口
* 新增云快充启动充电的逻辑卡号和物理卡号,和双枪并充序号以及双枪并充的测试接口 * CMD路由优化 * Merge remote-tracking branch 'gitee/master' into Feat_Lvneng_module_optimize * cmd路由优化 * cmd路由优化 * 绿能模块优化 * 新增云快充1.7 0x3D * 添加停止充电的TestController
This commit is contained in:
@@ -12,13 +12,13 @@ import sanbing.jcpp.protocol.ProtocolBootstrap;
|
||||
import sanbing.jcpp.protocol.ProtocolMessageProcessor;
|
||||
import sanbing.jcpp.protocol.lvneng.LvnengProtocolMessageProcessor;
|
||||
|
||||
import static sanbing.jcpp.protocol.lvneng.v340.LvnengV340ProtocolBootstrap.PROTOCOL_NAME;
|
||||
import static sanbing.jcpp.protocol.lvneng.LvnengProtocolConstants.ProtocolNames.LVNENG_V340;
|
||||
|
||||
@ProtocolComponent(PROTOCOL_NAME)
|
||||
@ProtocolComponent(LVNENG_V340)
|
||||
@Slf4j
|
||||
public class LvnengV340ProtocolBootstrap extends ProtocolBootstrap {
|
||||
|
||||
public static final String PROTOCOL_NAME = "lvnengV340";
|
||||
public static final String PROTOCOL_NAME = LVNENG_V340;
|
||||
@Override
|
||||
protected String getProtocolName() {
|
||||
return PROTOCOL_NAME;
|
||||
|
||||
@@ -15,20 +15,21 @@ import sanbing.jcpp.infrastructure.util.jackson.JacksonUtil;
|
||||
import sanbing.jcpp.proto.gen.ProtocolProto.HeartBeatRequest;
|
||||
import sanbing.jcpp.proto.gen.ProtocolProto.UplinkQueueMessage;
|
||||
import sanbing.jcpp.protocol.ProtocolContext;
|
||||
import sanbing.jcpp.protocol.annotation.ProtocolCmd;
|
||||
import sanbing.jcpp.protocol.listener.tcp.TcpSession;
|
||||
import sanbing.jcpp.protocol.lvneng.LvnengUplinkCmdExe;
|
||||
import sanbing.jcpp.protocol.lvneng.LvnengUplinkMessage;
|
||||
import sanbing.jcpp.protocol.lvneng.annotation.LvnengCmd;
|
||||
|
||||
import java.nio.charset.StandardCharsets;
|
||||
|
||||
import static sanbing.jcpp.protocol.lvneng.enums.LvnengDownlinkCmdEnum.HEARTBEAT_ACK;
|
||||
import static sanbing.jcpp.protocol.domain.DownlinkCmdEnum.HEARTBEAT_ACK;
|
||||
import static sanbing.jcpp.protocol.lvneng.LvnengProtocolConstants.ProtocolNames.V340;
|
||||
|
||||
/**
|
||||
* 绿能3.4 充电桩上传心跳包
|
||||
*/
|
||||
@Slf4j
|
||||
@LvnengCmd(102)
|
||||
@ProtocolCmd(value = 102, protocolNames = {V340})
|
||||
public class LvnengV340HeartbeatULCmd extends LvnengUplinkCmdExe {
|
||||
@Override
|
||||
public void execute(TcpSession tcpSession, LvnengUplinkMessage lvnengUplinkMessage, ProtocolContext ctx) {
|
||||
|
||||
@@ -16,28 +16,29 @@ import sanbing.jcpp.infrastructure.util.mdc.MDCUtils;
|
||||
import sanbing.jcpp.infrastructure.util.trace.TracerContextUtil;
|
||||
import sanbing.jcpp.proto.gen.ProtocolProto.LoginResponse;
|
||||
import sanbing.jcpp.protocol.ProtocolContext;
|
||||
import sanbing.jcpp.protocol.annotation.ProtocolCmd;
|
||||
import sanbing.jcpp.protocol.listener.tcp.TcpSession;
|
||||
import sanbing.jcpp.protocol.listener.tcp.enums.SequenceNumberLength;
|
||||
import sanbing.jcpp.protocol.lvneng.LvnengDownlinkCmdExe;
|
||||
import sanbing.jcpp.protocol.lvneng.LvnengDwonlinkMessage;
|
||||
import sanbing.jcpp.protocol.lvneng.LvnengUplinkMessage;
|
||||
import sanbing.jcpp.protocol.lvneng.annotation.LvnengCmd;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Arrays;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
import static sanbing.jcpp.infrastructure.util.config.ThreadPoolConfiguration.PROTOCOL_SESSION_SCHEDULED;
|
||||
import static sanbing.jcpp.protocol.domain.DownlinkCmdEnum.LOGIN_ACK;
|
||||
import static sanbing.jcpp.protocol.domain.DownlinkCmdEnum.SYNC_TIME_REQUEST;
|
||||
import static sanbing.jcpp.protocol.domain.SessionCloseReason.MANUALLY;
|
||||
import static sanbing.jcpp.protocol.listener.tcp.TcpSession.SCHEDULE_KEY_AUTO_SYNC_TIME;
|
||||
import static sanbing.jcpp.protocol.lvneng.enums.LvnengDownlinkCmdEnum.LOGIN_ACK;
|
||||
import static sanbing.jcpp.protocol.lvneng.enums.LvnengDownlinkCmdEnum.SYNC_TIME;
|
||||
import static sanbing.jcpp.protocol.lvneng.LvnengProtocolConstants.ProtocolNames.V340;
|
||||
|
||||
/**
|
||||
* 绿能3.4 服务器应答充电桩签到命令
|
||||
*/
|
||||
@Slf4j
|
||||
@LvnengCmd(105)
|
||||
@ProtocolCmd(value = 105, protocolNames = {V340})
|
||||
public class LvnengV340LoginAckDLCmd extends LvnengDownlinkCmdExe {
|
||||
@Override
|
||||
public void execute(TcpSession tcpSession, LvnengDwonlinkMessage lvnengDwonlinkMessage, ProtocolContext ctx) {
|
||||
@@ -121,7 +122,7 @@ public class LvnengV340LoginAckDLCmd extends LvnengDownlinkCmdExe {
|
||||
//7 命令参数数据
|
||||
msgBodyBuf.writeBytes(BCDUtil.dateToBcd8(LocalDateTime.now()));
|
||||
|
||||
encodeAndWriteFlush(SYNC_TIME,
|
||||
encodeAndWriteFlush(SYNC_TIME_REQUEST,
|
||||
tcpSession.nextSeqNo(SequenceNumberLength.SHORT),
|
||||
requestData.getEncryptionFlag(),
|
||||
msgBodyBuf,
|
||||
|
||||
@@ -16,20 +16,22 @@ import sanbing.jcpp.infrastructure.util.jackson.JacksonUtil;
|
||||
import sanbing.jcpp.proto.gen.ProtocolProto.LoginRequest;
|
||||
import sanbing.jcpp.proto.gen.ProtocolProto.UplinkQueueMessage;
|
||||
import sanbing.jcpp.protocol.ProtocolContext;
|
||||
import sanbing.jcpp.protocol.annotation.ProtocolCmd;
|
||||
import sanbing.jcpp.protocol.listener.tcp.TcpSession;
|
||||
import sanbing.jcpp.protocol.lvneng.LvnengUplinkCmdExe;
|
||||
import sanbing.jcpp.protocol.lvneng.LvnengUplinkMessage;
|
||||
import sanbing.jcpp.protocol.lvneng.annotation.LvnengCmd;
|
||||
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.ZoneId;
|
||||
|
||||
import static sanbing.jcpp.protocol.lvneng.LvnengProtocolConstants.ProtocolNames.V340;
|
||||
|
||||
/**
|
||||
* 绿能3.4 充电桩签到信息上报
|
||||
*/
|
||||
@Slf4j
|
||||
@LvnengCmd(106)
|
||||
@ProtocolCmd(value = 106, protocolNames = {V340})
|
||||
public class LvnengV340LoginULCmd extends LvnengUplinkCmdExe {
|
||||
@Override
|
||||
public void execute(TcpSession tcpSession, LvnengUplinkMessage lvnengUplinkMessage, ProtocolContext ctx) {
|
||||
|
||||
@@ -19,10 +19,10 @@ import sanbing.jcpp.proto.gen.ProtocolProto.GunRunStatus;
|
||||
import sanbing.jcpp.proto.gen.ProtocolProto.GunRunStatusProto;
|
||||
import sanbing.jcpp.proto.gen.ProtocolProto.UplinkQueueMessage;
|
||||
import sanbing.jcpp.protocol.ProtocolContext;
|
||||
import sanbing.jcpp.protocol.annotation.ProtocolCmd;
|
||||
import sanbing.jcpp.protocol.listener.tcp.TcpSession;
|
||||
import sanbing.jcpp.protocol.lvneng.LvnengUplinkCmdExe;
|
||||
import sanbing.jcpp.protocol.lvneng.LvnengUplinkMessage;
|
||||
import sanbing.jcpp.protocol.lvneng.annotation.LvnengCmd;
|
||||
import sanbing.jcpp.protocol.lvneng.enums.LvnengAlarmCodeEnum;
|
||||
import sanbing.jcpp.protocol.lvneng.enums.LvnengPileStartTypeEnum;
|
||||
import sanbing.jcpp.protocol.lvneng.enums.LvnengPileStatusEnum;
|
||||
@@ -35,13 +35,14 @@ import java.time.ZoneId;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
import static sanbing.jcpp.protocol.lvneng.enums.LvnengDownlinkCmdEnum.REAL_TIME_DATA_ACK;
|
||||
import static sanbing.jcpp.protocol.domain.DownlinkCmdEnum.REAL_TIME_DATA_ACK;
|
||||
import static sanbing.jcpp.protocol.lvneng.LvnengProtocolConstants.ProtocolNames.V340;
|
||||
|
||||
/**
|
||||
* 绿能3.4 充电桩状态信息包上报
|
||||
*/
|
||||
@Slf4j
|
||||
@LvnengCmd(109)
|
||||
@ProtocolCmd(value = 109, protocolNames = {V340})
|
||||
public class LvnengV340RealTimeDataULCmd extends LvnengUplinkCmdExe {
|
||||
@Override
|
||||
public void execute(TcpSession tcpSession, LvnengUplinkMessage lvnengUplinkMessage, ProtocolContext ctx) {
|
||||
|
||||
@@ -12,22 +12,23 @@ import lombok.extern.slf4j.Slf4j;
|
||||
import sanbing.jcpp.infrastructure.util.jackson.JacksonUtil;
|
||||
import sanbing.jcpp.proto.gen.ProtocolProto.TransactionRecordResponse;
|
||||
import sanbing.jcpp.protocol.ProtocolContext;
|
||||
import sanbing.jcpp.protocol.annotation.ProtocolCmd;
|
||||
import sanbing.jcpp.protocol.listener.tcp.TcpSession;
|
||||
import sanbing.jcpp.protocol.lvneng.LvnengDownlinkCmdExe;
|
||||
import sanbing.jcpp.protocol.lvneng.LvnengDwonlinkMessage;
|
||||
import sanbing.jcpp.protocol.lvneng.LvnengUplinkMessage;
|
||||
import sanbing.jcpp.protocol.lvneng.annotation.LvnengCmd;
|
||||
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.util.Arrays;
|
||||
|
||||
import static sanbing.jcpp.protocol.lvneng.enums.LvnengDownlinkCmdEnum.TRANSACTION_RECORD_ACK;
|
||||
import static sanbing.jcpp.protocol.domain.DownlinkCmdEnum.TRANSACTION_RECORD_ACK;
|
||||
import static sanbing.jcpp.protocol.lvneng.LvnengProtocolConstants.ProtocolNames.V340;
|
||||
|
||||
/**
|
||||
* 绿能3.4 服务器应答订单信息
|
||||
*/
|
||||
@Slf4j
|
||||
@LvnengCmd(201)
|
||||
@ProtocolCmd(value = 201, protocolNames = {V340})
|
||||
public class LvnengV340TransactionRecordAckDLCmd extends LvnengDownlinkCmdExe {
|
||||
@Override
|
||||
public void execute(TcpSession tcpSession, LvnengDwonlinkMessage lvnengDwonlinkMessage, ProtocolContext ctx) {
|
||||
|
||||
@@ -20,10 +20,10 @@ import sanbing.jcpp.proto.gen.ProtocolProto.TransactionDetail;
|
||||
import sanbing.jcpp.proto.gen.ProtocolProto.TransactionRecordRequest;
|
||||
import sanbing.jcpp.proto.gen.ProtocolProto.UplinkQueueMessage;
|
||||
import sanbing.jcpp.protocol.ProtocolContext;
|
||||
import sanbing.jcpp.protocol.annotation.ProtocolCmd;
|
||||
import sanbing.jcpp.protocol.listener.tcp.TcpSession;
|
||||
import sanbing.jcpp.protocol.lvneng.LvnengUplinkCmdExe;
|
||||
import sanbing.jcpp.protocol.lvneng.LvnengUplinkMessage;
|
||||
import sanbing.jcpp.protocol.lvneng.annotation.LvnengCmd;
|
||||
import sanbing.jcpp.protocol.lvneng.enums.LvnengPileFinishReasonEnum;
|
||||
import sanbing.jcpp.protocol.lvneng.enums.LvnengPileStartTypeEnum;
|
||||
|
||||
@@ -37,11 +37,13 @@ import java.time.format.DateTimeFormatter;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import static sanbing.jcpp.protocol.lvneng.LvnengProtocolConstants.ProtocolNames.V340;
|
||||
|
||||
/**
|
||||
* 绿能3.4 充电桩上报充电订单
|
||||
*/
|
||||
@Slf4j
|
||||
@LvnengCmd(203)
|
||||
@ProtocolCmd(value = 203, protocolNames = {V340})
|
||||
public class LvnengV340TransactionRecordULCmd extends LvnengUplinkCmdExe {
|
||||
|
||||
|
||||
@@ -213,7 +215,6 @@ public class LvnengV340TransactionRecordULCmd extends LvnengUplinkCmdExe {
|
||||
.build();
|
||||
tcpSession.getForwarder().sendMessage(uplinkQueueMessage);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user