Pu Zhibing
2025-01-26 6958d89bfec79450782f8352d5716d6603549b98
新增加互联互通扩展接口
5个文件已添加
11个文件已修改
437 ■■■■■ 已修改文件
ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ParkingRecordClient.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/ChargingOrderFallbackFactory.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/AddTripartitePlatformOrder.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TParkingRecordController.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/TCECController.java 169 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/NotificationChargeCarnum.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/NotificationChargeCarnumResult.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/OrderInfo.java 86 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/QueryChargeOrderInfo.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/QueryChargeOrderInfoResult.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/model/NotificationChargeOrderInfo.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/model/QueryEquipChargeStatus.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/model/QueryEquipChargeStatusResult.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/model/QueryStartCharge.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ParkingRecordClient.java
@@ -44,6 +44,15 @@
    R<TParkingRecord> getParkingRecordById(@RequestParam("id") Long id);
    
    
    /**
     * 根据充电订单id获取数据
     * @return
     */
    @PostMapping("/t-parking-record/getParkingRecordByChargingOrderId")
    R<TParkingRecord> getParkingRecordByChargingOrderId(@RequestParam("chargingOrderId") Long chargingOrderId);
    /**
     * 添加数据
     * @param parkingRecord
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/ChargingOrderFallbackFactory.java
@@ -191,6 +191,10 @@
                return R.fail("根据三方平台订单id获取充电数据失败:" + throwable.getMessage());
            }
    
            @Override
            public R<List<TChargingOrder>> getChargingOrderByStartChargeSeqs(List<String> startChargeSeqs) {
                return R.fail("根据三方平台订单ids获取充电数据失败" + throwable.getMessage());
            }
    
            @Override
            public R tripartitePlatformStopCharge(String startChargeSeq) {
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java
@@ -267,6 +267,18 @@
    R<TChargingOrder> getChargingOrderByStartChargeSeq(@RequestParam("startChargeSeq") String startChargeSeq);
    
    
    /**
     * 根据三方平台订单ids获取充电数据
     * @param startChargeSeqs
     * @return
     */
    @PostMapping("/t-charging-order/getChargingOrderByStartChargeSeqs")
    R<List<TChargingOrder>> getChargingOrderByStartChargeSeqs(@RequestParam("startChargeSeqs") List<String> startChargeSeqs);
    /**
     * 三方平台请求停止充电
     * @param startChargeSeq
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/AddTripartitePlatformOrder.java
@@ -24,7 +24,7 @@
     */
    private String operatorId;
    /**
     * 支付方式(1=微信,2=支付宝)
     * 支付方式(0=未知,1=微信,2=支付宝)
     */
    private Integer rechargePaymentType;
    /**
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TParkingRecordController.java
@@ -264,6 +264,20 @@
    }
    
    
    /**
     * 根据充电订单id获取数据
     * @return
     */
    @PostMapping("/getParkingRecordByChargingOrderId")
    public R<TParkingRecord> getParkingRecordByChargingOrderId(@RequestParam("chargingOrderId") Long chargingOrderId){
        TParkingRecord parkingRecord = parkingRecordService.getOne(new LambdaQueryWrapper<TParkingRecord>()
                .eq(TParkingRecord::getChargingOrderId, chargingOrderId));
        return R.ok(parkingRecord);
    }
    /**
     * 添加数据
     * @param parkingRecord
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/TCECController.java
@@ -3,14 +3,13 @@
import com.alibaba.fastjson.JSON;
import com.ruoyi.chargingPile.api.feignClient.*;
import com.ruoyi.chargingPile.api.model.*;
import com.ruoyi.chargingPile.api.vo.GetParkingRecord;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.dto.ChargingPercentProvinceDto;
import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.integration.drainage.kuaidian.TCECKDUtil;
import com.ruoyi.integration.drainage.kuaidian.model.NotificationStationChangeResult;
import com.ruoyi.integration.drainage.kuaidian.model.QueryTerminalCode;
import com.ruoyi.integration.drainage.kuaidian.model.QueryTerminalCodeResult;
import com.ruoyi.integration.drainage.kuaidian.model.*;
import com.ruoyi.integration.drainage.model.*;
import com.ruoyi.integration.drainage.model.enu.*;
import com.ruoyi.order.api.feignClient.ChargingOrderAccountingStrategyClient;
@@ -74,6 +73,9 @@
    
    @Resource
    private ParkingLotClient parkingLotClient;
    @Resource
    private ParkingRecordClient parkingRecordClient;
    
    
    
@@ -809,7 +811,7 @@
    
    
    /**
     * 请求定充电
     * 请求开始充电
     * @return
     */
    @PostMapping("/query_start_charge")
@@ -863,8 +865,8 @@
        addTripartitePlatformOrder.setStartChargeSeq(queryStartCharge.getStartChargeSeq());
        addTripartitePlatformOrder.setChargingGunId(tChargingGun.getId());
        addTripartitePlatformOrder.setOperatorId(operator.getOperatorId());
        addTripartitePlatformOrder.setPaymentAmount(queryStartCharge.getPaymentAmount());
        addTripartitePlatformOrder.setRechargePaymentType(queryStartCharge.getPaymentType());
        addTripartitePlatformOrder.setPaymentAmount(queryStartCharge.getChargingAmt());
        addTripartitePlatformOrder.setRechargePaymentType(0);
        addTripartitePlatformOrder.setPlateNum(queryStartCharge.getPlateNum());
        R order = chargingOrderClient.addTripartitePlatformOrder(addTripartitePlatformOrder);
        //启动失败
@@ -1267,6 +1269,12 @@
        notificationChargeOrderInfo.setTotalElecMoney(chargingOrder.getTotalElectricity());
        notificationChargeOrderInfo.setTotalSeviceMoney(chargingOrder.getServiceCharge());
        notificationChargeOrderInfo.setTotalMoney(chargingOrder.getTotalElectricity().add(chargingOrder.getServiceCharge()));
        notificationChargeOrderInfo.setTotalDelayMoney(BigDecimal.ZERO);
        TParkingRecord parkingRecord = parkingRecordClient.getParkingRecordByChargingOrderId(chargingOrder.getId()).getData();
        if(null != parkingRecord && parkingRecord.getStatus() == 3){
            notificationChargeOrderInfo.setTotalDelayMoney(parkingRecord.getPayment());
        }
        //结束方式(0=异常终止,1=主动终止,2=满电终止,3=费用不足终止)
        switch (chargingOrder.getEndMode()){
            case 0:
@@ -1349,4 +1357,153 @@
        baseResult.setSig(TCECUtil.buildSign(baseResult));
        return baseResult;
    }
    /**
     * 推送充电车牌号
     * 客户归属运营商向设备运营商推送充电用户车牌号减免停车费,多次推送以最后一次车牌号为准
     * @param baseRequest
     * @param request
     * @return
     */
    @PostMapping("/notification_charge_carnum")
    public BaseResult notificationChargeCarnum(@RequestBody BaseRequest baseRequest, HttpServletRequest request){
        //校验token和签名
        BaseResult baseResult = requestCheck(true, baseRequest, request);
        if(0 != baseResult.getRet()){
            baseResult.setData("");
            baseResult.setSig(TCECUtil.buildSign(baseResult));
            return baseResult;
        }
        Operator operator = baseResult.getOperator();
        //解密参数
        String decrypt = AESUtil.decrypt(baseRequest.getData(), operator.getDataSecret(), operator.getDataSecretIv());
        NotificationChargeCarnum notificationChargeCarnum = JSON.parseObject(decrypt, NotificationChargeCarnum.class);
        NotificationChargeCarnumResult notificationChargeCarnumResult = new NotificationChargeCarnumResult();
        notificationChargeCarnumResult.setStartChargeSeqs(notificationChargeCarnum.getStartChargeSeqs());
        notificationChargeCarnumResult.setSuccStat(0);
        notificationChargeCarnumResult.setFailReason(0);
        TChargingOrder chargingOrder = chargingOrderClient.getChargingOrderByStartChargeSeq(notificationChargeCarnum.getStartChargeSeqs()).getData();
        if(null == chargingOrder){
            notificationChargeCarnumResult.setSuccStat(1);
            notificationChargeCarnumResult.setFailReason(1);
        }else{
            //待处理相关业务逻辑
        }
        //参数加密
        String jsonString = JSON.toJSONString(notificationChargeCarnumResult);
        String encrypt = AESUtil.encrypt(jsonString, operator.getDataSecret(), operator.getDataSecretIv());
        baseResult.setData(encrypt);
        baseResult.setSig(TCECUtil.buildSign(baseResult));
        return baseResult;
    }
    /**
     * 账单拉取(快电)
     * @param baseRequest
     * @param request
     * @return
     */
    @PostMapping("/query_charge_order_info")
    public BaseResult queryChargeOrderInfo(@RequestBody BaseRequest baseRequest, HttpServletRequest request){
        //校验token和签名
        BaseResult baseResult = requestCheck(true, baseRequest, request);
        if(0 != baseResult.getRet()){
            baseResult.setData("");
            baseResult.setSig(TCECUtil.buildSign(baseResult));
            return baseResult;
        }
        Operator operator = baseResult.getOperator();
        //解密参数
        String decrypt = AESUtil.decrypt(baseRequest.getData(), operator.getDataSecret(), operator.getDataSecretIv());
        QueryChargeOrderInfo queryChargeOrderInfo = JSON.parseObject(decrypt, QueryChargeOrderInfo.class);
        //构建返回结果
        QueryChargeOrderInfoResult result = buildQueryChargeOrderInfoResult(queryChargeOrderInfo);
        //参数加密
        String jsonString = JSON.toJSONString(result);
        String encrypt = AESUtil.encrypt(jsonString, operator.getDataSecret(), operator.getDataSecretIv());
        baseResult.setData(encrypt);
        baseResult.setSig(TCECUtil.buildSign(baseResult));
        return baseResult;
    }
    /**
     * 构建充电账单拉取实体
     * @param queryChargeOrderInfo
     * @return
     */
    public QueryChargeOrderInfoResult buildQueryChargeOrderInfoResult(QueryChargeOrderInfo queryChargeOrderInfo){
        //构建返回结果
        QueryChargeOrderInfoResult queryChargeOrderInfoResult = new QueryChargeOrderInfoResult();
        List<OrderInfo> orderInfos = new ArrayList<>();
        List<String> startChargeSeqs = queryChargeOrderInfo.getStartChargeSeqs();
        List<TChargingOrder> chargingOrders = chargingOrderClient.getChargingOrderByStartChargeSeqs(startChargeSeqs).getData();
        for (TChargingOrder chargingOrder : chargingOrders) {
            if(null == chargingOrder){
                return null;
            }
            OrderInfo orderInfo = new OrderInfo();
            orderInfo.setStartChargeSeq(chargingOrder.getStartChargeSeq());
            orderInfo.setConnectorID(chargingOrder.getChargingGunId().toString());
            orderInfo.setStartTime((null == chargingOrder.getStartTime() ? chargingOrder.getCreateTime() : chargingOrder.getStartTime()).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
            orderInfo.setEndTime((null == chargingOrder.getStartTime() ? LocalDateTime.now() : chargingOrder.getEndTime()).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
            orderInfo.setTotalPower(chargingOrder.getTotalElectricity());
            orderInfo.setTotalElecMoney(chargingOrder.getElectrovalence());
            orderInfo.setTotalSeviceMoney(chargingOrder.getServiceCharge());
            orderInfo.setTotalMoney(chargingOrder.getTotalElectricity().add(chargingOrder.getServiceCharge()));
            //结束方式(0=异常终止,1=主动终止,2=满电终止,3=费用不足终止)
            switch (chargingOrder.getEndMode()){
                case 0:
                    orderInfo.setStopReason(3);
                    break;
                case 1:
                    orderInfo.setStopReason(0);
                    break;
                case 2:
                    orderInfo.setStopReason(2);
                    break;
                case 3:
                    orderInfo.setStopReason(4);
                    break;
            }
            //构建充电明细
            List<ChargeDetail> chargeDetails = new ArrayList<>();
            List<TChargingOrderAccountingStrategy> data = chargingOrderAccountingStrategyClient.getChargingOrderAccountingStrategyByOrderId(chargingOrder.getId()).getData();
            LocalDateTime startTime = chargingOrder.getStartTime();
            LocalDateTime endTime = chargingOrder.getEndTime();
            String s_format = startTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
            String e_format = endTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
            for (TChargingOrderAccountingStrategy datum : data) {
                ChargeDetail chargeDetail = new ChargeDetail();
                if(s_format.equals(e_format)){
                    chargeDetail.setDetailStartTime(s_format + " " + datum.getStartTime() + ":00");
                    chargeDetail.setDetailEndTime(s_format + " " + datum.getEndTime() + ":59");
                }else{
                    String substring = datum.getEndTime().substring(0, datum.getEndTime().indexOf(":"));
                    if(Integer.valueOf(substring) > 12){
                        chargeDetail.setDetailStartTime(s_format + " " + datum.getStartTime() + ":00");
                        chargeDetail.setDetailEndTime(s_format + " " + datum.getEndTime() + ":59");
                    }else{
                        chargeDetail.setDetailStartTime(e_format + " " + datum.getStartTime() + ":00");
                        chargeDetail.setDetailEndTime(e_format + " " + datum.getEndTime() + ":59");
                    }
                }
                chargeDetail.setElecPrice(datum.getElectrovalence());
                chargeDetail.setSevicePrice(datum.getServiceCharge());
                chargeDetail.setDetailPower(datum.getChargingCapacity());
                chargeDetail.setDetailElecMoney(datum.getPeriodElectricPrice());
                chargeDetail.setDetailSeviceMoney(datum.getPeriodServicePrice());
                chargeDetails.add(chargeDetail);
            }
            orderInfo.setChargeDetails(chargeDetails);
            orderInfos.add(orderInfo);
        }
        queryChargeOrderInfoResult.setOrderInfos(orderInfos);
        return queryChargeOrderInfoResult;
    }
}
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/NotificationChargeCarnum.java
New file
@@ -0,0 +1,24 @@
package com.ruoyi.integration.drainage.kuaidian.model;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
 * 推送充电车牌号
 * @author zhibing.pu
 * @Date 2025/1/26 14:38
 */
@Data
public class NotificationChargeCarnum {
    /**
     * 充电订单号
     */
    @NotNull
    private String StartChargeSeqs;
    /**
     * 充电车牌号
     */
    @NotNull
    private String Carnum;
}
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/NotificationChargeCarnumResult.java
New file
@@ -0,0 +1,34 @@
package com.ruoyi.integration.drainage.kuaidian.model;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
 * 推送充电车牌号返回结果
 * @author zhibing.pu
 * @Date 2025/1/26 14:43
 */
@Data
public class NotificationChargeCarnumResult {
    /**
     * 充电订单号
     */
    @NotNull
    private String StartChargeSeqs;
    /**
     * 成功状态
     * 0:成功
     * 1:失败
     */
    @NotNull
    private Integer SuccStat;
    /**
     * 失败原因
     * 0:无
     * 1:无此订单
     * 2`9自定义
     */
    @NotNull
    private Integer FailReason;
}
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/OrderInfo.java
New file
@@ -0,0 +1,86 @@
package com.ruoyi.integration.drainage.kuaidian.model;
import com.ruoyi.integration.drainage.model.ChargeDetail;
import lombok.Data;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Null;
import java.math.BigDecimal;
import java.util.List;
/**
 * 账单实体
 * @author zhibing.pu
 * @Date 2025/1/26 15:29
 */
@Data
public class OrderInfo {
    /**
     * 充电订单号
     */
    @NotNull
    private String StartChargeSeq;
    /**
     * 充电设备接口编码
     */
    @NotNull
    private String ConnectorID;
    /**
     * 开始充电时间
     * yyyy-MM-dd HH:mm:ss
     */
    @NotNull
    private String StartTime;
    /**
     * 结束充电时间
     * yyyy-MM-dd HH:mm:ss
     */
    @NotNull
    private String EndTime;
    /**
     * 累计充电电量
     */
    @NotNull
    private BigDecimal TotalPower;
    /**
     * 总电费
     */
    @NotNull
    private BigDecimal TotalElecMoney;
    /**
     * 总服务费
     */
    @NotNull
    private BigDecimal TotalSeviceMoney;
    /**
     * 累计总金额
     */
    @NotNull
    private BigDecimal TotalMoney;
    /**
     * 车辆识别码
     */
    @Null
    private String VIN;
    /**
     * 充电结束原因
     * 0:用户手动停止充电
     * 1:客户归属地运营商平台停止充电
     * 2:BMS停止充电
     * 3:充电机设备故障
     * 4:连接器断开
     * 5`99:自定义
     */
    @NotNull
    private Integer StopReason;
    /**
     * 时段数N
     * 范围0`23
     */
    @Null
    private Integer SumPeriod;
    /**
     * 充电明细信息
     */
    private List<ChargeDetail> ChargeDetails;
}
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/QueryChargeOrderInfo.java
New file
@@ -0,0 +1,18 @@
package com.ruoyi.integration.drainage.kuaidian.model;
import lombok.Data;
import java.util.List;
/**
 * 账单拉取
 * @author zhibing.pu
 * @Date 2025/1/26 15:26
 */
@Data
public class QueryChargeOrderInfo {
    /**
     * 充电订单号集合
     */
    private List<String> StartChargeSeqs;
}
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/kuaidian/model/QueryChargeOrderInfoResult.java
New file
@@ -0,0 +1,18 @@
package com.ruoyi.integration.drainage.kuaidian.model;
import lombok.Data;
import java.util.List;
/**
 * 账单拉取
 * @author zhibing.pu
 * @Date 2025/1/26 15:28
 */
@Data
public class QueryChargeOrderInfoResult {
    /**
     * 充电订单账单集合
     */
    private List<OrderInfo> OrderInfos;
}
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/model/NotificationChargeOrderInfo.java
@@ -78,5 +78,15 @@
     */
    @Null
    private List<ChargeDetail> ChargeDetails;
    /**
     * 占位费
     */
    @Null
    private BigDecimal TotalDelayMoney;
    /**
     * 车辆识别码
     */
    @Null
    private String VIN;
    
}
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/model/QueryEquipChargeStatus.java
@@ -3,6 +3,7 @@
import lombok.Data;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Null;
/**
 * 查询充电状态
@@ -16,4 +17,14 @@
     */
    @NotNull
    private String StartChargeSeq;
    /**
     * 抢号
     */
    @NotNull
    private String ConnectorID;
    /**
     * 车辆识别码
     */
    @Null
    private String VIN;
}
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/model/QueryEquipChargeStatusResult.java
@@ -120,5 +120,10 @@
     */
    @Null
    private List<ChargeDetail> ChargeDetails;
    /**
     * 车辆识别码
     */
    @Null
    private String VIN;
    
}
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/model/QueryStartCharge.java
@@ -29,15 +29,10 @@
    @NotNull
    private String QRCode;
    /**
     * 支付方式(1=微信,2=支付宝)
     */
    @NotNull
    private Integer paymentType;
    /**
     * 充电余额
     */
    @NotNull
    private BigDecimal paymentAmount;
    private BigDecimal chargingAmt;
    /**
     * 充电车牌号
     */
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
@@ -2120,6 +2120,20 @@
    }
    
    
    /**
     * 根据三方平台订单ids获取充电数据
     * @param startChargeSeqs
     * @return
     */
    @PostMapping("/getChargingOrderByStartChargeSeqs")
    public R<List<TChargingOrder>> getChargingOrderByStartChargeSeqs(@RequestParam("startChargeSeqs") List<String> startChargeSeqs){
        List<TChargingOrder> list = chargingOrderService.list(new LambdaQueryWrapper<TChargingOrder>().in(TChargingOrder::getStartChargeSeq, startChargeSeqs));
        return R.ok(list);
    }
    /**
     * 三方平台请求停止充电
     * @param startChargeSeq