无关风月
2025-02-13 8236caa8042288fcb9b584c21d6157f713183626
ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/TCECClient.java
New file
@@ -0,0 +1,82 @@
package com.ruoyi.integration.api.feignClient;
import com.ruoyi.common.core.constant.ServiceNameConstants;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.integration.api.factory.TCECClientFallbackFactory;
import com.ruoyi.integration.api.vo.StartChargeResult;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
/**
 * @author zhibing.pu
 * @Date 2025/1/24 10:32
 */
@FeignClient(contextId = "TCECClient", value = ServiceNameConstants.INTEGRATION_SERVICE, fallbackFactory = TCECClientFallbackFactory.class)
public interface TCECClient {
   /**
    * 接口状态变化后推送给第三方
    * @return
    */
   @PostMapping("/evcs/v1.0/pushChargingGunStatus")
   R pushChargingGunStatus(@RequestParam("id") Integer id, @RequestParam("status") Integer status);
   /**
    * 启动充电结果推送
    * @param result
    * @return
    */
   @PostMapping("/evcs/v1.0/notificationStartChargeResult")
   R notificationStartChargeResult(@RequestBody StartChargeResult result);
   /**
    * 推送充电状态
    * @param startChargeSeq
    * @return
    */
   @PostMapping("/evcs/v1.0/notificationEquipChargeStatus")
   R notificationEquipChargeStatus(@RequestParam("startChargeSeq") String startChargeSeq, @RequestParam("operatorId") Integer operatorId);
   /**
    * 推送停止充电结果
    * @param startChargeSeq    充电订单号
    * @param connectorID       充电设备接口编码
    * @return
    */
   @PostMapping("/evcs/v1.0/notificationStopChargeResult")
   R notificationStopChargeResult(@RequestParam("startChargeSeq") String startChargeSeq, @RequestParam("connectorID") String connectorID,
                                         @RequestParam("operatorId") Integer operatorId);
   /**
    * 推送订单信息
    * @param startChargeSeq
    * @return
    */
   @PostMapping("/evcs/v1.0/notificationChargeOrderInfo")
   R notificationChargeOrderInfo(@RequestParam("startChargeSeq") String startChargeSeq, @RequestParam("operatorId") Integer operatorId);
   /**
    * 站点变更推送通知
    * @param siteIds
    * @return
    */
   @PostMapping("/evcs/v1.0/notificationStationChange")
   R notificationStationChange(@RequestParam("siteIds") List<Integer> siteIds);
}