修正领域模型命名问题

This commit is contained in:
三丙
2025-08-18 15:16:25 +08:00
parent b393f5b426
commit 6b054c31a9
10 changed files with 34 additions and 27 deletions

View File

@@ -42,7 +42,7 @@ class OrderMapperIT extends AbstractTestBase {
.id(UUID.randomUUID()) .id(UUID.randomUUID())
.internalOrderNo(IdUtil.getSnowflake(1, 1).nextIdStr()) .internalOrderNo(IdUtil.getSnowflake(1, 1).nextIdStr())
.externalOrderNo(IdUtil.getSnowflake(1, 1).nextIdStr()) .externalOrderNo(IdUtil.getSnowflake(1, 1).nextIdStr())
.pileOrderNo(RandomStringUtils.randomNumeric(16)) .pileOrderNo(RandomStringUtils.secure().nextNumeric(16))
.createdTime(LocalDateTime.now()) .createdTime(LocalDateTime.now())
.additionalInfo(JacksonUtil.newObjectNode()) .additionalInfo(JacksonUtil.newObjectNode())
.updatedTime(LocalDateTime.now()) .updatedTime(LocalDateTime.now())

View File

@@ -68,7 +68,7 @@ public interface PileProtocolService {
/** /**
* 交易记录上报 * 交易记录上报
*/ */
void onTransactionRecord(UplinkQueueMessage uplinkQueueMessage, Callback callback); void onTransactionRecordRequest(UplinkQueueMessage uplinkQueueMessage, Callback callback);
/** /**
* 启动充电 * 启动充电

View File

@@ -252,19 +252,18 @@ public class DefaultPileProtocolService implements PileProtocolService {
} }
@Override @Override
public void onTransactionRecord(UplinkQueueMessage uplinkQueueMessage, Callback callback) { public void onTransactionRecordRequest(UplinkQueueMessage uplinkQueueMessage, Callback callback) {
log.info("接收到充电桩交易记录上报 {}", uplinkQueueMessage); log.info("接收到充电桩交易记录上报 {}", uplinkQueueMessage);
// todo 毛都不敢先给个回复 TransactionRecordRequest transactionRecordRequest = uplinkQueueMessage.getTransactionRecordRequest();
TransactionRecord transactionRecord = uplinkQueueMessage.getTransactionRecord();
String tradeNo = transactionRecord.getTradeNo(); String tradeNo = transactionRecordRequest.getTradeNo();
String pileCode = transactionRecord.getPileCode(); String pileCode = transactionRecordRequest.getPileCode();
// 构造下行计费 // 构造下行计费
DownlinkRequestMessage.Builder downlinkMessageBuilder = createDownlinkMessageBuilder(uplinkQueueMessage, pileCode); DownlinkRequestMessage.Builder downlinkMessageBuilder = createDownlinkMessageBuilder(uplinkQueueMessage, pileCode);
downlinkMessageBuilder.setDownlinkCmd(DownlinkCmdEnum.TRANSACTION_RECORD_ACK.name()); downlinkMessageBuilder.setDownlinkCmd(DownlinkCmdEnum.TRANSACTION_RECORD_ACK.name());
downlinkMessageBuilder.setTransactionRecordAck(TransactionRecordAck.newBuilder() downlinkMessageBuilder.setTransactionRecordResponse(TransactionRecordResponse.newBuilder()
.setTradeNo(tradeNo) .setTradeNo(tradeNo)
.setSuccess(true) .setSuccess(true)
.build()); .build());

View File

@@ -63,7 +63,7 @@ public class AppConsumerStats {
gunRunStatusCounter.increment(); gunRunStatusCounter.increment();
} else if (msg.hasChargingProgressProto()) { } else if (msg.hasChargingProgressProto()) {
chargingProgressCounter.increment(); chargingProgressCounter.increment();
} else if (msg.hasTransactionRecord()) { } else if (msg.hasTransactionRecordRequest()) {
transactionRecordCounter.increment(); transactionRecordCounter.increment();
} }

View File

@@ -188,15 +188,15 @@ public class ProtocolUplinkConsumerService extends AbstractConsumerService imple
pileProtocolService.onRemoteStopChargingResponse(uplinkQueueMsg, callback); pileProtocolService.onRemoteStopChargingResponse(uplinkQueueMsg, callback);
} else if (uplinkQueueMsg.hasTransactionRecord()) { } else if (uplinkQueueMsg.hasTransactionRecordRequest()) {
pileProtocolService.onTransactionRecord(uplinkQueueMsg, callback); pileProtocolService.onTransactionRecordRequest(uplinkQueueMsg, callback);
} else if (uplinkQueueMsg.hasBmsChargingErrorProto()) { } else if (uplinkQueueMsg.hasBmsChargingErrorProto()) {
pileProtocolService.onBmsChargingErrorProto(uplinkQueueMsg, callback); pileProtocolService.onBmsChargingErrorProto(uplinkQueueMsg, callback);
} else if (uplinkQueueMsg.hasBmsParamConfigReport()) { } else if (uplinkQueueMsg.hasBmsParamConfigReportProto()) {
pileProtocolService.onBmsParamConfigReport(uplinkQueueMsg, callback); pileProtocolService.onBmsParamConfigReport(uplinkQueueMsg, callback);

View File

@@ -65,9 +65,9 @@ message UplinkQueueMessage {
SetPricingResponse setPricingResponse = 27; SetPricingResponse setPricingResponse = 27;
RemoteStartChargingResponse remoteStartChargingResponse = 28; RemoteStartChargingResponse remoteStartChargingResponse = 28;
RemoteStopChargingResponse remoteStopChargingResponse = 29; RemoteStopChargingResponse remoteStopChargingResponse = 29;
TransactionRecord transactionRecord = 30; TransactionRecordRequest transactionRecordRequest = 30;
BmsChargingErrorProto bmsChargingErrorProto = 31; BmsChargingErrorProto bmsChargingErrorProto = 31;
BmsParamConfigReport bmsParamConfigReport = 33; BmsParamConfigReportProto bmsParamConfigReportProto = 33;
BmsChargingInfoProto bmsChargingInfoProto = 34; BmsChargingInfoProto bmsChargingInfoProto = 34;
BmsAbortProto bmsAbortProto = 35; BmsAbortProto bmsAbortProto = 35;
RestartPileResponse restartPileResponse = 36; RestartPileResponse restartPileResponse = 36;
@@ -93,7 +93,7 @@ message DownlinkRequestMessage {
SetPricingRequest setPricingRequest = 24; SetPricingRequest setPricingRequest = 24;
RemoteStartChargingRequest remoteStartChargingRequest = 25; RemoteStartChargingRequest remoteStartChargingRequest = 25;
RemoteStopChargingRequest remoteStopChargingRequest = 26; RemoteStopChargingRequest remoteStopChargingRequest = 26;
TransactionRecordAck transactionRecordAck = 27; TransactionRecordResponse transactionRecordResponse = 27;
RestartPileRequest restartPileRequest = 28; RestartPileRequest restartPileRequest = 28;
OtaRequest otaRequest = 29; OtaRequest otaRequest = 29;
} }
@@ -318,7 +318,7 @@ message TransactionDetail {
optional TimePeriodDetail timePeriod = 3; // 时段电量明细 optional TimePeriodDetail timePeriod = 3; // 时段电量明细
} }
message TransactionRecord { message TransactionRecordRequest {
string pileCode = 4; // 充电桩编码 string pileCode = 4; // 充电桩编码
string gunCode = 5; // 枪编号 string gunCode = 5; // 枪编号
string tradeNo = 6; // 交易流水号 string tradeNo = 6; // 交易流水号
@@ -341,12 +341,12 @@ message BmsChargingErrorProto {
optional string additionalInfo = 20; optional string additionalInfo = 20;
} }
message TransactionRecordAck { message TransactionRecordResponse {
string tradeNo = 6; string tradeNo = 6;
bool success = 7; bool success = 7;
} }
message BmsParamConfigReport { message BmsParamConfigReportProto {
int64 ts = 1; // 时间戳 int64 ts = 1; // 时间戳
string pileCode = 2; // 桩编码 string pileCode = 2; // 桩编码
string gunCode = 3; // 枪编码 string gunCode = 3; // 枪编码

View File

@@ -11,7 +11,7 @@ import io.netty.buffer.Unpooled;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import sanbing.jcpp.infrastructure.util.codec.BCDUtil; import sanbing.jcpp.infrastructure.util.codec.BCDUtil;
import sanbing.jcpp.infrastructure.util.trace.TracerContextUtil; import sanbing.jcpp.infrastructure.util.trace.TracerContextUtil;
import sanbing.jcpp.proto.gen.ProtocolProto.BmsParamConfigReport; import sanbing.jcpp.proto.gen.ProtocolProto.BmsParamConfigReportProto;
import sanbing.jcpp.proto.gen.ProtocolProto.UplinkQueueMessage; import sanbing.jcpp.proto.gen.ProtocolProto.UplinkQueueMessage;
import sanbing.jcpp.protocol.ProtocolContext; import sanbing.jcpp.protocol.ProtocolContext;
import sanbing.jcpp.protocol.listener.tcp.TcpSession; import sanbing.jcpp.protocol.listener.tcp.TcpSession;
@@ -92,7 +92,7 @@ public class YunKuaiChongV150BmsParamConfigReportULCmd extends YunKuaiChongUplin
BigDecimal pileMinOutputCurrent = readCurrent(byteBuf); BigDecimal pileMinOutputCurrent = readCurrent(byteBuf);
// 转发到后端 // 转发到后端
BmsParamConfigReport bmsParamConfigReport = BmsParamConfigReport.newBuilder() BmsParamConfigReportProto bmsParamConfigReportProto = BmsParamConfigReportProto.newBuilder()
.setTs(ts) .setTs(ts)
.setPileCode(pileCode) .setPileCode(pileCode)
.setTradeNo(tradeNo) .setTradeNo(tradeNo)
@@ -109,8 +109,8 @@ public class YunKuaiChongV150BmsParamConfigReportULCmd extends YunKuaiChongUplin
.setPileMaxOutputCurrent(pileMaxOutputCurrent.toPlainString()) .setPileMaxOutputCurrent(pileMaxOutputCurrent.toPlainString())
.setPileMinOutputCurrent(pileMinOutputCurrent.toPlainString()) .setPileMinOutputCurrent(pileMinOutputCurrent.toPlainString())
.build(); .build();
UplinkQueueMessage uplinkQueueMessage = uplinkMessageBuilder(bmsParamConfigReport.getPileCode(), tcpSession, yunKuaiChongUplinkMessage) UplinkQueueMessage uplinkQueueMessage = uplinkMessageBuilder(bmsParamConfigReportProto.getPileCode(), tcpSession, yunKuaiChongUplinkMessage)
.setBmsParamConfigReport(bmsParamConfigReport) .setBmsParamConfigReportProto(bmsParamConfigReportProto)
.build(); .build();
tcpSession.getForwarder().sendMessage(uplinkQueueMessage); tcpSession.getForwarder().sendMessage(uplinkQueueMessage);

View File

@@ -10,7 +10,7 @@ import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled; import io.netty.buffer.Unpooled;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import sanbing.jcpp.infrastructure.util.jackson.JacksonUtil; import sanbing.jcpp.infrastructure.util.jackson.JacksonUtil;
import sanbing.jcpp.proto.gen.ProtocolProto.TransactionRecordAck; import sanbing.jcpp.proto.gen.ProtocolProto.TransactionRecordResponse;
import sanbing.jcpp.protocol.ProtocolContext; import sanbing.jcpp.protocol.ProtocolContext;
import sanbing.jcpp.protocol.listener.tcp.TcpSession; import sanbing.jcpp.protocol.listener.tcp.TcpSession;
import sanbing.jcpp.protocol.yunkuaichong.YunKuaiChongDownlinkCmdExe; import sanbing.jcpp.protocol.yunkuaichong.YunKuaiChongDownlinkCmdExe;
@@ -33,11 +33,11 @@ public class YunKuaiChongV150TransactionRecordAckDLCmd extends YunKuaiChongDownl
public void execute(TcpSession tcpSession, YunKuaiChongDwonlinkMessage yunKuaiChongDwonlinkMessage, ProtocolContext ctx) { public void execute(TcpSession tcpSession, YunKuaiChongDwonlinkMessage yunKuaiChongDwonlinkMessage, ProtocolContext ctx) {
log.info("{} 云快充1.5.0交易记录确认", tcpSession); log.info("{} 云快充1.5.0交易记录确认", tcpSession);
if (!yunKuaiChongDwonlinkMessage.getMsg().hasTransactionRecordAck()) { if (!yunKuaiChongDwonlinkMessage.getMsg().hasTransactionRecordResponse()) {
return; return;
} }
TransactionRecordAck transactionRecordAck = yunKuaiChongDwonlinkMessage.getMsg().getTransactionRecordAck(); TransactionRecordResponse transactionRecordAck = yunKuaiChongDwonlinkMessage.getMsg().getTransactionRecordResponse();
YunKuaiChongUplinkMessage requestData = JacksonUtil.fromBytes(yunKuaiChongDwonlinkMessage.getMsg().getRequestData().toByteArray(), YunKuaiChongUplinkMessage.class); YunKuaiChongUplinkMessage requestData = JacksonUtil.fromBytes(yunKuaiChongDwonlinkMessage.getMsg().getRequestData().toByteArray(), YunKuaiChongUplinkMessage.class);

View File

@@ -172,7 +172,7 @@ public class YunKuaiChongV150TransactionRecordULCmd extends YunKuaiChongUplinkCm
.build(); .build();
// 构建交易记录 // 构建交易记录
TransactionRecord transactionRecord = TransactionRecord.newBuilder() TransactionRecordRequest transactionRecordRequest = TransactionRecordRequest.newBuilder()
.setPileCode(pileCode) .setPileCode(pileCode)
.setGunCode(gunCode) .setGunCode(gunCode)
.setTradeNo(tradeNo) .setTradeNo(tradeNo)
@@ -188,7 +188,7 @@ public class YunKuaiChongV150TransactionRecordULCmd extends YunKuaiChongUplinkCm
// 转发到后端 // 转发到后端
UplinkQueueMessage uplinkQueueMessage = uplinkMessageBuilder(pileCode, tcpSession, yunKuaiChongUplinkMessage) UplinkQueueMessage uplinkQueueMessage = uplinkMessageBuilder(pileCode, tcpSession, yunKuaiChongUplinkMessage)
.setTransactionRecord(transactionRecord) .setTransactionRecordRequest(transactionRecordRequest)
.build(); .build();
tcpSession.getForwarder().sendMessage(uplinkQueueMessage); tcpSession.getForwarder().sendMessage(uplinkQueueMessage);

View File

@@ -0,0 +1,8 @@
/**
* 开源代码,仅供学习和交流研究使用,商用请联系三丙
* 微信mohan_88888
* 抖音:程序员三丙
* 付费课程知识星球https://t.zsxq.com/aKtXo
*/
module jcpp.testing {
}