diff --git a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupEquipmentInfo.java b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupEquipmentInfo.java new file mode 100644 index 000000000..ad73c04da --- /dev/null +++ b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupEquipmentInfo.java @@ -0,0 +1,274 @@ +package com.jsowell.thirdparty.platform.domain; +import com.alibaba.fastjson2.annotation.JSONField; +import com.jsowell.pile.thirdparty.ConnectorInfo; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.math.BigDecimal; +import java.util.List; + +/** + * 充电设备信息 + */ +@Builder +@AllArgsConstructor +@NoArgsConstructor +@Data +public class SupEquipmentInfo { + /** + * 设备编码 Y + * 设备唯一编码,对同一对接平台,保证唯一 + */ + @JSONField(name = "EquipmentID") + private String equipmentID; + + /** + * 设备唯一编码 + *设备生产商组织机构代 码 9 位+设备出厂唯一 编码 + */ + @JSONField(name = "EquipmentUniqueNumber") + private String equipmentUniqueNumber; + + /** + * 设备生产商组织机构代码 Y + */ + @JSONField(name = "ManufacturerID") + private String manufacturerID; + + /** + * 设备生产商名称 + */ + @JSONField(name = "ManufacturerName") + private String manufacturerName; + + /** + * 设备型号 N + * 由设备生厂商定义的设备型号 + */ + @JSONField(name = "EquipmentModel") + private String equipmentModel; + + /** + * 设备名称 N + */ + @JSONField(name = "EquipmentName") + private String equipmentName; + + /** + * 设备生产日期 N + * YYYY-MM-DD + */ + @JSONField(name = "ProductionDate") + private String productionDate; + + /** + * 建设时间 Y + * YYYY-MM-DD + */ + @JSONField(name = "ConstructionTime") + private String constructionTime; + + /** + * 设备类型(1-直流设备;2-交流设备;3-交直流一体设备) Y + */ + @JSONField(name = "EquipmentType") + private Integer equipmentType; + + /** + * 设备分类 + * 1:车辆充电设备 2:换电站内的电池箱 充电设备 + */ + @JSONField(name = "EquipmentClassification") + private Integer EquipmentClassification; + + /** + * 设备状态 Y + * 0:未知 + * 1:建设中 + * 5:关闭下线 + * 6:维护中 + * 50:正常使用 + */ + @JSONField(name = "EquipmentStatus") + private Integer equipmentStatus; + + /** + * 额定功率(单位:kW) Y + */ + @JSONField(name = "EquipmentPower") + private BigDecimal equipmentPower; + + /** + * 新国标(0-否;1-是) Y + * 是否新国标 + */ + @JSONField(name = "NewNationalStandard") + private Integer newNationalStandard; + + /** + * 充电设备接口列表 Y + * 该充电设备所有的充电设备接口的信息对象集合 + */ + @JSONField(name = "ConnectorInfos") + private List connectorInfos; + + /** + * 充电设备经度 N + * GCJ-02坐标系 + */ + @JSONField(name = "EquipmentLng") + private BigDecimal equipmentLng; + + /** + * 充电设备纬度 N + * GCJ-02坐标系 + */ + @JSONField(name = "EquipmentLat") + private BigDecimal equipmentLat; + + /** + * 是否支持VIN码识别(0-否;1-是) Y + */ + @JSONField(name = "VinFlag") + private Integer vinFlag; + + /** + * 设备总功率 + */ + @JSONField(name = "Power") + private BigDecimal power; + + @Data + public static class SupConnectorInfo{ + /** + * 充电设备接口编码 Y + * 充电设备接口编码,同一对接平台内唯一 + */ + @JSONField(name = "ConnectorID") + private String connectorID; + + /** + * 设备接口分类 + * 1:车辆充电设备接口 + * 2:换电站内的电池箱 充电设备接口 + */ + @JSONField(name = "EquipmentClassification") + private String equipmentClassification; + + /** + * 充电设备接口名称 N + */ + @JSONField(name = "ConnectorName") + private String connectorName; + + /** + * 充电设备接口类型 Y + * 1:家用插座(模式2) + * 2:交流接口插座(模式3,连接方式B ) + * 3:交流接口插头(带枪线,模式3,连接方式C) + * 4:直流接口枪头(带枪线,模式4) + */ + @JSONField(name = "ConnectorType") + private Integer connectorType; + + /** + * 额定电压上限(单位:V) Y + */ + @JSONField(name = "VoltageUpperLimits") + private Integer voltageUpperLimits; + + /** + * 额定电压下限(单位:V) Y + */ + @JSONField(name = "VoltageLowerLimits") + private Integer voltageLowerLimits; + + /** + *恒功率电压上限 + */ + @JSONField(name = "ConstantVoltageUpperLimits") + private Integer constantVoltageUpperLimits; + + /** + *恒功率电压下限 + */ + @JSONField(name = "ConstantVoltageLowerLimits") + private Integer constantVoltageLowerLimits; + + /** + * 额定电流(单位:A) Y + */ + @JSONField(name = "Current") + private Integer current; + + /** + *恒功率电流上限 + */ + @JSONField(name = "ConstantCurrentUpperLimits") + private Integer ConstantCurrentUpperLimits; + + /** + *恒功率电流下限 + */ + @JSONField(name = "ConstantCurrentLowerLimits") + private Integer ConstantCurrentLowerLimits; + + /** + * 额定功率(单位:kW) Y + */ + @JSONField(name = "Power") + private BigDecimal power; + + /** + * 车位号 N + * 停车场车位编号 + */ + @JSONField(name = "ParkNo") + private String parkNo; + + + /** + * 运营状态 + * 0-未知 + * 1-建设中 + * 5-关闭下线 + * 6-维护中 + * 50-正常使用 + */ + @JSONField(name = "OperateStatus") + private Integer operateStatus; + + /** + * 运营状态 + * 0-未知 + * 1-建设中 + * 5-关闭下线 + * 6-维护中 + * 50-正常使用 + */ + @JSONField(name = "OpreateStatus") + private Integer opreateStatus; + + /** + * 国家标准 + */ + @JSONField(name = "NationalStandard") + private Integer nationalStandard; + + /** + * 辅助电源 + */ + @JSONField(name = "AuxPower") + private Integer auxPower; + + /** + * 运营时间 + */ + @JSONField(name = "OpreateHours") + private String opreateHours; + + } + +} diff --git a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupStationStatsInfo.java b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupStationStatsInfo.java index 1e47fc5d1..ba84818e1 100644 --- a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupStationStatsInfo.java +++ b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupStationStatsInfo.java @@ -104,9 +104,8 @@ public class SupStationStatsInfo { @JSONField(name = "EquipmentStatsInfos") private List equipmentStatsInfos; - @Data - public static class EquipmentStatsInfo{ + public static class EquipmentStatsInfo { /** * 充电设备编码 @@ -153,8 +152,7 @@ public class SupStationStatsInfo { private List connectorStatsInfos; @Data - public static class ConnectorStatsInfo{ - + public static class ConnectorStatsInfo { /** * 充电设备接口编码 * 1:车辆充电设备 @@ -195,6 +193,95 @@ public class SupStationStatsInfo { } + @Data + public static class SupEquipmentStatsInfo { + /** + * 充电设备编码 + */ + @JSONField(name = "EquipmentID") + private String equipmentId; + + /** + * 设备分类 + * 1:车辆充电设备 + * 2:换电站内的电池箱充电设备 + */ + @JSONField(name = "EquipmentClassification") + private Integer equipmentClassification; + + /** + * 充电设备累计电量 + */ + @JSONField(name = "EquipmentElectricity") + private BigDecimal equipmentElectricity; + + /** + * 充电设备累计充电时长 + */ + @JSONField(name = "EquipmentTotalChargeTime") + private Integer equipmentTotalChargeTime; + + /** + * 充电设备累计充电次数 + */ + @JSONField(name = "EquipmentTotalChargeNum") + private Integer equipmentTotalChargeNum; + + /** + * 充电设备累计告警数量 + */ + @JSONField(name = "EquipmentTotalWarningNum") + private Integer equipmentTotalWarningNum; + + /** + * 充电设备接口运行统计信息列表 + */ + @JSONField(name = "ConnectorStatsInfos") + private List connectorStatsInfos; + + + @Data + public static class SupConnectorStatsInfo { + + /** + * 充电设备接口编码 + * 1:车辆充电设备 + * 2:换电站内的电池箱充电设备 + */ + @JSONField(name = "ConnectorID") + private String connectorId; + + /** + * 设备分类 + */ + @JSONField(name = "EquipmentClassification") + private Integer equipmentClassification; + + /** + * 充电设备接口累计电量 + */ + @JSONField(name = "ConnectorElectricity") + private BigDecimal connectorElectricity; + + /** + * 充电设备接口累计充电时长 + */ + @JSONField(name = "ConnectorTotalChargeTime") + private Integer connectorTotalChargeTime; + + /** + * 充电设备接口累计充电次数 + */ + @JSONField(name = "ConnectorTotalChargeNum") + private Integer connectorTotalChargeNum; + + /** + * 充电设备接口累计告警数量 + */ + @JSONField(name = "ConnectorTotalWarningNum") + private Integer connectorTotalWarningNum; + } + } } } diff --git a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupStationStatusInfo.java b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupStationStatusInfo.java index 3eb65bc3d..cac2f6b1f 100644 --- a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupStationStatusInfo.java +++ b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupStationStatusInfo.java @@ -3,6 +3,7 @@ package com.jsowell.thirdparty.platform.domain; import com.alibaba.fastjson2.annotation.JSONField; import lombok.*; +import java.math.BigDecimal; import java.util.List; /** @@ -35,6 +36,54 @@ public class SupStationStatusInfo { @JSONField(name = "StationID") private String stationID; + /** + * 站点分类 + * 1:充电站 + * 2:换电站 + * 3:充换电一体站 + */ + @JSONField(name = "StationClassification") + private Integer stationClassification; + + /** + * 统计开始时间 + * 格式“yyyy-MM-dd”, 以 充电结束时间为准 + */ + @JSONField(name = "StartTime") + private String startTime; + + /** + * 统计结束时间 + * 格式“yyyy-MM-dd”, 以 充电结束时间为准 + */ + @JSONField(name = "EndTime") + private String endTime; + + /** + * 充换电站累计用电量 + */ + @JSONField(name = "StationElectricity") + private BigDecimal stationElectricity; + + /** + * 充换电站累计充电时长 + */ + @JSONField(name = "StationTotalChargeTime") + private Integer stationTotalChargeTime; + + /** + * 充换电站累计充电次数 + */ + @JSONField(name = "StationTotalChargeNum") + private Integer stationTotalChargeNum; + + /** + * 充换电站累计告警数量 + */ + @JSONField(name = "StationTotalWarningNum") + private Integer stationTotalWarningNum; + + /** * 名称: 充电设备接口状态列表 * 描述: 充电设备接口状态数组,参照充电设备接口状态信息(SupConnectorStatusInfo) diff --git a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupSwapOrderInfo.java b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupSwapOrderInfo.java new file mode 100644 index 000000000..eeda637a2 --- /dev/null +++ b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupSwapOrderInfo.java @@ -0,0 +1,106 @@ +package com.jsowell.thirdparty.platform.domain; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + + +/** + * 充电状态信息 + * + * @author Lemon + * @Date 2024/6/11 14:31:36 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +public class SupSwapOrderInfo { + /** + * 换电订单编号 + */ + @JSONField(name = "SwapOrderID") + private Integer swapOrderId; + + /** + * 平台运营商ID + */ + @JsonProperty(value = "OperatorID") + private String operatorId; + + /** + * 设备所属方 + * IDEquipmentOwnerID + * 场站属主的组织机构代码 所属方为个人时填写 999999999 + * 是 + * 字符串 + * 9字符 + */ + @JSONField(name = "EquipmentOwnerID") + private String equipmentOwnerID; + + /** + * 充电订单号 + */ + @JSONField(name = "OrderNo") + private String orderNo; + + /** + * 充电订单号 + */ + @JSONField(name = "ChargeType") + private Integer chargeType; + + /** + * 换下电池编 码 + * 电池系统唯一识别 号,车辆换下电池 包编码 + */ + @JSONField(name = "LoadPackVIN") + private String loadPackVIN; + + /** + * 装载电池编 码 + * 电池系统唯一识别 号,装载到车辆电 池包编码 + */ + @JSONField(name = "UploadPackVIN") + private String uploadPackVIN; + + /** + * 换电开始时 间 + * 格式 “yyyy-MM- ddHH: mm : ss” + */ + @JSONField(name = "SwapStartTime") + private String swapStartTime; + + /** + * 换电开结束时 间 + * 格式 “yyyy-MM- ddHH: mm : ss” + */ + @JSONField(name = "SwapEndTime") + private String SwapEndTime; + + /** + * 订单里程 + * 换下电池换电前后 可行驶里程之差 + */ + @JSONField(name = "ApplyMileage") + private Integer ApplyMileage; + + /** + * 换电费用 + * 换电单笔订单总费 用 + */ + @JSONField(name = "SwapMoney") + private Integer swapMoney; + + /** + * 换电电量 + * 换电电量(电池充 满电后再传) + */ + @JSONField(name = "SwapPower") + private Integer swapPower; + +}