package com.ruoyi.account.api.factory; import com.ruoyi.account.api.dto.GiveVipDto; import com.ruoyi.account.api.feignClient.AppUserClient; import com.ruoyi.account.api.model.TAppCoupon; import com.ruoyi.account.api.model.TAppUser; import com.ruoyi.account.api.model.TAppUserAddress; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.dto.PointChangeDto; 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 AppUserFallbackFactory implements FallbackFactory { private static final Logger log = LoggerFactory.getLogger(AppUserFallbackFactory.class); @Override public AppUserClient create(Throwable throwable) { log.error("账户服务调用失败:{}", throwable.getMessage()); return new AppUserClient() { @Override public R> getUserIdsByPhone(String phone) { return R.fail("根据手机号查询用户ids失败:"+throwable.getMessage()); } @Override public R getUserById(Long id) { return R.fail("根据id查询用户失败:"+throwable.getMessage()); } @Override public R couponGetById(Long id) { return R.fail("查询优惠券失败:"+throwable.getMessage()); } @Override public R updateAppUser(TAppUser appUser) { return R.fail("修改用户失败:"+throwable.getMessage()); } @Override public R changeDown(PointChangeDto points) { return null; } @Override public R selectByPhone(String phone) { return R.fail("积分变化失败:"+throwable.getMessage()); } @Override public R> selectByPhoneLike(String phone) { return R.fail("通过手机号模糊查询用户失败:"+throwable.getMessage()); } @Override public R refundPoints(String param) { return R.fail("后台兑换订单退款回退用户积分失败:"+throwable.getMessage()); } @Override public R giveVip(GiveVipDto giveVipDto) { return null; } @Override public R> getUserByIds(List appUserIds) { return R.fail("根据用户id查询用户信息失败:"+throwable.getMessage()); } @Override public R getAddressById(Long id) { return R.fail("通过地址id `查询用户地址失败:"+throwable.getMessage()); } @Override public R getWXToken() { return R.fail("获取微信token失败:" + throwable.getMessage()); } }; } }