|
@@ -1,6 +1,7 @@
|
|
|
package com.seecoder.BlueWhale.serviceImpl;
|
|
package com.seecoder.BlueWhale.serviceImpl;
|
|
|
|
|
|
|
|
import com.seecoder.BlueWhale.enums.OrderStatusEnum;
|
|
import com.seecoder.BlueWhale.enums.OrderStatusEnum;
|
|
|
|
|
+import com.seecoder.BlueWhale.enums.RoleEnum;
|
|
|
import com.seecoder.BlueWhale.exception.BlueWhaleException;
|
|
import com.seecoder.BlueWhale.exception.BlueWhaleException;
|
|
|
import com.seecoder.BlueWhale.po.*;
|
|
import com.seecoder.BlueWhale.po.*;
|
|
|
import com.seecoder.BlueWhale.repository.*;
|
|
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.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.Date;
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
@@ -48,8 +50,16 @@ public class OrderServiceImpl implements OrderService {
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
public List<OrderVO> getAllOrders() {
|
|
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());
|
|
return orders.stream().map(x->wrapWithProductId(x.toVO())).collect(Collectors.toList());
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -166,14 +176,6 @@ public class OrderServiceImpl implements OrderService {
|
|
|
return context.calculate();
|
|
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){
|
|
private OrderVO wrapWithProductId(OrderVO orderVO){
|
|
|
Integer productId=orderVO.getProductId();
|
|
Integer productId=orderVO.getProductId();
|
|
|
Product product=productRepository.findById(productId).get();
|
|
Product product=productRepository.findById(productId).get();
|