2024-10-08 09:38:54 +08:00
|
|
|
|
/**
|
2025-03-04 10:42:17 +08:00
|
|
|
|
* 开源代码,仅供学习和交流研究使用,商用请联系三丙
|
|
|
|
|
|
* 微信:mohan_88888
|
|
|
|
|
|
* 抖音:程序员三丙
|
|
|
|
|
|
* 付费课程知识星球:https://t.zsxq.com/aKtXo
|
2024-10-08 09:38:54 +08:00
|
|
|
|
*/
|
|
|
|
|
|
syntax = "proto3";
|
|
|
|
|
|
|
|
|
|
|
|
package infrastructureProto;
|
|
|
|
|
|
|
|
|
|
|
|
option java_package = "sanbing.jcpp.proto.gen";
|
|
|
|
|
|
option java_outer_classname = "ProtocolProto";
|
|
|
|
|
|
|
2024-10-24 15:41:26 +08:00
|
|
|
|
service ProtocolInterface {
|
|
|
|
|
|
rpc onDownlink(stream RequestMsg) returns (stream ResponseMsg) {}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message RequestMsg {
|
|
|
|
|
|
int64 ts = 1;
|
|
|
|
|
|
TracerProto tracer = 2;
|
|
|
|
|
|
ConnectRequestMsg connectRequestMsg = 10;
|
|
|
|
|
|
DownlinkRequestMessage downlinkRequestMessage = 11;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message ResponseMsg {
|
|
|
|
|
|
TracerProto tracer = 2;
|
|
|
|
|
|
ConnectResponseMsg connectResponseMsg = 12;
|
|
|
|
|
|
DownlinkResponseMessage downlinkResponseMsg = 13;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message ConnectResponseMsg {
|
|
|
|
|
|
ConnectResponseCode responseCode = 1;
|
|
|
|
|
|
string errorMsg = 2;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message ConnectRequestMsg {
|
|
|
|
|
|
string nodeId = 1;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
enum ConnectResponseCode {
|
|
|
|
|
|
ACCEPTED = 0;
|
|
|
|
|
|
REFUSE = 1;
|
2024-10-22 17:11:05 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
2024-10-23 17:07:57 +08:00
|
|
|
|
message TracerProto {
|
|
|
|
|
|
string id = 1;
|
|
|
|
|
|
string origin = 2;
|
|
|
|
|
|
int64 ts = 3;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2024-10-08 09:38:54 +08:00
|
|
|
|
message UplinkQueueMessage {
|
|
|
|
|
|
int64 messageIdMSB = 1;
|
|
|
|
|
|
int64 messageIdLSB = 2;
|
|
|
|
|
|
int64 sessionIdMSB = 3;
|
|
|
|
|
|
int64 sessionIdLSB = 4;
|
|
|
|
|
|
string messageKey = 5;
|
|
|
|
|
|
string protocolName = 6;
|
|
|
|
|
|
bytes requestData = 10;
|
|
|
|
|
|
LoginRequest loginRequest = 21;
|
|
|
|
|
|
HeartBeatRequest heartBeatRequest = 22;
|
|
|
|
|
|
VerifyPricingRequest verifyPricingRequest = 23;
|
|
|
|
|
|
QueryPricingRequest queryPricingRequest = 24;
|
|
|
|
|
|
GunRunStatusProto gunRunStatusProto = 25;
|
|
|
|
|
|
ChargingProgressProto chargingProgressProto = 26;
|
|
|
|
|
|
SetPricingResponse setPricingResponse = 27;
|
|
|
|
|
|
RemoteStartChargingResponse remoteStartChargingResponse = 28;
|
|
|
|
|
|
RemoteStopChargingResponse remoteStopChargingResponse = 29;
|
2025-08-18 15:16:25 +08:00
|
|
|
|
TransactionRecordRequest transactionRecordRequest = 30;
|
2025-08-01 06:36:31 +00:00
|
|
|
|
BmsChargingErrorProto bmsChargingErrorProto = 31;
|
2025-08-18 15:16:25 +08:00
|
|
|
|
BmsParamConfigReportProto bmsParamConfigReportProto = 33;
|
2025-08-01 07:20:12 +00:00
|
|
|
|
BmsChargingInfoProto bmsChargingInfoProto = 34;
|
2025-08-05 15:43:57 +08:00
|
|
|
|
BmsAbortProto bmsAbortProto = 35;
|
2025-08-05 11:24:13 +00:00
|
|
|
|
RestartPileResponse restartPileResponse = 36;
|
2025-08-07 23:03:18 +08:00
|
|
|
|
BmsHandshakeProto bmsHandshakeProto = 37;
|
2025-08-13 10:47:49 +00:00
|
|
|
|
OtaResponse otaResponse = 38;
|
2025-08-20 11:37:38 +00:00
|
|
|
|
GroundLockStatusProto groundLockStatusProto = 39;
|
2025-08-25 11:44:58 +08:00
|
|
|
|
OfflineCardBalanceUpdateResponse offlineCardBalanceUpdateResponse = 40;
|
2025-08-25 03:05:54 +00:00
|
|
|
|
OfflineCardSyncResponse offlineCardSyncResponse = 41;
|
2025-08-25 09:26:26 +00:00
|
|
|
|
TimeSyncResponse timeSyncResponse = 42;
|
2025-08-05 11:24:13 +00:00
|
|
|
|
|
2024-10-08 09:38:54 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
2024-10-22 17:11:05 +08:00
|
|
|
|
message DownlinkRequestMessage {
|
2024-10-08 09:38:54 +08:00
|
|
|
|
int64 messageIdMSB = 1;
|
|
|
|
|
|
int64 messageIdLSB = 2;
|
|
|
|
|
|
int64 sessionIdMSB = 3;
|
|
|
|
|
|
int64 sessionIdLSB = 4;
|
|
|
|
|
|
string protocolName = 6;
|
|
|
|
|
|
string pileCode = 7;
|
|
|
|
|
|
optional int64 requestIdMSB = 8;
|
|
|
|
|
|
optional int64 requestIdLSB = 9;
|
|
|
|
|
|
optional bytes requestData = 10;
|
2024-10-23 17:07:57 +08:00
|
|
|
|
string downlinkCmd = 20;
|
|
|
|
|
|
LoginResponse loginResponse = 21;
|
|
|
|
|
|
VerifyPricingResponse verifyPricingResponse = 22;
|
|
|
|
|
|
QueryPricingResponse queryPricingResponse = 23;
|
|
|
|
|
|
SetPricingRequest setPricingRequest = 24;
|
|
|
|
|
|
RemoteStartChargingRequest remoteStartChargingRequest = 25;
|
|
|
|
|
|
RemoteStopChargingRequest remoteStopChargingRequest = 26;
|
2025-08-18 15:16:25 +08:00
|
|
|
|
TransactionRecordResponse transactionRecordResponse = 27;
|
2025-08-05 11:24:13 +00:00
|
|
|
|
RestartPileRequest restartPileRequest = 28;
|
2025-08-13 10:47:49 +00:00
|
|
|
|
OtaRequest otaRequest = 29;
|
2025-08-25 11:44:58 +08:00
|
|
|
|
OfflineCardBalanceUpdateRequest offlineCardBalanceUpdateRequest = 30;
|
2025-08-25 03:05:54 +00:00
|
|
|
|
OfflineCardSyncRequest offlineCardSyncRequest = 31;
|
2025-08-25 09:26:26 +00:00
|
|
|
|
TimeSyncRequest timeSyncRequest = 32;
|
2024-10-08 09:38:54 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
2024-10-22 17:11:05 +08:00
|
|
|
|
message DownlinkResponseMessage {
|
|
|
|
|
|
bool success = 1;
|
|
|
|
|
|
optional string error = 2;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2024-10-08 09:38:54 +08:00
|
|
|
|
message LoginRequest {
|
2024-10-09 20:44:44 +08:00
|
|
|
|
string pileCode = 2;
|
|
|
|
|
|
string credential = 3;
|
2024-10-08 09:38:54 +08:00
|
|
|
|
string remoteAddress = 4;
|
|
|
|
|
|
string nodeId = 10;
|
2024-10-23 17:07:57 +08:00
|
|
|
|
string nodeHostAddress = 11;
|
|
|
|
|
|
int32 nodeRestPort = 12;
|
|
|
|
|
|
int32 nodeGrpcPort = 13;
|
2024-10-08 09:38:54 +08:00
|
|
|
|
optional string additionalInfo = 20;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message LoginResponse {
|
|
|
|
|
|
bool success = 1;
|
|
|
|
|
|
string pileCode = 2;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message HeartBeatRequest {
|
|
|
|
|
|
string pileCode = 3;
|
|
|
|
|
|
string remoteAddress = 4;
|
|
|
|
|
|
string nodeId = 10;
|
2024-10-23 17:07:57 +08:00
|
|
|
|
string nodeHostAddress = 11;
|
|
|
|
|
|
int32 nodeRestPort = 12;
|
|
|
|
|
|
int32 nodeGrpcPort = 13;
|
2024-10-08 09:38:54 +08:00
|
|
|
|
optional string additionalInfo = 20;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message VerifyPricingRequest {
|
|
|
|
|
|
string pileCode = 4;
|
|
|
|
|
|
int64 pricingId = 30;
|
|
|
|
|
|
optional string pricingModel = 31;
|
|
|
|
|
|
optional string additionalInfo = 20;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message VerifyPricingResponse {
|
|
|
|
|
|
bool success = 1;
|
|
|
|
|
|
int64 pricingId = 30;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message QueryPricingRequest {
|
|
|
|
|
|
string pileCode = 4;
|
|
|
|
|
|
optional string additionalInfo = 20;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message QueryPricingResponse {
|
|
|
|
|
|
string pileCode = 4;
|
|
|
|
|
|
int64 pricingId = 30;
|
|
|
|
|
|
PricingModelProto pricingModel = 1;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message PricingModelProto {
|
|
|
|
|
|
PricingModelType type = 3;
|
|
|
|
|
|
PricingModelRule rule = 4;
|
2024-10-08 16:56:29 +08:00
|
|
|
|
string standardElec = 5;
|
|
|
|
|
|
string standardServ = 6;
|
2024-10-08 09:38:54 +08:00
|
|
|
|
map<int32, FlagPriceProto> flagPrice = 8;
|
|
|
|
|
|
repeated PeriodProto period = 9;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message PeriodProto {
|
|
|
|
|
|
int32 sn = 1;
|
|
|
|
|
|
string begin = 2;
|
|
|
|
|
|
string end = 3;
|
|
|
|
|
|
PricingModelFlag flag = 4;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message FlagPriceProto {
|
|
|
|
|
|
PricingModelFlag flag = 1;
|
2024-10-08 16:56:29 +08:00
|
|
|
|
string elec = 2;
|
|
|
|
|
|
string serv = 3;
|
2024-10-08 09:38:54 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
enum PricingModelType {
|
|
|
|
|
|
CHARGE = 0; // 充电费率模型
|
|
|
|
|
|
DISCHARGE = 1; // 放电费率模型
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
enum PricingModelRule {
|
|
|
|
|
|
STANDARD = 0;
|
|
|
|
|
|
SPLIT_TIME = 1;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
enum PricingModelFlag {
|
|
|
|
|
|
TOP = 0; // 尖峰
|
|
|
|
|
|
PEAK = 1; // 峰
|
|
|
|
|
|
FLAT = 2; // 平
|
|
|
|
|
|
VALLEY = 3; // 谷
|
|
|
|
|
|
DEEP = 4; // 深谷
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
enum GunRunStatus {
|
|
|
|
|
|
IDLE = 0; // 空闲
|
|
|
|
|
|
INSERTED = 1; // 已插枪
|
|
|
|
|
|
CHARGING = 2; // 充电中
|
|
|
|
|
|
CHARGE_COMPLETE = 3; // 充电完成
|
|
|
|
|
|
DISCHARGE_READY = 4; // 放电准备
|
|
|
|
|
|
DISCHARGING = 5; // 放电中
|
|
|
|
|
|
DISCHARGE_COMPLETE = 6; // 放电完成
|
|
|
|
|
|
RESERVED = 7; // 预约
|
|
|
|
|
|
FAULT = 8; // 故障
|
|
|
|
|
|
UNKNOWN = 9; // 未知
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message GunRunStatusProto {
|
|
|
|
|
|
int64 ts = 1;
|
|
|
|
|
|
string pileCode = 4;
|
|
|
|
|
|
string gunCode = 5;
|
|
|
|
|
|
GunRunStatus GunRunStatus = 41;
|
|
|
|
|
|
repeated string faultMessages = 6;
|
|
|
|
|
|
optional string additionalInfo = 20;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message ChargingProgressProto {
|
|
|
|
|
|
int64 ts = 1;
|
|
|
|
|
|
string pileCode = 4;
|
|
|
|
|
|
string gunCode = 5;
|
|
|
|
|
|
string tradeNo = 6;
|
2024-10-08 16:56:29 +08:00
|
|
|
|
string outputVoltage = 7;
|
|
|
|
|
|
string outputCurrent = 8;
|
|
|
|
|
|
int32 soc = 9;
|
2024-10-08 09:38:54 +08:00
|
|
|
|
int32 totalChargingDurationMin = 10;
|
2024-10-08 16:56:29 +08:00
|
|
|
|
string totalChargingEnergyKWh = 11;
|
|
|
|
|
|
string totalChargingCostYuan = 12;
|
2024-10-08 09:38:54 +08:00
|
|
|
|
optional string additionalInfo = 20;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message SetPricingRequest {
|
|
|
|
|
|
string pileCode = 4;
|
|
|
|
|
|
int64 pricingId = 30;
|
|
|
|
|
|
PricingModelProto pricingModel = 1;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message SetPricingResponse {
|
|
|
|
|
|
bool success = 1;
|
|
|
|
|
|
string pileCode = 4;
|
|
|
|
|
|
int64 pricingId = 30;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message RemoteStartChargingRequest {
|
|
|
|
|
|
string pileCode = 4;
|
|
|
|
|
|
string gunCode = 5;
|
|
|
|
|
|
string tradeNo = 6;
|
2024-10-24 15:41:26 +08:00
|
|
|
|
string limitYuan = 7;
|
2025-08-25 14:04:25 +00:00
|
|
|
|
optional string logicalCardNo = 8; // 逻辑卡号
|
|
|
|
|
|
optional string physicalCardNo = 9; // 物理卡号
|
|
|
|
|
|
optional string parallelNo = 10; // 并充序号
|
2024-10-08 09:38:54 +08:00
|
|
|
|
optional string additionalInfo = 20;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2025-08-05 11:24:13 +00:00
|
|
|
|
message RestartPileRequest {
|
|
|
|
|
|
string pileCode = 4;
|
|
|
|
|
|
int32 type = 7;
|
2025-08-05 19:34:39 +08:00
|
|
|
|
optional string additionalInfo = 20;
|
2025-08-05 11:24:13 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
2024-10-08 09:38:54 +08:00
|
|
|
|
message RemoteStartChargingResponse {
|
|
|
|
|
|
int64 ts = 1;
|
|
|
|
|
|
string pileCode = 4;
|
|
|
|
|
|
string gunCode = 5;
|
|
|
|
|
|
string tradeNo = 6;
|
|
|
|
|
|
bool success = 7;
|
|
|
|
|
|
string failReason = 8;
|
|
|
|
|
|
optional string additionalInfo = 20;
|
|
|
|
|
|
}
|
2025-08-05 11:24:13 +00:00
|
|
|
|
message RestartPileResponse {
|
|
|
|
|
|
int64 ts = 1;
|
|
|
|
|
|
string pileCode = 4;
|
|
|
|
|
|
bool success = 7;
|
|
|
|
|
|
}
|
2024-10-08 09:38:54 +08:00
|
|
|
|
|
|
|
|
|
|
message RemoteStopChargingRequest {
|
|
|
|
|
|
string pileCode = 4;
|
|
|
|
|
|
string gunCode = 5;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message RemoteStopChargingResponse {
|
|
|
|
|
|
int64 ts = 1;
|
|
|
|
|
|
string pileCode = 4;
|
|
|
|
|
|
string gunCode = 5;
|
|
|
|
|
|
bool success = 7;
|
|
|
|
|
|
string failReason = 8;
|
|
|
|
|
|
optional string additionalInfo = 20;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2025-08-11 10:53:06 +00:00
|
|
|
|
enum DetailType {
|
|
|
|
|
|
PEAK_VALLEY = 0; // 峰谷电量明细
|
|
|
|
|
|
TIME_PERIOD = 1; // 时段电量明细
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message PeakValleyDetail {
|
|
|
|
|
|
string topEnergyKWh = 1; // 尖峰电量
|
|
|
|
|
|
string topAmountYuan = 2; // 尖峰电费
|
|
|
|
|
|
string peakEnergyKWh = 3; // 峰时电量
|
|
|
|
|
|
string peakAmountYuan = 4; // 峰时电费
|
|
|
|
|
|
string flatEnergyKWh = 5; // 平时电量
|
|
|
|
|
|
string flatAmountYuan = 6; // 平时电费
|
|
|
|
|
|
string valleyEnergyKWh = 7; // 谷时电量
|
|
|
|
|
|
string valleyAmountYuan = 8; // 谷时电费
|
|
|
|
|
|
string deepEnergyKWh = 9; // 深谷电量
|
|
|
|
|
|
string deepAmountYuan = 10; // 深谷电费
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message TimePeriodDetail {
|
|
|
|
|
|
message PeriodItem {
|
|
|
|
|
|
int32 periodNo = 1; // 时段序号,从1开始
|
|
|
|
|
|
string startTime = 2; // 开始时间,格式 HH:mm:ss
|
|
|
|
|
|
string endTime = 3; // 结束时间,格式 HH:mm:ss
|
|
|
|
|
|
string energyKWh = 4; // 该时段电量
|
|
|
|
|
|
optional string amountYuan = 5; // 该时段电费,可选
|
|
|
|
|
|
}
|
|
|
|
|
|
repeated PeriodItem periods = 1; // 时段列表
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message TransactionDetail {
|
|
|
|
|
|
DetailType type = 1; // 明细类型
|
|
|
|
|
|
optional PeakValleyDetail peakValley = 2; // 峰谷电量明细
|
|
|
|
|
|
optional TimePeriodDetail timePeriod = 3; // 时段电量明细
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2025-08-18 15:16:25 +08:00
|
|
|
|
message TransactionRecordRequest {
|
2025-08-11 10:53:06 +00:00
|
|
|
|
string pileCode = 4; // 充电桩编码
|
|
|
|
|
|
string gunCode = 5; // 枪编号
|
|
|
|
|
|
string tradeNo = 6; // 交易流水号
|
|
|
|
|
|
int64 startTs = 51; // 开始时间戳
|
|
|
|
|
|
int64 endTs = 52; // 结束时间戳
|
|
|
|
|
|
string totalEnergyKWh = 53; // 总电量(必填)
|
|
|
|
|
|
optional string totalAmountYuan = 54; // 总电费(可选)
|
|
|
|
|
|
int64 tradeTs = 55; // 交易时间戳
|
|
|
|
|
|
string stopReason = 56; // 停止原因
|
|
|
|
|
|
int64 pricingId = 57; // 计费ID
|
|
|
|
|
|
optional TransactionDetail detail = 58; // 电量电费明细
|
|
|
|
|
|
optional string additionalInfo = 20; // 附加信息
|
2024-10-08 09:38:54 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
2025-08-01 06:36:31 +00:00
|
|
|
|
message BmsChargingErrorProto {
|
|
|
|
|
|
int64 ts = 1;
|
|
|
|
|
|
string pileCode = 4;
|
|
|
|
|
|
string gunCode = 5;
|
|
|
|
|
|
string tradeNo = 6;
|
|
|
|
|
|
optional string additionalInfo = 20;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2025-08-18 15:16:25 +08:00
|
|
|
|
message TransactionRecordResponse {
|
2024-10-08 09:38:54 +08:00
|
|
|
|
string tradeNo = 6;
|
|
|
|
|
|
bool success = 7;
|
2025-08-20 11:21:10 +00:00
|
|
|
|
optional string additionalInfo = 20;
|
2025-08-01 03:00:50 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
2025-08-18 15:16:25 +08:00
|
|
|
|
message BmsParamConfigReportProto {
|
2025-08-01 03:00:50 +00:00
|
|
|
|
int64 ts = 1; // 时间戳
|
|
|
|
|
|
string pileCode = 2; // 桩编码
|
|
|
|
|
|
string gunCode = 3; // 枪编码
|
|
|
|
|
|
string tradeNo = 4; // 交易号
|
|
|
|
|
|
string maxSingleCellVoltage = 5; // BMS单体最高允许充电电压 (V)
|
|
|
|
|
|
string maxChargeCurrent = 6; // BMS最高允许充电电流 (A)
|
|
|
|
|
|
string ratedEnergy = 7; // BMS动力蓄电池标称总能量 (kWh)
|
|
|
|
|
|
string maxTotalChargeVoltage = 8; // BMS最高允许充电总电压 (V)
|
|
|
|
|
|
string maxTemperature = 9; // BMS最高允许温度 (℃)
|
|
|
|
|
|
string soc = 10; // BMS荷电状态SOC (%)
|
|
|
|
|
|
string currentBatteryVoltage = 11; // BMS当前电池电压 (V)
|
|
|
|
|
|
string pileMaxOutputVoltage = 12; // 电桩最高输出电压 (V)
|
|
|
|
|
|
string pileMinOutputVoltage = 13; // 电桩最低输出电压 (V)
|
|
|
|
|
|
string pileMaxOutputCurrent = 14; // 电桩最大输出电流 (A)
|
|
|
|
|
|
string pileMinOutputCurrent = 15; // 电桩最小输出电流 (A)
|
2025-08-01 07:20:12 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message BmsChargingInfoProto {
|
2025-08-07 23:03:18 +08:00
|
|
|
|
int64 ts = 1; // 时间戳
|
|
|
|
|
|
string pileCode = 4;
|
|
|
|
|
|
string gunCode = 5;
|
|
|
|
|
|
string tradeNo = 6;
|
|
|
|
|
|
optional string additionalInfo = 20;
|
2025-08-05 07:32:39 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
2025-08-13 10:47:49 +00:00
|
|
|
|
message OtaRequest {
|
|
|
|
|
|
string pileCode = 1; // 桩编号
|
|
|
|
|
|
int32 pileModel = 2; // 桩型号
|
|
|
|
|
|
int32 pilePower = 3; // 桩功率
|
|
|
|
|
|
string address = 4; // 升级服务器地址
|
|
|
|
|
|
int32 port = 5; // 升级服务器端口
|
|
|
|
|
|
string username = 6; // 用户名
|
|
|
|
|
|
string password = 7; // 密码
|
|
|
|
|
|
string filePath = 8; // 文件路径
|
|
|
|
|
|
int32 executionControl = 9; // 执行控制
|
|
|
|
|
|
int32 downloadTimeout = 10; // 下载超时时间
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message OtaResponse {
|
|
|
|
|
|
string pileCode = 1; // 桩编号
|
|
|
|
|
|
bool success = 2;
|
|
|
|
|
|
optional string errorMsg = 3;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2025-08-05 15:43:57 +08:00
|
|
|
|
message BmsAbortProto {
|
2025-08-07 23:03:18 +08:00
|
|
|
|
int64 ts = 1; // 时间戳
|
2025-08-05 07:32:39 +00:00
|
|
|
|
string pileCode = 4;
|
|
|
|
|
|
string gunCode = 5;
|
|
|
|
|
|
string tradeNo = 6;
|
|
|
|
|
|
optional string additionalInfo = 20;
|
2025-08-07 23:03:18 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message BmsHandshakeProto {
|
|
|
|
|
|
int64 ts = 1; // 时间戳
|
|
|
|
|
|
string pileCode = 2; // 桩编码
|
|
|
|
|
|
string gunCode = 3; // 枪编码
|
|
|
|
|
|
string tradeNo = 4; // 交易流水号
|
|
|
|
|
|
string bmsProtocolVersion = 5; // BMS通信协议版本号
|
|
|
|
|
|
int32 bmsBatteryType = 6; // BMS电池类型
|
|
|
|
|
|
int32 bmsPowerCapacity = 7; // BMS整车动力蓄电池系统额定容量
|
|
|
|
|
|
int32 bmsPowerMaxVoltage = 8; // BMS整车动力蓄电池系统额定总电压
|
|
|
|
|
|
string bmsFactory = 9; // BMS电池生产厂商名称
|
|
|
|
|
|
int32 bmsSerialNo = 10; // BMS电池组序号
|
|
|
|
|
|
int32 bmsCreateYear = 11; // BMS电池组生产日期年
|
|
|
|
|
|
int32 bmsCreateMonth = 12; // BMS电池组生产日期月
|
|
|
|
|
|
int32 bmsCreateDay = 13; // BMS电池组生产日期日
|
|
|
|
|
|
int32 bmsChargeCount = 14; // BMS电池组充电次数
|
|
|
|
|
|
int32 bmsPropertyRightLabel = 15; // BMS电池组产权标识
|
|
|
|
|
|
string carVinCode = 16; // 车辆识别码(VIN)
|
|
|
|
|
|
string bmsSoftwareVersion = 17; // BMS软件版本号
|
|
|
|
|
|
optional string additionalInfo = 20; // 附加信息
|
2025-08-20 11:37:38 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message GroundLockStatusProto {
|
|
|
|
|
|
int64 ts = 1; // 时间戳
|
|
|
|
|
|
string pileCode = 2; // 桩编号
|
|
|
|
|
|
string gunCode = 3; // 枪号
|
|
|
|
|
|
int32 lockStatus = 4; // 车位锁状态
|
|
|
|
|
|
int32 parkStatus = 5; // 车位状态
|
|
|
|
|
|
int32 lockBattery = 6; // 地锁电量状态 (百分比值0~100)
|
|
|
|
|
|
int32 alarmStatus = 7; // 报警状态
|
|
|
|
|
|
int32 reserved = 8; // 预留位
|
|
|
|
|
|
optional string additionalInfo = 20; // 附加信息
|
2025-08-25 03:05:54 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
2025-08-25 11:44:58 +08:00
|
|
|
|
message OfflineCardBalanceUpdateRequest {
|
2025-08-25 03:05:54 +00:00
|
|
|
|
string pileCode = 1; // 充电桩编码
|
|
|
|
|
|
string gunCode = 2; // 枪编号
|
|
|
|
|
|
string cardNo = 3; // 物理卡号
|
|
|
|
|
|
string limitYuan = 4; // 余额
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2025-08-25 11:44:58 +08:00
|
|
|
|
message OfflineCardBalanceUpdateResponse {
|
2025-08-25 03:05:54 +00:00
|
|
|
|
string pileCode = 1; // 充电桩编码
|
|
|
|
|
|
string cardNo = 2; // 物理卡号
|
|
|
|
|
|
bool success = 3;
|
|
|
|
|
|
optional string errorMsg = 4;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message OfflineCardSyncRequest {
|
|
|
|
|
|
string pileCode = 1; // 充电桩编码
|
|
|
|
|
|
int32 total = 2; // 下发卡个数
|
|
|
|
|
|
repeated CardInfo cardInfo = 3; // 卡号集合
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message CardInfo {
|
|
|
|
|
|
string cardNo = 1; // 物理卡号
|
|
|
|
|
|
string logicCardNo = 2; // 逻辑卡号
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
message OfflineCardSyncResponse {
|
|
|
|
|
|
string pileCode = 1; // 充电桩编码
|
|
|
|
|
|
bool success = 3;
|
|
|
|
|
|
optional string errorMsg = 4;
|
2025-08-25 09:26:26 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message TimeSyncRequest {
|
|
|
|
|
|
string pileCode = 1;
|
|
|
|
|
|
string time = 2;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
message TimeSyncResponse {
|
|
|
|
|
|
string pileCode = 1;
|
|
|
|
|
|
string time = 2;
|
|
|
|
|
|
}
|