licailing пре 5 година
родитељ
комит
5568a165ee

+ 1 - 1
src/main/java/com/izouma/dingdong/repo/MoneyRecordRepo.java

@@ -13,5 +13,5 @@ import java.util.List;
 public interface MoneyRecordRepo extends JpaRepository<MoneyRecord, Long>, JpaSpecificationExecutor<MoneyRecord> {
 public interface MoneyRecordRepo extends JpaRepository<MoneyRecord, Long>, JpaSpecificationExecutor<MoneyRecord> {
     List<MoneyRecord> findAllByUserId(Long userId);
     List<MoneyRecord> findAllByUserId(Long userId);
 
 
-    Page<MoneyRecord> findAllByUserId(Long userId, @Nullable Specification<MoneyRecord> spec, Pageable pageable);
+    Page<MoneyRecord> findAllByUserId(Long userId, Pageable pageable);
 }
 }

+ 21 - 2
src/main/java/com/izouma/dingdong/service/UserService.java

@@ -64,7 +64,7 @@ public class UserService {
         return userRepo.save(user);
         return userRepo.save(user);
     }
     }
 
 
-    public User merUser(MerchantDTO merchantDTO){
+    public User merUser(MerchantDTO merchantDTO) {
         User user = userRepo.findByPhone(merchantDTO.getPhone());
         User user = userRepo.findByPhone(merchantDTO.getPhone());
         if (ObjectUtil.isNull(user)) {
         if (ObjectUtil.isNull(user)) {
             user = User.builder()
             user = User.builder()
@@ -84,7 +84,26 @@ public class UserService {
     }
     }
 
 
     public User loginByPhone(String phone) {
     public User loginByPhone(String phone) {
-        return userRepo.findByPhone(phone);
+        User user = userRepo.findByPhone(phone);
+        if (user == null) {
+            user = User.builder()
+                    .username(UUID.randomUUID().toString())
+                    .nickname(phone)
+                    .phone(phone)
+                    .identity(Identity.USER)
+                    .enabled(true)
+                    .avatar(Constants.DEFAULT_AVATAR)
+                    .build();
+
+        } else {
+            if (Identity.MERCHANT.equals(user.getIdentity())){
+                throw new BusinessException("请使用商户端登陆");
+            }else if (Identity.RIDER.equals(user.getIdentity())){
+                throw new BusinessException("请使用骑手端登陆");
+            }
+        }
+        
+        return user;
     }
     }
 
 
     public User loginMp(String code) throws WxErrorException {
     public User loginMp(String code) throws WxErrorException {

+ 24 - 2
src/main/java/com/izouma/dingdong/web/OrderInfoController.java

@@ -1,14 +1,17 @@
 package com.izouma.dingdong.web;
 package com.izouma.dingdong.web;
 
 
 import com.izouma.dingdong.domain.OrderInfo;
 import com.izouma.dingdong.domain.OrderInfo;
+import com.izouma.dingdong.domain.User;
 import com.izouma.dingdong.dto.OrderDTO;
 import com.izouma.dingdong.dto.OrderDTO;
 import com.izouma.dingdong.dto.UserOrderDTO;
 import com.izouma.dingdong.dto.UserOrderDTO;
 
 
 import com.izouma.dingdong.enums.MerchantStatus;
 import com.izouma.dingdong.enums.MerchantStatus;
+import com.izouma.dingdong.repo.UserRepo;
 import com.izouma.dingdong.service.OrderInfoService;
 import com.izouma.dingdong.service.OrderInfoService;
 import com.izouma.dingdong.dto.PageQuery;
 import com.izouma.dingdong.dto.PageQuery;
 import com.izouma.dingdong.exception.BusinessException;
 import com.izouma.dingdong.exception.BusinessException;
 import com.izouma.dingdong.repo.OrderInfoRepo;
 import com.izouma.dingdong.repo.OrderInfoRepo;
+import com.izouma.dingdong.service.merchant.MerchantService;
 import com.izouma.dingdong.utils.ObjUtils;
 import com.izouma.dingdong.utils.ObjUtils;
 import com.izouma.dingdong.utils.SecurityUtils;
 import com.izouma.dingdong.utils.SecurityUtils;
 import com.izouma.dingdong.utils.excel.ExcelUtils;
 import com.izouma.dingdong.utils.excel.ExcelUtils;
@@ -22,6 +25,7 @@ import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.IOException;
 import java.math.BigDecimal;
 import java.math.BigDecimal;
 import java.util.List;
 import java.util.List;
+import java.util.Map;
 import java.util.stream.Collectors;
 import java.util.stream.Collectors;
 
 
 @RestController
 @RestController
@@ -30,6 +34,8 @@ import java.util.stream.Collectors;
 public class OrderInfoController extends BaseController {
 public class OrderInfoController extends BaseController {
     private OrderInfoService orderInfoService;
     private OrderInfoService orderInfoService;
     private OrderInfoRepo orderInfoRepo;
     private OrderInfoRepo orderInfoRepo;
+    private UserRepo userRepo;
+    private MerchantService merchantService;
 
 
 
 
     //@PreAuthorize("hasRole('ADMIN')")
     //@PreAuthorize("hasRole('ADMIN')")
@@ -77,8 +83,24 @@ public class OrderInfoController extends BaseController {
     @GetMapping("/my")
     @GetMapping("/my")
     @ApiOperation("个人订单")
     @ApiOperation("个人订单")
     public Page<OrderInfo> my(PageQuery pageQuery) {
     public Page<OrderInfo> my(PageQuery pageQuery) {
-        List<OrderInfo> collect = orderInfoService.my(SecurityUtils.getAuthenticatedUser().getId());
-        return new PageImpl<>(collect, toPageRequest(pageQuery), pageQuery.getSize());
+
+        Map<String, Object> query = pageQuery.getQuery();
+        Long id = SecurityUtils.getAuthenticatedUser().getId();
+        User user = userRepo.findById(id).orElseThrow(new BusinessException("无用户"));
+        if (user.getIdentity()==null){
+            throw new BusinessException("身份错误");
+        }
+        switch (user.getIdentity()) {
+            case USER:
+                query.put("userId",id);break;
+            case MERCHANT:
+                Long merchantId = merchantService.findMerchantId(id);
+                query.put("merchantId",merchantId);break;
+        }
+        return orderInfoRepo.findAll(toSpecification(pageQuery,OrderInfo.class),toPageRequest(pageQuery));
+
+/*        List<OrderInfo> collect = orderInfoService.my(SecurityUtils.getAuthenticatedUser().getId());
+        return new PageImpl<>(collect, toPageRequest(pageQuery), pageQuery.getSize());*/
     }
     }