package com.xiaopeng.api.factory.pushMessage;
|
|
import com.xiaopeng.api.dto.pushMessage.SendMessageDTO;
|
import com.xiaopeng.api.dto.statistics.OrderStatisticsDTO;
|
import com.xiaopeng.api.dto.statistics.StatisticsQueryDTO;
|
import com.xiaopeng.api.feignClient.order.XpOrderClient;
|
import com.xiaopeng.api.feignClient.pushMessage.XpPushMessageClient;
|
import com.xiaopeng.api.model.order.XpOrder;
|
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.math.BigDecimal;
|
import java.util.ArrayList;
|
|
/**
|
* 订单Feign客户端降级工厂
|
*
|
* @author mitao
|
*/
|
@Slf4j
|
@Component
|
public class XpPushMessageClientFallbackFactory implements FallbackFactory<XpPushMessageClient> {
|
|
@Override
|
public XpPushMessageClient create(Throwable cause) {
|
log.error("消息服务调用失败: {}", cause.getMessage());
|
return new XpPushMessageClient() {
|
@Override
|
public R<String> sendStatus(SendMessageDTO dto) {
|
return R.fail("推送订单状态服务失败,"+cause.getMessage());
|
}
|
|
@Override
|
public R<String> sendRoute(SendMessageDTO dto) {
|
return R.fail("推送订单路径规划服务失败,"+cause.getMessage());
|
}
|
|
@Override
|
public R<String> sendVehicleLocation(SendMessageDTO dto) {
|
return R.fail("推送车辆实时定位失败,"+cause.getMessage());
|
}
|
};
|
}
|
}
|