From 6b054c31a968a92920f9673d5094d991bb32f541 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=89=E4=B8=99?= <10604541+sanbing-os@user.noreply.gitee.com> Date: Mon, 18 Aug 2025 15:16:25 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E9=A2=86=E5=9F=9F=E6=A8=A1?= =?UTF-8?q?=E5=9E=8B=E5=91=BD=E5=90=8D=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sanbing/jcpp/app/dal/mapper/OrderMapperIT.java | 2 +- .../jcpp/app/service/PileProtocolService.java | 2 +- .../app/service/impl/DefaultPileProtocolService.java | 11 +++++------ .../jcpp/app/service/queue/AppConsumerStats.java | 2 +- .../consumer/ProtocolUplinkConsumerService.java | 6 +++--- .../src/main/proto/protocol.proto | 12 ++++++------ .../YunKuaiChongV150BmsParamConfigReportULCmd.java | 8 ++++---- .../YunKuaiChongV150TransactionRecordAckDLCmd.java | 6 +++--- .../cmd/YunKuaiChongV150TransactionRecordULCmd.java | 4 ++-- jcpp-testing/src/main/java/module-info.java | 8 ++++++++ 10 files changed, 34 insertions(+), 27 deletions(-) create mode 100644 jcpp-testing/src/main/java/module-info.java diff --git a/jcpp-app-bootstrap/src/test/java/sanbing/jcpp/app/dal/mapper/OrderMapperIT.java b/jcpp-app-bootstrap/src/test/java/sanbing/jcpp/app/dal/mapper/OrderMapperIT.java index 83fd08b..6697b5b 100644 --- a/jcpp-app-bootstrap/src/test/java/sanbing/jcpp/app/dal/mapper/OrderMapperIT.java +++ b/jcpp-app-bootstrap/src/test/java/sanbing/jcpp/app/dal/mapper/OrderMapperIT.java @@ -42,7 +42,7 @@ class OrderMapperIT extends AbstractTestBase { .id(UUID.randomUUID()) .internalOrderNo(IdUtil.getSnowflake(1, 1).nextIdStr()) .externalOrderNo(IdUtil.getSnowflake(1, 1).nextIdStr()) - .pileOrderNo(RandomStringUtils.randomNumeric(16)) + .pileOrderNo(RandomStringUtils.secure().nextNumeric(16)) .createdTime(LocalDateTime.now()) .additionalInfo(JacksonUtil.newObjectNode()) .updatedTime(LocalDateTime.now()) diff --git a/jcpp-app/src/main/java/sanbing/jcpp/app/service/PileProtocolService.java b/jcpp-app/src/main/java/sanbing/jcpp/app/service/PileProtocolService.java index 8b924de..75a6038 100644 --- a/jcpp-app/src/main/java/sanbing/jcpp/app/service/PileProtocolService.java +++ b/jcpp-app/src/main/java/sanbing/jcpp/app/service/PileProtocolService.java @@ -68,7 +68,7 @@ public interface PileProtocolService { /** * 交易记录上报 */ - void onTransactionRecord(UplinkQueueMessage uplinkQueueMessage, Callback callback); + void onTransactionRecordRequest(UplinkQueueMessage uplinkQueueMessage, Callback callback); /** * 启动充电 diff --git a/jcpp-app/src/main/java/sanbing/jcpp/app/service/impl/DefaultPileProtocolService.java b/jcpp-app/src/main/java/sanbing/jcpp/app/service/impl/DefaultPileProtocolService.java index 011e5ef..9edc53c 100644 --- a/jcpp-app/src/main/java/sanbing/jcpp/app/service/impl/DefaultPileProtocolService.java +++ b/jcpp-app/src/main/java/sanbing/jcpp/app/service/impl/DefaultPileProtocolService.java @@ -252,19 +252,18 @@ public class DefaultPileProtocolService implements PileProtocolService { } @Override - public void onTransactionRecord(UplinkQueueMessage uplinkQueueMessage, Callback callback) { + public void onTransactionRecordRequest(UplinkQueueMessage uplinkQueueMessage, Callback callback) { log.info("接收到充电桩交易记录上报 {}", uplinkQueueMessage); - // todo 毛都不敢先给个回复 - TransactionRecord transactionRecord = uplinkQueueMessage.getTransactionRecord(); + TransactionRecordRequest transactionRecordRequest = uplinkQueueMessage.getTransactionRecordRequest(); - String tradeNo = transactionRecord.getTradeNo(); - String pileCode = transactionRecord.getPileCode(); + String tradeNo = transactionRecordRequest.getTradeNo(); + String pileCode = transactionRecordRequest.getPileCode(); // 构造下行计费 DownlinkRequestMessage.Builder downlinkMessageBuilder = createDownlinkMessageBuilder(uplinkQueueMessage, pileCode); downlinkMessageBuilder.setDownlinkCmd(DownlinkCmdEnum.TRANSACTION_RECORD_ACK.name()); - downlinkMessageBuilder.setTransactionRecordAck(TransactionRecordAck.newBuilder() + downlinkMessageBuilder.setTransactionRecordResponse(TransactionRecordResponse.newBuilder() .setTradeNo(tradeNo) .setSuccess(true) .build()); diff --git a/jcpp-app/src/main/java/sanbing/jcpp/app/service/queue/AppConsumerStats.java b/jcpp-app/src/main/java/sanbing/jcpp/app/service/queue/AppConsumerStats.java index 1472fbd..a4fe41d 100644 --- a/jcpp-app/src/main/java/sanbing/jcpp/app/service/queue/AppConsumerStats.java +++ b/jcpp-app/src/main/java/sanbing/jcpp/app/service/queue/AppConsumerStats.java @@ -63,7 +63,7 @@ public class AppConsumerStats { gunRunStatusCounter.increment(); } else if (msg.hasChargingProgressProto()) { chargingProgressCounter.increment(); - } else if (msg.hasTransactionRecord()) { + } else if (msg.hasTransactionRecordRequest()) { transactionRecordCounter.increment(); } diff --git a/jcpp-app/src/main/java/sanbing/jcpp/app/service/queue/consumer/ProtocolUplinkConsumerService.java b/jcpp-app/src/main/java/sanbing/jcpp/app/service/queue/consumer/ProtocolUplinkConsumerService.java index 50fd7dc..93d1fc7 100644 --- a/jcpp-app/src/main/java/sanbing/jcpp/app/service/queue/consumer/ProtocolUplinkConsumerService.java +++ b/jcpp-app/src/main/java/sanbing/jcpp/app/service/queue/consumer/ProtocolUplinkConsumerService.java @@ -188,15 +188,15 @@ public class ProtocolUplinkConsumerService extends AbstractConsumerService imple pileProtocolService.onRemoteStopChargingResponse(uplinkQueueMsg, callback); - } else if (uplinkQueueMsg.hasTransactionRecord()) { + } else if (uplinkQueueMsg.hasTransactionRecordRequest()) { - pileProtocolService.onTransactionRecord(uplinkQueueMsg, callback); + pileProtocolService.onTransactionRecordRequest(uplinkQueueMsg, callback); } else if (uplinkQueueMsg.hasBmsChargingErrorProto()) { pileProtocolService.onBmsChargingErrorProto(uplinkQueueMsg, callback); - } else if (uplinkQueueMsg.hasBmsParamConfigReport()) { + } else if (uplinkQueueMsg.hasBmsParamConfigReportProto()) { pileProtocolService.onBmsParamConfigReport(uplinkQueueMsg, callback); diff --git a/jcpp-infrastructure-proto/src/main/proto/protocol.proto b/jcpp-infrastructure-proto/src/main/proto/protocol.proto index 3ea8ed1..87faf12 100644 --- a/jcpp-infrastructure-proto/src/main/proto/protocol.proto +++ b/jcpp-infrastructure-proto/src/main/proto/protocol.proto @@ -65,9 +65,9 @@ message UplinkQueueMessage { SetPricingResponse setPricingResponse = 27; RemoteStartChargingResponse remoteStartChargingResponse = 28; RemoteStopChargingResponse remoteStopChargingResponse = 29; - TransactionRecord transactionRecord = 30; + TransactionRecordRequest transactionRecordRequest = 30; BmsChargingErrorProto bmsChargingErrorProto = 31; - BmsParamConfigReport bmsParamConfigReport = 33; + BmsParamConfigReportProto bmsParamConfigReportProto = 33; BmsChargingInfoProto bmsChargingInfoProto = 34; BmsAbortProto bmsAbortProto = 35; RestartPileResponse restartPileResponse = 36; @@ -93,7 +93,7 @@ message DownlinkRequestMessage { SetPricingRequest setPricingRequest = 24; RemoteStartChargingRequest remoteStartChargingRequest = 25; RemoteStopChargingRequest remoteStopChargingRequest = 26; - TransactionRecordAck transactionRecordAck = 27; + TransactionRecordResponse transactionRecordResponse = 27; RestartPileRequest restartPileRequest = 28; OtaRequest otaRequest = 29; } @@ -318,7 +318,7 @@ message TransactionDetail { optional TimePeriodDetail timePeriod = 3; // 时段电量明细 } -message TransactionRecord { +message TransactionRecordRequest { string pileCode = 4; // 充电桩编码 string gunCode = 5; // 枪编号 string tradeNo = 6; // 交易流水号 @@ -341,12 +341,12 @@ message BmsChargingErrorProto { optional string additionalInfo = 20; } -message TransactionRecordAck { +message TransactionRecordResponse { string tradeNo = 6; bool success = 7; } -message BmsParamConfigReport { +message BmsParamConfigReportProto { int64 ts = 1; // 时间戳 string pileCode = 2; // 桩编码 string gunCode = 3; // 枪编码 diff --git a/jcpp-protocol-yunkuaichong/src/main/java/sanbing/jcpp/protocol/yunkuaichong/v150/cmd/YunKuaiChongV150BmsParamConfigReportULCmd.java b/jcpp-protocol-yunkuaichong/src/main/java/sanbing/jcpp/protocol/yunkuaichong/v150/cmd/YunKuaiChongV150BmsParamConfigReportULCmd.java index 5c91966..c11dd56 100644 --- a/jcpp-protocol-yunkuaichong/src/main/java/sanbing/jcpp/protocol/yunkuaichong/v150/cmd/YunKuaiChongV150BmsParamConfigReportULCmd.java +++ b/jcpp-protocol-yunkuaichong/src/main/java/sanbing/jcpp/protocol/yunkuaichong/v150/cmd/YunKuaiChongV150BmsParamConfigReportULCmd.java @@ -11,7 +11,7 @@ import io.netty.buffer.Unpooled; import lombok.extern.slf4j.Slf4j; import sanbing.jcpp.infrastructure.util.codec.BCDUtil; 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.protocol.ProtocolContext; import sanbing.jcpp.protocol.listener.tcp.TcpSession; @@ -92,7 +92,7 @@ public class YunKuaiChongV150BmsParamConfigReportULCmd extends YunKuaiChongUplin BigDecimal pileMinOutputCurrent = readCurrent(byteBuf); // 转发到后端 - BmsParamConfigReport bmsParamConfigReport = BmsParamConfigReport.newBuilder() + BmsParamConfigReportProto bmsParamConfigReportProto = BmsParamConfigReportProto.newBuilder() .setTs(ts) .setPileCode(pileCode) .setTradeNo(tradeNo) @@ -109,8 +109,8 @@ public class YunKuaiChongV150BmsParamConfigReportULCmd extends YunKuaiChongUplin .setPileMaxOutputCurrent(pileMaxOutputCurrent.toPlainString()) .setPileMinOutputCurrent(pileMinOutputCurrent.toPlainString()) .build(); - UplinkQueueMessage uplinkQueueMessage = uplinkMessageBuilder(bmsParamConfigReport.getPileCode(), tcpSession, yunKuaiChongUplinkMessage) - .setBmsParamConfigReport(bmsParamConfigReport) + UplinkQueueMessage uplinkQueueMessage = uplinkMessageBuilder(bmsParamConfigReportProto.getPileCode(), tcpSession, yunKuaiChongUplinkMessage) + .setBmsParamConfigReportProto(bmsParamConfigReportProto) .build(); tcpSession.getForwarder().sendMessage(uplinkQueueMessage); diff --git a/jcpp-protocol-yunkuaichong/src/main/java/sanbing/jcpp/protocol/yunkuaichong/v150/cmd/YunKuaiChongV150TransactionRecordAckDLCmd.java b/jcpp-protocol-yunkuaichong/src/main/java/sanbing/jcpp/protocol/yunkuaichong/v150/cmd/YunKuaiChongV150TransactionRecordAckDLCmd.java index 68be983..a4b10b6 100644 --- a/jcpp-protocol-yunkuaichong/src/main/java/sanbing/jcpp/protocol/yunkuaichong/v150/cmd/YunKuaiChongV150TransactionRecordAckDLCmd.java +++ b/jcpp-protocol-yunkuaichong/src/main/java/sanbing/jcpp/protocol/yunkuaichong/v150/cmd/YunKuaiChongV150TransactionRecordAckDLCmd.java @@ -10,7 +10,7 @@ import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; import lombok.extern.slf4j.Slf4j; 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.listener.tcp.TcpSession; import sanbing.jcpp.protocol.yunkuaichong.YunKuaiChongDownlinkCmdExe; @@ -33,11 +33,11 @@ public class YunKuaiChongV150TransactionRecordAckDLCmd extends YunKuaiChongDownl public void execute(TcpSession tcpSession, YunKuaiChongDwonlinkMessage yunKuaiChongDwonlinkMessage, ProtocolContext ctx) { log.info("{} 云快充1.5.0交易记录确认", tcpSession); - if (!yunKuaiChongDwonlinkMessage.getMsg().hasTransactionRecordAck()) { + if (!yunKuaiChongDwonlinkMessage.getMsg().hasTransactionRecordResponse()) { return; } - TransactionRecordAck transactionRecordAck = yunKuaiChongDwonlinkMessage.getMsg().getTransactionRecordAck(); + TransactionRecordResponse transactionRecordAck = yunKuaiChongDwonlinkMessage.getMsg().getTransactionRecordResponse(); YunKuaiChongUplinkMessage requestData = JacksonUtil.fromBytes(yunKuaiChongDwonlinkMessage.getMsg().getRequestData().toByteArray(), YunKuaiChongUplinkMessage.class); diff --git a/jcpp-protocol-yunkuaichong/src/main/java/sanbing/jcpp/protocol/yunkuaichong/v150/cmd/YunKuaiChongV150TransactionRecordULCmd.java b/jcpp-protocol-yunkuaichong/src/main/java/sanbing/jcpp/protocol/yunkuaichong/v150/cmd/YunKuaiChongV150TransactionRecordULCmd.java index 1129e79..ad3afb6 100644 --- a/jcpp-protocol-yunkuaichong/src/main/java/sanbing/jcpp/protocol/yunkuaichong/v150/cmd/YunKuaiChongV150TransactionRecordULCmd.java +++ b/jcpp-protocol-yunkuaichong/src/main/java/sanbing/jcpp/protocol/yunkuaichong/v150/cmd/YunKuaiChongV150TransactionRecordULCmd.java @@ -172,7 +172,7 @@ public class YunKuaiChongV150TransactionRecordULCmd extends YunKuaiChongUplinkCm .build(); // 构建交易记录 - TransactionRecord transactionRecord = TransactionRecord.newBuilder() + TransactionRecordRequest transactionRecordRequest = TransactionRecordRequest.newBuilder() .setPileCode(pileCode) .setGunCode(gunCode) .setTradeNo(tradeNo) @@ -188,7 +188,7 @@ public class YunKuaiChongV150TransactionRecordULCmd extends YunKuaiChongUplinkCm // 转发到后端 UplinkQueueMessage uplinkQueueMessage = uplinkMessageBuilder(pileCode, tcpSession, yunKuaiChongUplinkMessage) - .setTransactionRecord(transactionRecord) + .setTransactionRecordRequest(transactionRecordRequest) .build(); tcpSession.getForwarder().sendMessage(uplinkQueueMessage); diff --git a/jcpp-testing/src/main/java/module-info.java b/jcpp-testing/src/main/java/module-info.java new file mode 100644 index 0000000..f398a9f --- /dev/null +++ b/jcpp-testing/src/main/java/module-info.java @@ -0,0 +1,8 @@ +/** + * 开源代码,仅供学习和交流研究使用,商用请联系三丙 + * 微信:mohan_88888 + * 抖音:程序员三丙 + * 付费课程知识星球:https://t.zsxq.com/aKtXo + */ +module jcpp.testing { +} \ No newline at end of file