package com.ruoyi.chargingPile.api.factory; import com.ruoyi.chargingPile.api.feignClient.ChargingGunClient; import com.ruoyi.chargingPile.api.model.TChargingGun; import com.ruoyi.chargingPile.api.model.TChargingPile; import com.ruoyi.chargingPile.api.vo.GetChargingGunByCode; import com.ruoyi.chargingPile.api.vo.SiteNameVO; import com.ruoyi.common.core.domain.R; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.cloud.openfeign.FallbackFactory; import org.springframework.stereotype.Component; import java.util.List; /** * 充电桩服务降级处理 * * @author ruoyi */ @Component public class ChargingGunFallbackFactory implements FallbackFactory { private static final Logger log = LoggerFactory.getLogger(ChargingGunFallbackFactory.class); @Override public ChargingGunClient create(Throwable throwable) { log.error("充电枪调用失败:{}", throwable.getMessage()); return new ChargingGunClient() { @Override public R> getAllGun() { return R.fail("获取数据失败:" + throwable.getMessage()); } @Override public R> getAllPile() { return R.fail("获取所有桩失败:" + throwable.getMessage()); } @Override public R getAllName(Integer id) { return R.fail("根据id获取充电枪完整名称失败:" + throwable.getMessage()); } @Override public R getChargingGunById(Integer id) { return R.fail("根据id获取充电枪失败:" + throwable.getMessage()); } @Override public R getAllInfoById(Integer id) { return R.fail("通过枪id获取站点、桩、枪的名称失败:" + throwable.getMessage()); } @Override public R getChargingGunByCode(GetChargingGunByCode code) { return R.fail("根据枪编号获取充电枪失败:" + throwable.getMessage()); } @Override public R updateChargingGunById(TChargingGun chargingGun) { return R.fail("编辑充电枪失败:" + throwable.getMessage()); } @Override public R> getChargingGunByChargingPileId(Integer chargingPileId) { return R.fail("根据充电桩id获取枪失败:" + throwable.getMessage()); } @Override public R> getChargingGunByChargingPileIds(List chargingPileIds) { return R.fail("根据充电桩ids获取枪失败:" + throwable.getMessage()); } @Override public R pushChargingGunStatus(Integer id, Integer status) { return R.fail("接口状态变化后推送给第三方失败:" + throwable.getMessage()); } @Override public R getChargingGunByFullNumber(String fullNumber) { return R.fail("根据枪唯一码查询信息失败:" + throwable.getMessage()); } @Override public R> getGunIdsBySiteIdsAndChargeModels(List siteIds, List chargeModels){ return R.fail("根据站点ids和充电模式集合查询充电枪集合失败:" + throwable.getMessage()); } }; } }