package com.xiaopeng.api.factory.vehicleConvoy; import com.xiaopeng.api.feignClient.vehicleConvoy.XpFleetOperationsClient; import com.xiaopeng.common.core.domain.R; import lombok.extern.slf4j.Slf4j; import org.springframework.cloud.openfeign.FallbackFactory; import org.springframework.stereotype.Component; import java.util.ArrayList; import java.util.List; /** * 车队车辆Feign客户端降级工厂 * * @author mitao */ @Slf4j @Component public class XpFleetOperationsClientFallbackFactory implements FallbackFactory { @Override public XpFleetOperationsClient create(Throwable cause) { log.error("车队人员服务调用失败: {}", cause.getMessage()); return new XpFleetOperationsClient() { @Override public R> getVehicleByUserId(Long vehicleId) { log.error("根据人员id 获取所属车队下关联的车辆ids,人员ID: {},原因: {}", vehicleId, cause.getMessage()); return R.ok(new ArrayList<>()); } @Override public R> getFleetIdsByUserId(Long userId) { log.error("根据人员ID获取车队信息失败 {}", cause.getMessage()); return R.fail("根据人员ID获取车队信息失败"); } }; } }