Bladeren bron

fix: 修改了获取所有order的接口

DingXiaoYu 2 jaren geleden
bovenliggende
commit
9b3ad8debe

+ 0 - 5
src/main/java/com/seecoder/BlueWhale/controller/OrderController.java

@@ -55,9 +55,4 @@ public class OrderController {
     public ResultVO<Double> calculate(@RequestParam("orderId") Integer orderId,@RequestParam("couponId")Integer couponId){
         return ResultVO.buildSuccess(orderService.calculate(orderId,couponId));
     }
-
-    @GetMapping("/store")
-    public ResultVO<List<OrderVO>> getStoreOrders(@RequestParam("storeId") Integer storeId){
-        return ResultVO.buildSuccess(orderService.getStoreOrders(storeId));
-    }
 }

+ 0 - 1
src/main/java/com/seecoder/BlueWhale/service/OrderService.java

@@ -13,5 +13,4 @@ public interface OrderService {
     Boolean get(Integer orderId);
     Boolean comment(Integer orderId, String comment, Integer rating);
     Double calculate(Integer orderId, Integer couponId);
-    List<OrderVO> getStoreOrders(Integer storeId);
 }

+ 12 - 10
src/main/java/com/seecoder/BlueWhale/serviceImpl/OrderServiceImpl.java

@@ -1,6 +1,7 @@
 package com.seecoder.BlueWhale.serviceImpl;
 
 import com.seecoder.BlueWhale.enums.OrderStatusEnum;
+import com.seecoder.BlueWhale.enums.RoleEnum;
 import com.seecoder.BlueWhale.exception.BlueWhaleException;
 import com.seecoder.BlueWhale.po.*;
 import com.seecoder.BlueWhale.repository.*;
@@ -11,6 +12,7 @@ import com.seecoder.BlueWhale.vo.OrderVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 import java.util.stream.Collectors;
@@ -48,8 +50,16 @@ public class OrderServiceImpl implements OrderService {
 
     @Override
     public List<OrderVO> getAllOrders() {
-        int userId=securityUtil.getCurrentUser().getId();
-        List<Order> orders = orderRepository.findByUserId(userId);
+        User user=securityUtil.getCurrentUser();
+        List<Order> orders;
+        if (user.getRole()== RoleEnum.CUSTOMER){
+            orders = orderRepository.findByUserId(user.getId());
+        }else {
+            Integer storeId=user.getStoreId();
+            orders = orderRepository.findAll().stream()
+                    .filter(x-> storeId.equals(productRepository.findById(x.getProductId()).get().getStoreId()))
+                    .collect(Collectors.toList());
+        }
         return orders.stream().map(x->wrapWithProductId(x.toVO())).collect(Collectors.toList());
     }
 
@@ -166,14 +176,6 @@ public class OrderServiceImpl implements OrderService {
         return context.calculate();
     }
 
-    @Override
-    public List<OrderVO> getStoreOrders(Integer storeId) {
-        return orderRepository.findAll().stream()
-                .filter(x-> storeId.equals(productRepository.findById(x.getProductId()).get().getStoreId()))
-                .map(x->wrapWithProductId(x.toVO()))
-                .collect(Collectors.toList());
-    }
-
     private OrderVO wrapWithProductId(OrderVO orderVO){
         Integer productId=orderVO.getProductId();
         Product product=productRepository.findById(productId).get();