diff --git a/jsowell-admin/src/main/java/com/jsowell/api/thirdparty/GuiZhouPlatformController.java b/jsowell-admin/src/main/java/com/jsowell/api/thirdparty/GuiZhouPlatformController.java index 649f3805d..b3afda6ec 100644 --- a/jsowell-admin/src/main/java/com/jsowell/api/thirdparty/GuiZhouPlatformController.java +++ b/jsowell-admin/src/main/java/com/jsowell/api/thirdparty/GuiZhouPlatformController.java @@ -1,10 +1,11 @@ package com.jsowell.api.thirdparty; - import com.alibaba.fastjson2.JSON; import com.jsowell.common.annotation.Anonymous; +import com.jsowell.common.core.domain.AjaxResult; import com.jsowell.common.enums.thirdparty.ThirdPartyReturnCodeEnum; import com.jsowell.common.exception.BusinessException; +import com.jsowell.common.response.RestApiResponse; import com.jsowell.pile.dto.QueryOperatorInfoDTO; import com.jsowell.pile.dto.QueryStationInfoDTO; import com.jsowell.pile.thirdparty.CommonParamsDTO; @@ -12,12 +13,10 @@ import com.jsowell.thirdparty.lianlian.common.CommonResult; import com.jsowell.thirdparty.platform.service.ThirdPartyPlatformService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; +import java.util.List; import java.util.Map; /** @@ -33,6 +32,7 @@ public class GuiZhouPlatformController extends ThirdPartyBaseController { @Qualifier("guiZhouPlatformServiceImpl") private ThirdPartyPlatformService platformLogic; + /** * getToken */ @@ -150,4 +150,63 @@ public class GuiZhouPlatformController extends ThirdPartyBaseController { } return CommonResult.failed("查询充电站状态信息发生异常"); } -} + + /** + * 历史充电订单信息推送 + */ + @GetMapping("/v1/supervise_notification_charge_order_info_history/{orderCode}") + public RestApiResponse notificationChargeOrderInfoHistory(@PathVariable("orderCode") String orderCode) { + RestApiResponse response = null; + String result = null; + try { + result = platformLogic.notificationChargeOrderInfoHistory(orderCode); + response = new RestApiResponse<>(result); + } catch (Exception e) { + logger.error("贵州平台推送充电站历史充电订单信息 error", e); + return new RestApiResponse<>(e); + } + logger.info("贵州平台推送充电站历史充电订单信息 result:{}", result); + return response; + } + + /** + * 推送充换电站用能统计信息 + * @param stationId + * @return + */ + @GetMapping("/v1/supervise_notification_operation_stats_info/{stationId}") + public RestApiResponse notificationOperationStatsInfo(@PathVariable("stationId") String stationId) { + RestApiResponse response = null; + String result = null; + try { + result = platformLogic.notificationOperationStatsInfo(stationId); + response = new RestApiResponse<>(result); + } catch (Exception e) { + logger.error("贵州平台推送充换电站用能统计信息 error", e); + return new RestApiResponse<>(e); + } + logger.info("贵州平台推送充换电站用能统计信息 result:{}", result); + return response; + } + + /** + * 推送充换电站实时功率 + * @param stationIds + * @return + */ + @GetMapping("/v1/supervise_notification_realtime_power_info/{stationIds}") + public RestApiResponse notificationPowerInfo(@PathVariable("stationIds") List stationIds) { + RestApiResponse response = null; + String result = null; + try { + result = platformLogic.notificationPowerInfo(stationIds); + response = new RestApiResponse<>(result); + } catch (Exception e) { + logger.error("贵州平台推送充换电站用能统计信息 error", e); + return new RestApiResponse<>(e); + } + logger.info("贵州平台推送充换电站用能统计信息 result:{}", result); + return response; + } + +} \ No newline at end of file diff --git a/jsowell-common/src/main/java/com/jsowell/common/constant/Constants.java b/jsowell-common/src/main/java/com/jsowell/common/constant/Constants.java index 60936558a..3981a9934 100644 --- a/jsowell-common/src/main/java/com/jsowell/common/constant/Constants.java +++ b/jsowell-common/src/main/java/com/jsowell/common/constant/Constants.java @@ -95,6 +95,7 @@ public class Constants { public static final String OPERATORID_LIANLIAN = "MA1JLFUU8"; public static final String OPERATORID_JIANG_SU = "MA1X78KH5"; + public static final String OPERATORID_GUI_ZHOU = "MAC9K4RRX"; public static final String MANUFACTURER_NAME = "举视(江苏)新能源设备制造有限公司"; 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..d1b877c88 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,57 @@ 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; + + /** + * 站点额定总功率 + */ + @Excel(name = "站点额定总功率") + private BigDecimal ratedPower; + /** * 删除标识(0-正常;1-删除) */ @@ -386,6 +439,9 @@ public class PileStationInfo extends BaseEntity { .append("barrierFlag", barrierFlag) .append("parkingLockFlag", parkingLockFlag) .append("delFlag", delFlag) + .append("swapMatchCars", swapMatchCars) + .append("generalApplicationType",generalApplicationType) + .append("ratedPower",ratedPower) .toString(); } } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/PileBasicInfoService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/PileBasicInfoService.java index b1e2bf8f1..c88eaf772 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/PileBasicInfoService.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/PileBasicInfoService.java @@ -112,7 +112,6 @@ public interface PileBasicInfoService { /** * 通过桩sn查询basic信息 * - * @param id 桩id * @return 结果集合 */ PileDetailVO selectPileDetailByPileSn(String pileSn); @@ -233,7 +232,6 @@ public interface PileBasicInfoService { /** * 获取充电桩列表 * 提供给联联平台 - * @param pileStationInfo * @return */ // List getPileList(PileStationInfo pileStationInfo); diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileBasicInfoServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileBasicInfoServiceImpl.java index 5cd11cbe7..36069e6a2 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileBasicInfoServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileBasicInfoServiceImpl.java @@ -1225,6 +1225,7 @@ public class PileBasicInfoServiceImpl implements PileBasicInfoService { String pileSn = pileBasicInfo.getSn(); equipmentInfo.setEquipmentID(pileSn); + equipmentInfo.setEquipmentClassification(1); equipmentInfo.setManufacturerID(Constants.OPERATORID_LIANLIAN); equipmentInfo.setManufacturerName(Constants.MANUFACTURER_NAME); equipmentInfo.setConstructionTime(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, pileBasicInfo.getCreateTime())); @@ -1322,6 +1323,7 @@ public class PileBasicInfoServiceImpl implements PileBasicInfoService { connectorInfo.setParkNo(pileConnectorInfo.getParkNo()); } connectorInfo.setVoltageUpperLimits(Integer.valueOf(modelInfo.getRatedVoltage())); + connectorInfo.setEquipmentClassification(1); connectorInfo.setVoltageLowerLimits(Integer.valueOf(modelInfo.getRatedVoltage())); connectorInfo.setCurrent(Integer.valueOf(modelInfo.getRatedCurrent())); connectorInfo.setConnectorName(pileConnectorInfo.getPileConnectorCode()); diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/thirdparty/ConnectorInfo.java b/jsowell-pile/src/main/java/com/jsowell/pile/thirdparty/ConnectorInfo.java index 1b021e141..ffef9cd28 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/thirdparty/ConnectorInfo.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/thirdparty/ConnectorInfo.java @@ -23,6 +23,14 @@ public class ConnectorInfo { @JSONField(name = "ConnectorID") private String connectorID; + /** + * 设备接口分类 + * 1:车辆充电设备接口 + * 2:换电站内的电池箱 充电设备接口 + */ + @JSONField(name = "EquipmentClassification") + private Integer equipmentClassification; + /** * 充电设备接口名称 N */ @@ -51,12 +59,36 @@ public class ConnectorInfo { @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 */ @@ -105,4 +137,10 @@ public class ConnectorInfo { @JSONField(name = "AuxPower") private Integer auxPower; + /** + * 运营时间 + */ + @JSONField(name = "OpreateHours") + private String opreateHours; + } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/thirdparty/EquipmentInfo.java b/jsowell-pile/src/main/java/com/jsowell/pile/thirdparty/EquipmentInfo.java index 35ae8fffa..644e8199e 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/thirdparty/EquipmentInfo.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/thirdparty/EquipmentInfo.java @@ -24,6 +24,13 @@ public class EquipmentInfo { @JSONField(name = "EquipmentID") private String equipmentID; + /** + * 设备唯一编码 + *设备生产商组织机构代 码 9 位+设备出厂唯一 编码 + */ + @JSONField(name = "EquipmentUniqueNumber") + private String equipmentUniqueNumber; + /** * 设备生产商组织机构代码 Y */ @@ -54,7 +61,7 @@ public class EquipmentInfo { * YYYY-MM-DD */ @JSONField(name = "ProductionDate") - private String productionDate; + private String productionDate; /** * 建设时间 Y @@ -69,6 +76,13 @@ public class EquipmentInfo { @JSONField(name = "EquipmentType") private Integer equipmentType; + /** + * 设备分类 + * 1:车辆充电设备 2:换电站内的电池箱 充电设备 + */ + @JSONField(name = "EquipmentClassification") + private Integer equipmentClassification; + /** * 设备状态 Y * 0:未知 @@ -93,6 +107,13 @@ public class EquipmentInfo { @JSONField(name = "NewNationalStandard") private Integer newNationalStandard; + /** + * 充电设备接口列表 Y + * 该充电设备所有的充电设备接口的信息对象集合 + */ + @JSONField(name = "SupConnectorInfos") + private List supconnectorInfos; + /** * 充电设备接口列表 Y * 该充电设备所有的充电设备接口的信息对象集合 @@ -104,13 +125,15 @@ public class EquipmentInfo { * 充电设备经度 N * GCJ-02坐标系 */ - // private BigDecimal EquipmentLng; + @JSONField(name = "EquipmentLng") + private BigDecimal equipmentLng; /** * 充电设备纬度 N * GCJ-02坐标系 */ - // private BigDecimal EquipmentLat; + @JSONField(name = "EquipmentLat") + private BigDecimal equipmentLat; /** * 是否支持VIN码识别(0-否;1-是) Y 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..6fb6ca9cc 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 * 车位楼层以及数量信息 @@ -256,4 +264,11 @@ public class BaseStationInfo { @JSONField(name = "EquipmentInfos") private List equipmentInfos; + /** + * 充电设备信息列表 Y + * 该充电站所有充电设备信息对象集合 + */ + @JSONField(name = "SupEquipmentInfos") + private List supequipmentInfos; + } diff --git a/jsowell-pile/src/main/resources/mapper/pile/OrderBasicInfoMapper.xml b/jsowell-pile/src/main/resources/mapper/pile/OrderBasicInfoMapper.xml index 2ee887b49..d362a48ed 100644 --- a/jsowell-pile/src/main/resources/mapper/pile/OrderBasicInfoMapper.xml +++ b/jsowell-pile/src/main/resources/mapper/pile/OrderBasicInfoMapper.xml @@ -2968,8 +2968,10 @@ JOIN pile_merchant_info t3 on t1.merchant_id = t3.id WHERE t1.station_id = #{stationId,jdbcType=VARCHAR} - AND t1.charge_start_time = ]]> DATE_SUB( CURDATE(), INTERVAL 1 DAY ) - AND t1.charge_start_time CURDATE() +-- AND t1.charge_start_time = ]]> DATE_SUB( CURDATE(), INTERVAL 1 DAY ) +-- AND t1.charge_start_time CURDATE() + AND t1.charge_start_time = ]]> '2024-07-08' + AND t1.charge_start_time '2024-8-19'