diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/domain/PileStationInfo.java b/jsowell-pile/src/main/java/com/jsowell/pile/domain/PileStationInfo.java index dcaabe829..d286dc898 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/domain/PileStationInfo.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/domain/PileStationInfo.java @@ -1,5 +1,6 @@ package com.jsowell.pile.domain; +import com.alibaba.fastjson2.annotation.JSONField; import com.jsowell.common.annotation.Excel; import com.jsowell.common.core.domain.BaseEntity; import lombok.Data; @@ -8,6 +9,7 @@ import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; import java.math.BigDecimal; +import java.util.List; /** * 充电站信息对象 pile_station_info @@ -336,6 +338,52 @@ public class PileStationInfo extends BaseEntity { @Excel(name = "是否有地锁(0-无;1-有)") private String parkingLockFlag; + /** + *服务车型描述 + */ + @Excel(name = "服务车型描述") + private List swapMatchCars; + + /** + *是否为通用类型 + */ + @Excel(name = "是否为通用类型(1-通用 ; 2-非通用)") + private Integer generalApplicationType; + + /** + *充换电站方位 + * 1:地面-停车场 + * 2:地面-路侧 + * 3:地下停车场 + * 4:立体式停车楼 + */ + @Excel(name = "充换电站方位") + private Integer stationOrientation; + + /** + * 充换电站建筑面积 + */ + @Excel(name = "充换电站建筑面积") + private String stationArea; + + /** + * 充换电站人工值守 + */ + @Excel(name = "是否有充换电站人工值守(0-无 ; 1-有)") + private String havePerson; + + /** + * 周边配套设施 + * 1:卫生间 + * 2:便利店 + * 3:餐厅 + * 4:休息室 + * 5:雨棚 + */ + @Excel(name = "周边配套设施") + private String supportingFacilities; + + /** * 删除标识(0-正常;1-删除) */ @@ -386,6 +434,8 @@ public class PileStationInfo extends BaseEntity { .append("barrierFlag", barrierFlag) .append("parkingLockFlag", parkingLockFlag) .append("delFlag", delFlag) + .append("swapMatchCars", swapMatchCars) + .append("generalApplicationType",generalApplicationType) .toString(); } } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/thirdparty/publicinfo/BaseStationInfo.java b/jsowell-pile/src/main/java/com/jsowell/pile/thirdparty/publicinfo/BaseStationInfo.java index fca136e8d..3fe6922d1 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/thirdparty/publicinfo/BaseStationInfo.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/thirdparty/publicinfo/BaseStationInfo.java @@ -186,6 +186,14 @@ public class BaseStationInfo { @JSONField(name = "MatchCars") private String matchCars; + /** + * 服务车型描述 + * 描述换电站可服务的车系车型(厂牌型号) + * 注:站点分类为 2 或 3 时,此字段必填,为 1 时非必填。 + */ + @JSONField(name = "SwapMatchCars") + private List swapMatchCars; + /** * 车位楼层及数量描述 N * 车位楼层以及数量信息 diff --git a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/common/SupStationPowerInfo.java b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/common/SupStationPowerInfo.java index 1f63e6d0c..a5aa795cc 100644 --- a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/common/SupStationPowerInfo.java +++ b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/common/SupStationPowerInfo.java @@ -1,6 +1,7 @@ package com.jsowell.thirdparty.platform.common; import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonProperty; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -67,7 +68,6 @@ public class SupStationPowerInfo { @JSONField(name = "EquipmentPowerInfos") private List equipmentPowerInfos; - @Data public static class EquipmentPowerInfo{ /** @@ -136,4 +136,74 @@ public class SupStationPowerInfo { private BigDecimal connectorRealTimePower; } } + @Data + private static class SupEquipmentPowerInfo{ + + /** + * 充电设备编码 + */ + @JSONField(name = "EquipmentID") + private String equipmentID; + + /** + * 设备分类 + * 1:车辆充电设备 + * 2:换电站内的电池箱充电设备 + */ + @JSONField(name = "EquipmentClassification") + private Integer equipmentClassification; + + /** + * 统计时间 + * 格式:‘yyyy-MM-dd HH:mm:ss’ + */ + @JSONField(name = "DataTime") + private String dataTime; + + /** + * 充电设备实时功率 + * 保留一位小数 + */ + @JSONField(name = "EquipRealTimePower") + private BigDecimal equipRealTimePower; + + /** + * 充电设备接口实时功率列表 + */ + @JSONField(name = "ConnectorPowerInfos") + private List connectorPowerInfos; + + + @Data + private static class SupConnectorPowerInfo{ + /** + * 充电设备接口编码 + */ + @JsonProperty(value = "ConnectorID") + private String connectorID; + + /** + * 设备分类 + * 1:车辆充电设备 + * 2:换电站内的电池箱充电设备 + */ + @JSONField(name = "EquipmentClassification") + private Integer equipmentClassification; + + /** + * 统计时间 + * 格式:‘yyyy-MM-dd HH:mm:ss’ + */ + @JSONField(name = "DataTime") + private String dataTime; + + /** + * 充电设备接口实时功率 + * 保留一位小数 + */ + @JSONField(name = "ConnectorRealTimePower") + private BigDecimal connectorRealTimePower; + } + + } } diff --git a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupChargeOrderInfo.java b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupChargeOrderInfo.java index d272a0211..14876967d 100644 --- a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupChargeOrderInfo.java +++ b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupChargeOrderInfo.java @@ -81,6 +81,47 @@ public class SupChargeOrderInfo { @JSONField(name = "OrderNo") private String orderNo; + /** + * 设备接口分类 + * 1:车辆充电设备接 口 + * 2:换电站内的电池 箱充电设备接口 + */ + @JSONField(name = "EquipmentClassification") + private Integer equipmentClassification; + + /** + * 换电订单编 号 + * 换电订单唯一标识 注:设备接口分类为 2 的,该字段为必填 + */ + @JSONField(name = "SwapOrderID") + private Integer swapOrderID; + + /** + * 充电开始 SOC + */ + @JSONField(name = "StartSOC") + private String startSOC; + + /** + * 充电结束 SOC + */ + @JSONField(name = "EndSOC") + private String endSOC; + + /** + * 电池箱编码 + */ + @JSONField(name = "BatteryPackID") + private String batteryPackID; + + /** + * 是否有调仓 + * 0:否 1:是 + * 注:设备接口分类为 2 时,该字段为必填 项;设备接口分类为 1 时,该字段为非必 填项 + */ + @JSONField(name = "BatteryCabinChange") + private String batteryCabinChange; + /** * 车牌号 * LicensePlate diff --git a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupEquipChargeStatusInfo.java b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupEquipChargeStatusInfo.java index 52b7f05e0..3e454c554 100644 --- a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupEquipChargeStatusInfo.java +++ b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupEquipChargeStatusInfo.java @@ -52,6 +52,18 @@ public class SupEquipChargeStatusInfo { @JSONField(name = "OrderNo") private String orderNo; + /** + * 车牌号 + */ + @JSONField(name = "LicensePlate") + private String licensePlate; + + /** + * 车牌号 + */ + @JSONField(name = "VIN") + private String vin; + /** * 充电订单状态 * 1、启动中 @@ -110,6 +122,32 @@ public class SupEquipChargeStatusInfo { @JSONField(name = "VoltageA") private BigDecimal voltageA; + /** + * B相电流 + * 小数点后1位 + */ + @JSONField(name = "CurrentB") + private BigDecimal currentB; + + /** + * B相电压 + */ + @JSONField(name = "VoltageB") + private BigDecimal voltageB; + + /** + * C相电流 + * 小数点后1位 + */ + @JSONField(name = "CurrentC") + private BigDecimal currentC; + + /** + * C相电压 + */ + @JSONField(name = "VoltageC") + private BigDecimal voltageC; + /** * 电池剩余电量 * 小数点后1位 @@ -131,11 +169,38 @@ public class SupEquipChargeStatusInfo { /** * 累计充电量 - * 小数点后4位 */ @JSONField(name = "TotalPower") private BigDecimal totalPower; + /** + * 累计电费 + * 小数点后2位 + */ + @JSONField(name = "ElecMoney") + private String elecMoney; + + /** + * 累计服务费 + * 小数点后2位 + */ + @JSONField(name = "ServiceMoney") + private String serviceMoney; + + /** + * 时段数 + * 参数范围:0~ 32 + */ + @JSONField(name = "SumPeriod") + public Integer sumPeriod; + + /** + * 充电明细信息 + * 单时段充电明细信 息,参照公共对象: 充电明细信息 + */ + @JSONField(name = "ChargeDetails") + private List chargeDetails; + /** * 上报时间 */ @@ -162,6 +227,6 @@ public class SupEquipChargeStatusInfo { @JSONField(name = "StartChargeSeqStat") private Integer startChargeSeqStat; - @JSONField(name = "ChargeDetails") - private List chargeDetails; + //@JSONField(name = "ChargeDetails") + //private List chargeDetails; } diff --git a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupStationInfo.java b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupStationInfo.java index 0246ddf00..daf9141d0 100644 --- a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupStationInfo.java +++ b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/domain/SupStationInfo.java @@ -49,6 +49,16 @@ public class SupStationInfo extends StationInfo { @JSONField(name = "StationClassification") private int stationClassification; + /** + * 通用类型 + * 1:通用(可为 3 种或 3 种以上的车型进行换电) + * 2:非通用 + * 注:站点分类为 2 或 3 时,此字段必填,为 1 时非必填。 + */ + @JSONField(name = "GeneralApplicationType") + private Integer generalApplicationType; + + /** * 7*24小时营业 * 0:否 @@ -99,5 +109,81 @@ public class SupStationInfo extends StationInfo { @JSONField(name = "BuildTime") private String BuildTime; + /** + * 充换电站方位 + * 1:地面-停车场 + * 2:地面-路侧 + * 3:地下停车场 + * 4:立体式停车楼 + */ + @JSONField(name = "StationOrientation") + private String stationOrientation; + + /** + * 充换电站建筑面积 + * 该充电场站建设用 地面积 + */ + @JSONField(name = "StationArea") + private String stationArea; + + /** + * 充换电站人工值守 + * 0:无 + * 1:有 + */ + @JSONField(name = "HavePerson") + private String havePerson; + + /** + * 周边配套设施 + * 1:卫生间 + * 2:便利店 + * 3:餐厅 + * 4:休息室 + * 5:雨棚 + */ + @JSONField(name = "SupportingFacilities") + private String supportingFacilities; + + /** + * 换电设备信息 + * 换电设备信息对象 数组,参照公共对 象:换电设备信息 + */ + @JSONField(name = "SwapEquipmentInfos") + private List swapEquipmentInfos; + private List PolicyInfos; + + @Data + public class SupSwapEquipmentInfo { + /** + * 换电设备编码 + * 换电设备唯一编码,对同一运营商保证唯一 + */ + @JSONField(name = "SwapMechanicalEquipmentID") + private String SwapMechanicalEquipmentID; + + + /** + * 换电设备生 产商组织机 构代码 + * 换电设备生产商组织 机构代码 + */ + @JSONField(name = "SwapManufacturerID") + private String swapManufacturerID; + + /** + * 换电设备生 产商名称 + * 设备生产商名称 + */ + @JSONField(name = "SwapManufacturerName") + private String swapManufacturerName; + + /** + * 换电机械设 备额定功率 + * 换电机械设备额定功 率,单位:kW + */ + @JSONField(name = "MechanicalEquipmentPower") + private String mechanicalEquipmentPower; + + } } diff --git a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/GuiZhouPlatformServiceImpl.java b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/GuiZhouPlatformServiceImpl.java index 1f901e328..78df7426a 100644 --- a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/GuiZhouPlatformServiceImpl.java +++ b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/GuiZhouPlatformServiceImpl.java @@ -25,7 +25,6 @@ import com.jsowell.pile.dto.QueryOperatorInfoDTO; import com.jsowell.pile.dto.QueryStationInfoDTO; import com.jsowell.pile.service.*; import com.jsowell.pile.thirdparty.CommonParamsDTO; -import com.jsowell.pile.thirdparty.ConnectorInfo; import com.jsowell.pile.thirdparty.EquipmentInfo; import com.jsowell.pile.util.MerchantUtils; import com.jsowell.pile.vo.SupStationStatsVO; @@ -36,7 +35,6 @@ import com.jsowell.pile.vo.base.ThirdPartyStationInfoVO; import com.jsowell.pile.vo.uniapp.customer.BillingPriceVO; import com.jsowell.pile.vo.web.PileConnectorInfoVO; import com.jsowell.pile.vo.web.PileMerchantInfoVO; -import com.jsowell.pile.vo.web.PileModelInfoVO; import com.jsowell.pile.vo.web.PileStationVO; import com.jsowell.thirdparty.lianlian.domain.ConnectorChargeStatusInfo; import com.jsowell.thirdparty.lianlian.domain.ConnectorStatusInfo; @@ -249,6 +247,7 @@ public class GuiZhouPlatformServiceImpl implements ThirdPartyPlatformService { stationInfo.setParkFree(Integer.valueOf(pileStationInfo.getParkFree())); stationInfo.setPayment(pileStationInfo.getPayment()); stationInfo.setSupportOrder(Integer.valueOf(pileStationInfo.getSupportOrder())); + // stationInfo.setParkFeeType(pileStationInfo); // 停车收费类型 stationInfo.setBusinessExpandType(Integer.parseInt(pileStationInfo.getAloneApply())); stationInfo.setToiletFlag(Integer.valueOf(pileStationInfo.getToiletFlag())); @@ -303,6 +302,8 @@ public class GuiZhouPlatformServiceImpl implements ThirdPartyPlatformService { .countryCode(pileStationInfo.getCountryCode()) .address(pileStationInfo.getAddress()) .serviceTel(pileStationInfo.getStationTel()) + .swapMatchCars(pileStationInfo.getSwapMatchCars()) + .generalApplicationType(pileStationInfo.getGeneralApplicationType()) .stationType(Integer.valueOf(pileStationInfo.getStationType())) .stationStatus(Integer.valueOf(pileStationInfo.getStationStatus())) .parkNums(Integer.valueOf(pileStationInfo.getParkNums())) @@ -318,6 +319,7 @@ public class GuiZhouPlatformServiceImpl implements ThirdPartyPlatformService { .parkFeeType(0) .periodFee(1) // 峰谷分时 0-否;1-是 .equipmentClassification(1) + .businessExpandType(0) .toiletFlag(Integer.valueOf(pileStationInfo.getToiletFlag())) .storeFlag(Integer.valueOf(pileStationInfo.getStoreFlag())) .restaurantFlag(Integer.valueOf(pileStationInfo.getRestaurantFlag())) @@ -365,6 +367,7 @@ public class GuiZhouPlatformServiceImpl implements ThirdPartyPlatformService { List pileList = pileBasicInfoService.getPileListForLianLian(stationId); if (CollectionUtils.isNotEmpty(pileList)) { info.setEquipmentInfos(pileList); // 充电设备信息列表 + info.setEquipmentClassification(0); } // areaCodeCountryside