puzhibing
2024-12-04 0e192c3c48b374bcc0986942f857a77de58ec043
修改启动异常
6个文件已修改
123 ■■■■ 已修改文件
ruoyi-api/ruoyi-api-order/src/main/java/factory/RemoteOrderFallbackFactory.java 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-order/src/main/java/factory/RemoteOrderGoodsFallbackFactory.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-order/src/main/java/feignClient/RemoteOrderClient.java 52 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-order/src/main/java/feignClient/RemoteOrderGoodsClient.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/RemoteVipSettingClient.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WalletController.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-order/src/main/java/factory/RemoteOrderFallbackFactory.java
@@ -1,28 +1,19 @@
package factory;
import com.ruoyi.common.core.domain.R;
import feignClient.RemoteOrderClient;
import model.Order;
import model.OrderGood;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
import java.util.List;
/**
 * 订单服务降级处理
 * @author luofl
 */
@Component
public class RemoteOrderFallbackFactory implements FallbackFactory<RemoteOrderClient> {
    @Override
    public RemoteOrderClient create(Throwable cause) {
        return new RemoteOrderClient() {
            @Override
            public R<List<Order>> goodsOrder(List<Long> goodsIds) {
                return R.fail("获取订单失败");
            }
        };
    }
}
//package factory;
//
//import feignClient.RemoteOrderClient;
//import org.springframework.cloud.openfeign.FallbackFactory;
//import org.springframework.stereotype.Component;
//
///**
// * 订单服务降级处理
// * @author luofl
// */
//@Component
//public class RemoteOrderFallbackFactory implements FallbackFactory<RemoteOrderClient> {
//
//    @Override
//    public RemoteOrderClient create(Throwable cause) {
//        return new RemoteOrderClient() {
//        };
//    }
//}
ruoyi-api/ruoyi-api-order/src/main/java/factory/RemoteOrderGoodsFallbackFactory.java
@@ -15,9 +15,16 @@
        return new RemoteOrderGoodsClient(){
            @Override
            public R<List<Order>> goodsOrder(List<Long> goodsIds) {
                log.error("编辑用户信息失败:{}", cause.getMessage());
                throw new RuntimeException("编辑用户信息失败");
                log.error("获取订单商品失败:{}", cause.getMessage());
                throw new RuntimeException("获取订单商品失败");
            }
            @Override
            public R<List<Order>> getOrderListByIds(List<Long> orderIds) {
                log.error("获取订单列表失败:{}", cause.getMessage());
                throw new RuntimeException("获取订单列表失败");
            }
        };
    }
}
ruoyi-api/ruoyi-api-order/src/main/java/feignClient/RemoteOrderClient.java
@@ -1,28 +1,24 @@
package feignClient;
import com.ruoyi.common.core.constant.ServiceNameConstants;
import com.ruoyi.common.core.domain.R;
import factory.RemoteOrderFallbackFactory;
import model.Order;
import model.OrderGood;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
/**
 * 订单远程调用接口
 * @author luofl
 */
@FeignClient(contextId = "RemoteOrderClient", value = ServiceNameConstants.ORDER_SERVICE, fallbackFactory = RemoteOrderFallbackFactory.class)
public interface RemoteOrderClient {
    /**
     * 查询指定商品订单
     */
    @PostMapping("/order/getOrderListByIds")
    public R<List<Order>> goodsOrder(@RequestBody List<Long> orderIds);
}
//package feignClient;
//
//import com.ruoyi.common.core.constant.ServiceNameConstants;
//import com.ruoyi.common.core.domain.R;
//import factory.RemoteOrderFallbackFactory;
//import model.Order;
//import model.OrderGood;
//import org.springframework.cloud.openfeign.FeignClient;
//import org.springframework.web.bind.annotation.GetMapping;
//import org.springframework.web.bind.annotation.PostMapping;
//import org.springframework.web.bind.annotation.RequestBody;
//import org.springframework.web.bind.annotation.RequestParam;
//
//import java.util.List;
//
///**
// * 订单远程调用接口
// * @author luofl
// */
//@FeignClient(contextId = "RemoteOrderClient", value = ServiceNameConstants.ORDER_SERVICE, fallbackFactory = RemoteOrderFallbackFactory.class)
//public interface RemoteOrderClient {
//
//
//}
ruoyi-api/ruoyi-api-order/src/main/java/feignClient/RemoteOrderGoodsClient.java
@@ -20,4 +20,10 @@
     */
    @PostMapping("/order-good/selectGoodsOrder")
    public R<List<Order>> goodsOrder(@RequestBody List<Long> goodsIds);
    /**
     * 根据ids查找订单列表
     */
    @PostMapping("/order/getOrderListByIds")
    public R<List<Order>> getOrderListByIds(@RequestBody List<Long> orderIds);
}
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/RemoteVipSettingClient.java
@@ -8,7 +8,7 @@
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
@FeignClient(contextId = "RemoteOrderGoodsClient", value = ServiceNameConstants.OTHER_SERVICE, fallbackFactory = RemoteVipSettingFallbackFactory.class)
@FeignClient(contextId = "RemoteVipSettingClient", value = ServiceNameConstants.OTHER_SERVICE, fallbackFactory = RemoteVipSettingFallbackFactory.class)
public interface RemoteVipSettingClient {
    @GetMapping("/vip-setting/getVipSettingById")
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WalletController.java
@@ -15,6 +15,7 @@
import com.ruoyi.other.api.feignClient.OrderClient;
import com.ruoyi.system.api.model.LoginUser;
import feignClient.RemoteOrderClient;
import feignClient.RemoteOrderGoodsClient;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
@@ -45,7 +46,7 @@
    @Resource
    private WalletService walletService;
    @Resource
    private RemoteOrderClient remoteOrderClient;
    private RemoteOrderGoodsClient remoteOrderGoodsClient;
    @Resource
    private AppUserService appUserService;
@@ -85,7 +86,7 @@
                .eq(BalanceChangeRecord::getAppUserId, userId));
        List<Long> orderIds = list.stream().map(BalanceChangeRecord::getOrderId).collect(Collectors.toList());
        R<List<Order>> r = remoteOrderClient.goodsOrder(orderIds);
        R<List<Order>> r = remoteOrderGoodsClient.getOrderListByIds(orderIds);
        if (!R.isSuccess(r)){
            return R.fail(r.getMsg());
        }