package com.xiaopeng.api.factory.operation; import com.xiaopeng.api.dto.operation.LonLatDto; import com.xiaopeng.api.dto.order.HistoryStartPointsDto; import com.xiaopeng.api.feignClient.operation.XpPointClient; import com.xiaopeng.api.feignClient.operation.XpPricingClient; import com.xiaopeng.api.model.operation.XpGeoQueryEntity; import com.xiaopeng.api.model.operation.XpPricing; import com.xiaopeng.api.vo.order.XpHistoryStartPointsVo; 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.Collections; import java.util.List; @Slf4j @Component public class XpPricingClientFallbackFactory implements FallbackFactory { @Override public XpPricingClient create(Throwable cause) { return new XpPricingClient() { @Override public R getWaitTime(LonLatDto dto) { log.error("XpPricingClient.getWaitTime fallback", cause); return R. fail("当前区域正在等待中,请耐心等待"); } @Override public R getPricingByCid(Long cityId) { log.error("根据开通城市获取定价失败", cause); return R.ok(null); } @Override public R updateXpGeoQueryEntity(String orderId) { log.error("更新XpGeoQueryEntity失败", cause); return R.fail(); } }; } }