woody 1 anno fa
parent
commit
2d19768a6f
48 ha cambiato i file con 693 aggiunte e 653 eliminazioni
  1. 2 2
      vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/Adpage.java
  2. 2 2
      vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/Adsource.java
  3. 2 2
      vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/ArticleStatus.java
  4. 2 2
      vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/CategoryType.java
  5. 2 2
      vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/CouponClaimType.java
  6. 2 2
      vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/CouponStatus.java
  7. 2 2
      vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/CouponType.java
  8. 2 2
      vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/FavoriteType.java
  9. 2 2
      vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/GoodsStatus.java
  10. 2 2
      vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/MerchantStatus.java
  11. 2 2
      vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/OrderStatus.java
  12. 2 2
      vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/PromotionStatus.java
  13. 2 2
      vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/ReserveStatus.java
  14. 2 2
      vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/Sort.java
  15. 2 2
      vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/UserCouponStatus.java
  16. 2 2
      vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/service/AttentionService.java
  17. 2 2
      vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/service/ProfitRatioConfigService.java
  18. 1 1
      vehicle-server/pom.xml
  19. 4 7
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/AssessServiceImpl.java
  20. 7 12
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/AttentionServiceImpl.java
  21. 8 8
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/CarouselImagesServiceImpl.java
  22. 8 10
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/CategoryServiceImpl.java
  23. 6 6
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/CommentServiceImpl.java
  24. 6 6
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/CommissionConfigServiceImpl.java
  25. 9 13
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/CouponServiceImpl.java
  26. 208 204
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/DynamicCommentServiceImpl.java
  27. 3 3
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/DynamicContentServiceImpl.java
  28. 8 8
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/DynamicEvaluateRecordServiceImpl.java
  29. 3 3
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/DynamicResourceServiceImpl.java
  30. 19 22
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/FavoriteServiceImpl.java
  31. 2 2
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/FeedbackServiceImpl.java
  32. 8 8
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/GoodsServiceImpl.java
  33. 13 12
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/MerchantAuthServiceImpl.java
  34. 70 82
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/MerchantServiceImpl.java
  35. 6 6
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/NoticeServiceImpl.java
  36. 5 5
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/OmsOrderOperateHistoryServiceImpl.java
  37. 0 9
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/OmsOrderPayHistoryServiceImpl.java
  38. 6 6
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/OmsOrderReturnApplyServiceImpl.java
  39. 145 109
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/OmsOrderServiceImpl.java
  40. 16 15
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/PlatformProfitRatioServiceImpl.java
  41. 5 4
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/ProfitRatioConfigServiceImpl.java
  42. 36 29
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/ReservationServiceImpl.java
  43. 25 22
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/UserCouponServiceImpl.java
  44. 3 2
      vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/UserInviteServiceImpl.java
  45. 5 2
      vehicle-server/src/main/resources/application-dev.yml
  46. 8 1
      vehicle-server/src/main/resources/application-pre.yml
  47. 8 1
      vehicle-server/src/main/resources/application-prod.yml
  48. 8 1
      vehicle-server/src/main/resources/application-test.yml

+ 2 - 2
vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/Adpage.java

@@ -1,6 +1,6 @@
 package com.chelvc.cloud.vehicle.api.constant;
 
-import com.chelvc.framework.common.model.Enumeration;
+import com.chelvc.framework.common.model.Enumerable;
 import lombok.Getter;
 
 /**
@@ -10,7 +10,7 @@ import lombok.Getter;
  * @date 2023/5/7
  */
 @Getter
-public enum Adpage implements Enumeration {
+public enum Adpage implements Enumerable {
     /**
      * 职位首页
      */

+ 2 - 2
vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/Adsource.java

@@ -1,6 +1,6 @@
 package com.chelvc.cloud.vehicle.api.constant;
 
-import com.chelvc.framework.common.model.Enumeration;
+import com.chelvc.framework.common.model.Enumerable;
 import lombok.Getter;
 
 /**
@@ -10,7 +10,7 @@ import lombok.Getter;
  * @date 2023/5/7
  */
 @Getter
-public enum Adsource implements Enumeration {
+public enum Adsource implements Enumerable {
     /**
      * 腾讯
      */

+ 2 - 2
vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/ArticleStatus.java

@@ -1,6 +1,6 @@
 package com.chelvc.cloud.vehicle.api.constant;
 
-import com.chelvc.framework.common.model.Enumeration;
+import com.chelvc.framework.common.model.Enumerable;
 import lombok.Getter;
 
 /**
@@ -10,7 +10,7 @@ import lombok.Getter;
  * @date 2023/7/17
  */
 @Getter
-public enum ArticleStatus implements Enumeration {
+public enum ArticleStatus implements Enumerable {
     /**
      * 审核中
      */

+ 2 - 2
vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/CategoryType.java

@@ -1,6 +1,6 @@
 package com.chelvc.cloud.vehicle.api.constant;
 
-import com.chelvc.framework.common.model.Enumeration;
+import com.chelvc.framework.common.model.Enumerable;
 import lombok.Getter;
 
 /**
@@ -10,7 +10,7 @@ import lombok.Getter;
  * @date 2023/7/17
  */
 @Getter
-public enum CategoryType implements Enumeration {
+public enum CategoryType implements Enumerable {
     /**
      * 汽车美容
      */

+ 2 - 2
vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/CouponClaimType.java

@@ -1,6 +1,6 @@
 package com.chelvc.cloud.vehicle.api.constant;
 
-import com.chelvc.framework.common.model.Enumeration;
+import com.chelvc.framework.common.model.Enumerable;
 import lombok.Getter;
 
 /**
@@ -10,7 +10,7 @@ import lombok.Getter;
  * @date 2023/9/10
  */
 @Getter
-public enum CouponClaimType implements Enumeration {
+public enum CouponClaimType implements Enumerable {
     /**
      * 免费领取
      */

+ 2 - 2
vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/CouponStatus.java

@@ -1,6 +1,6 @@
 package com.chelvc.cloud.vehicle.api.constant;
 
-import com.chelvc.framework.common.model.Enumeration;
+import com.chelvc.framework.common.model.Enumerable;
 import lombok.Getter;
 
 /**
@@ -10,7 +10,7 @@ import lombok.Getter;
  * @date 2023/7/17
  */
 @Getter
-public enum CouponStatus implements Enumeration {
+public enum CouponStatus implements Enumerable {
     /**
      * 已上线
      */

+ 2 - 2
vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/CouponType.java

@@ -1,6 +1,6 @@
 package com.chelvc.cloud.vehicle.api.constant;
 
-import com.chelvc.framework.common.model.Enumeration;
+import com.chelvc.framework.common.model.Enumerable;
 import lombok.Getter;
 
 /**
@@ -10,7 +10,7 @@ import lombok.Getter;
  * @date 2023/7/17
  */
 @Getter
-public enum CouponType implements Enumeration {
+public enum CouponType implements Enumerable {
     /**
      * 赠送
      */

+ 2 - 2
vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/FavoriteType.java

@@ -1,6 +1,6 @@
 package com.chelvc.cloud.vehicle.api.constant;
 
-import com.chelvc.framework.common.model.Enumeration;
+import com.chelvc.framework.common.model.Enumerable;
 import lombok.Getter;
 
 /**
@@ -10,7 +10,7 @@ import lombok.Getter;
  * @date 2023/7/17
  */
 @Getter
-public enum FavoriteType implements Enumeration {
+public enum FavoriteType implements Enumerable {
     /**
      * 商家
      */

+ 2 - 2
vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/GoodsStatus.java

@@ -1,6 +1,6 @@
 package com.chelvc.cloud.vehicle.api.constant;
 
-import com.chelvc.framework.common.model.Enumeration;
+import com.chelvc.framework.common.model.Enumerable;
 import lombok.Getter;
 
 /**
@@ -10,7 +10,7 @@ import lombok.Getter;
  * @date 2023/7/17
  */
 @Getter
-public enum GoodsStatus implements Enumeration {
+public enum GoodsStatus implements Enumerable {
     /**
      * 已上线
      */

+ 2 - 2
vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/MerchantStatus.java

@@ -1,6 +1,6 @@
 package com.chelvc.cloud.vehicle.api.constant;
 
-import com.chelvc.framework.common.model.Enumeration;
+import com.chelvc.framework.common.model.Enumerable;
 import lombok.Getter;
 
 /**
@@ -10,7 +10,7 @@ import lombok.Getter;
  * @date 2023/7/17
  */
 @Getter
-public enum MerchantStatus implements Enumeration {
+public enum MerchantStatus implements Enumerable {
     /**
      * 审核中
      */

+ 2 - 2
vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/OrderStatus.java

@@ -1,6 +1,6 @@
 package com.chelvc.cloud.vehicle.api.constant;
 
-import com.chelvc.framework.common.model.Enumeration;
+import com.chelvc.framework.common.model.Enumerable;
 
 /**
  * 订单状态枚举
@@ -8,7 +8,7 @@ import com.chelvc.framework.common.model.Enumeration;
  * @author qizai
  * @date 2023/10/19
  */
-public enum OrderStatus implements Enumeration {
+public enum OrderStatus implements Enumerable {
     /**
      * 所有订单
      */

+ 2 - 2
vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/PromotionStatus.java

@@ -1,6 +1,6 @@
 package com.chelvc.cloud.vehicle.api.constant;
 
-import com.chelvc.framework.common.model.Enumeration;
+import com.chelvc.framework.common.model.Enumerable;
 import lombok.Getter;
 
 /**
@@ -10,7 +10,7 @@ import lombok.Getter;
  * @date 2023/9/10
  */
 @Getter
-public enum PromotionStatus implements Enumeration {
+public enum PromotionStatus implements Enumerable {
     /**
      * 新建
      */

+ 2 - 2
vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/ReserveStatus.java

@@ -1,6 +1,6 @@
 package com.chelvc.cloud.vehicle.api.constant;
 
-import com.chelvc.framework.common.model.Enumeration;
+import com.chelvc.framework.common.model.Enumerable;
 import lombok.Getter;
 
 /**
@@ -10,7 +10,7 @@ import lombok.Getter;
  * @date 2023/7/17
  */
 @Getter
-public enum ReserveStatus implements Enumeration {
+public enum ReserveStatus implements Enumerable {
     /**
      * 待处理
      */

+ 2 - 2
vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/Sort.java

@@ -1,6 +1,6 @@
 package com.chelvc.cloud.vehicle.api.constant;
 
-import com.chelvc.framework.common.model.Enumeration;
+import com.chelvc.framework.common.model.Enumerable;
 import lombok.Getter;
 
 /**
@@ -10,7 +10,7 @@ import lombok.Getter;
  * @date 2023/7/20
  */
 @Getter
-public enum Sort implements Enumeration {
+public enum Sort implements Enumerable {
     /**
      * 综合排序
      */

+ 2 - 2
vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/constant/UserCouponStatus.java

@@ -1,6 +1,6 @@
 package com.chelvc.cloud.vehicle.api.constant;
 
-import com.chelvc.framework.common.model.Enumeration;
+import com.chelvc.framework.common.model.Enumerable;
 import lombok.Getter;
 
 /**
@@ -10,7 +10,7 @@ import lombok.Getter;
  * @date 2023/9/8
  */
 @Getter
-public enum UserCouponStatus implements Enumeration {
+public enum UserCouponStatus implements Enumerable {
     /**
      * 未使用
      */

+ 2 - 2
vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/service/AttentionService.java

@@ -3,8 +3,8 @@ package com.chelvc.cloud.vehicle.api.service;
 import com.chelvc.cloud.vehicle.api.dto.AttentionTotalDTO;
 import com.chelvc.cloud.vehicle.api.dto.AttentionUserDTO;
 import com.chelvc.cloud.vehicle.api.param.QueryAttentionParam;
-import com.chelvc.framework.common.model.PagedDTO;
 import com.chelvc.framework.common.model.Pagination;
+import com.chelvc.framework.common.model.Paging;
 
 import java.util.List;
 import java.util.Map;
@@ -30,7 +30,7 @@ public interface AttentionService {
    * @author igl
    * @date 2023/2/25 19:42
    */
-  Pagination<AttentionUserDTO> page(PagedDTO page, QueryAttentionParam param, Long userId);
+  Pagination<AttentionUserDTO> page(Paging page, QueryAttentionParam param, Long userId);
 
   /**
    * 查询用户是否关注

+ 2 - 2
vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/service/ProfitRatioConfigService.java

@@ -5,6 +5,7 @@ import com.chelvc.cloud.vehicle.api.param.AddProfitRatioConfigParams;
 import com.chelvc.cloud.vehicle.api.param.EditProfitRatioConfigParams;
 import com.chelvc.cloud.vehicle.api.param.QueryProfitRatioConfigParam;
 import com.chelvc.framework.common.model.Pagination;
+import com.chelvc.framework.common.model.Paging;
 
 public interface ProfitRatioConfigService {
 
@@ -14,7 +15,6 @@ public interface ProfitRatioConfigService {
 
     void delete(Long id, Long userId);
 
-    Pagination<ProfitRatioConfigDTO> queryPageList(QueryProfitRatioConfigParam param, Long pageNum,
-                                                   Long pageSize);
+    Pagination<ProfitRatioConfigDTO> queryPageList(QueryProfitRatioConfigParam param, Paging paging);
 
 }

+ 1 - 1
vehicle-server/pom.xml

@@ -19,8 +19,8 @@
         <uc-api.version>1.0.0-SNAPSHOT</uc-api.version>
         <vehicle-api.version>1.0.0-SNAPSHOT</vehicle-api.version>
         <framework-redis.version>1.0.0-RELEASE</framework-redis.version>
-        <framework-database.version>1.0.0-RELEASE</framework-database.version>
         <framework-location.version>1.0.0-RELEASE</framework-location.version>
+        <framework-database.version>1.0.0-RELEASE</framework-database.version>
     </properties>
 
     <dependencies>

+ 4 - 7
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/AssessServiceImpl.java

@@ -1,6 +1,5 @@
 package com.chelvc.cloud.vehicle.server.service.impl;
 
-import cn.hutool.json.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.chelvc.cloud.vehicle.api.dto.AssessRecoverDto;
@@ -20,13 +19,11 @@ import com.chelvc.cloud.vehicle.server.entity.AssessRecover;
 import com.chelvc.cloud.vehicle.server.entity.AssessScore;
 import com.chelvc.cloud.vehicle.server.entity.GoodsAssess;
 import com.chelvc.framework.base.context.SessionContextHolder;
-import com.chelvc.framework.base.model.Session;
-import com.chelvc.framework.base.util.ResourceUtils;
-import com.fasterxml.jackson.databind.util.JSONPObject;
+import com.chelvc.framework.common.model.Session;
+import com.chelvc.framework.common.util.AssertUtils;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.dubbo.config.annotation.DubboService;
-import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.transaction.annotation.Transactional;
@@ -56,7 +53,7 @@ public class AssessServiceImpl extends ServiceImpl<GoodsAssessMapper, GoodsAsses
     @Override
     public Long add(AssessModifyParam param) {
         Session user = SessionContextHolder.getSession();
-        ResourceUtils.required(this.getOne(new QueryWrapper<GoodsAssess>().eq("order_id", param.getOrderId()).eq("creator", user.getId())) == null, "该订单已评价");
+        AssertUtils.available(this.getOne(new QueryWrapper<GoodsAssess>().eq("order_id", param.getOrderId()).eq("creator", user.getId())) == null, "该订单已评价");
 
         GoodsAssess goodsAssess = GoodsAssessCopier.INSTANCE.copying(param);
         goodsAssess.setHits(0L);
@@ -149,7 +146,7 @@ public class AssessServiceImpl extends ServiceImpl<GoodsAssessMapper, GoodsAsses
     @Override
     public Long addAssessRecover(AssessRecoverModifyParam param) {
 
-        ResourceUtils.required(assessRecoverMapper.selectOne(new QueryWrapper<AssessRecover>().eq("assess_id", param.getAssessId())) == null, "该订单已回复");
+        AssertUtils.available(assessRecoverMapper.selectOne(new QueryWrapper<AssessRecover>().eq("assess_id", param.getAssessId())) == null, "该订单已回复");
         AssessRecover assessRecover = AssessRecoverCopier.INSTANCE.copying(param);
         assessRecover.setRecoverTime(new Date());
         assessRecoverMapper.insert(assessRecover);

+ 7 - 12
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/AttentionServiceImpl.java

@@ -11,9 +11,9 @@ import com.chelvc.cloud.vehicle.api.param.QueryAttentionParam;
 import com.chelvc.cloud.vehicle.api.service.AttentionService;
 import com.chelvc.cloud.vehicle.server.dao.AttentionMapper;
 import com.chelvc.cloud.vehicle.server.entity.Attention;
-import com.chelvc.framework.base.exception.ResourceUnavailableException;
-import com.chelvc.framework.common.model.PagedDTO;
+import com.chelvc.framework.common.exception.ResourceUnavailableException;
 import com.chelvc.framework.common.model.Pagination;
+import com.chelvc.framework.common.model.Paging;
 import lombok.RequiredArgsConstructor;
 import org.apache.dubbo.config.annotation.DubboReference;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -90,12 +90,9 @@ public class AttentionServiceImpl implements AttentionService {
   }
 
   @Override
-  public Pagination<AttentionUserDTO> page(PagedDTO page, QueryAttentionParam param, Long userId) {
-    if (userId == null) {
-      throw new ResourceUnavailableException("用户不存在");
-    }
-    Long pageCode = page.getPageCode();
-    Long pageSize = page.getPageSize();
+  public Pagination<AttentionUserDTO> page(Paging page, QueryAttentionParam param, Long userId) {
+    long pageCode = page.getNumber();
+    long pageSize = page.getSize();
     long start = (pageCode - 1) * pageSize;
     long end = pageCode * pageSize - 1;
     AttentionType type = param.getType();
@@ -179,9 +176,6 @@ public class AttentionServiceImpl implements AttentionService {
 
   @Override
   public AttentionTotalDTO queryTotalByUserId(Long userId) {
-    if(userId == null){
-      throw new ResourceUnavailableException("用户不存在");
-    }
     AttentionTotalDTO totalDTO = new AttentionTotalDTO();
     String attentionCacheKey = getAttentionCacheKey(userId);
     if(Boolean.FALSE.equals(redisTemplate.hasKey(attentionCacheKey))){
@@ -208,7 +202,8 @@ public class AttentionServiceImpl implements AttentionService {
         .reverseRange(cacheKey, start, end);
     if (set != null && set.size() > 0) {
       List<Long> userIds = set.stream().map(e -> (Long) e).collect(Collectors.toList());
-      Map<Long, UserDTO> map = userService.queryUserByIds(userIds);
+      List<UserDTO> users = this.userService.listUsers(userIds);
+      Map<Long, UserDTO> map = users.stream().collect(Collectors.toMap(UserDTO::getId, user -> user));
       set.forEach(e -> {
         AttentionUserDTO attentionUserDTO = new AttentionUserDTO();
         attentionUserDTO.setUserDTO(map.get((Long)e));

+ 8 - 8
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/CarouselImagesServiceImpl.java

@@ -8,10 +8,10 @@ import com.chelvc.cloud.vehicle.server.copier.CarouselImagesCopier;
 import com.chelvc.cloud.vehicle.server.dao.CarouselImagesMapper;
 import com.chelvc.cloud.vehicle.server.entity.CarouselImages;
 import com.chelvc.cloud.vehicle.server.service.CarouselImagesService;
-import com.chelvc.framework.base.util.ResourceUtils;
 import com.chelvc.framework.common.model.Pagination;
+import com.chelvc.framework.common.util.AssertUtils;
 import com.chelvc.framework.common.util.StringUtils;
-import com.chelvc.framework.database.util.PagingUtils;
+import com.chelvc.framework.database.context.DatabaseContextHolder;
 import lombok.NonNull;
 import org.apache.dubbo.config.annotation.DubboService;
 
@@ -30,7 +30,7 @@ public class CarouselImagesServiceImpl extends ServiceImpl<CarouselImagesMapper,
     @Override
     public Long addCarouselImages(@NonNull CarouselImagesModifyParam param) {
         Integer count = this.lambdaQuery().eq(CarouselImages::getTitle, param.getTitle()).count();
-        ResourceUtils.available(count <= 0, "该轮播图已存在");
+        AssertUtils.available(count <= 0, "该轮播图已存在");
         CarouselImages carouselImages = CarouselImagesCopier.INSTANCE.copying(param);
         this.save(carouselImages);
         return carouselImages.getId();
@@ -38,7 +38,7 @@ public class CarouselImagesServiceImpl extends ServiceImpl<CarouselImagesMapper,
 
     @Override
     public void updateCarouselImages(@NonNull Long id, @NonNull CarouselImagesModifyParam param) {
-        CarouselImages carouselImages = ResourceUtils.required(this.getById(id), "该轮播图不存在");
+        CarouselImages carouselImages = AssertUtils.available(this.getById(id), "该轮播图不存在");
         CarouselImagesCopier.INSTANCE.copying(param, carouselImages);
         this.updateById(carouselImages);
     }
@@ -46,15 +46,15 @@ public class CarouselImagesServiceImpl extends ServiceImpl<CarouselImagesMapper,
     @Override
     public Pagination<CarouselImagesDTO> getCarouselImagesPaging(@NonNull CarouselImagesPagingParam param) {
         Page<CarouselImages> page = this.lambdaQuery()
-                .like(StringUtils.nonEmpty(param.getTitle()), CarouselImages::getTitle, param.getTitle())
+                .like(StringUtils.notEmpty(param.getTitle()), CarouselImages::getTitle, param.getTitle())
                 .eq(Objects.nonNull(param.getStatus()), CarouselImages::getStatus, param.getStatus())
-                .orderByAsc(CarouselImages::getSeq).page(PagingUtils.convert(param.getPaging()));
-        return PagingUtils.convert(page, CarouselImagesCopier.INSTANCE::copying);
+                .orderByAsc(CarouselImages::getSeq).page(DatabaseContextHolder.page(param.getPaging()));
+        return DatabaseContextHolder.pagination(page, CarouselImagesCopier.INSTANCE::copying);
     }
 
     @Override
     public void deleteCarouselImages(Long id){
-        ResourceUtils.required(this.getById(id), "该轮播图存在");
+        AssertUtils.available(this.getById(id), "该轮播图存在");
         this.baseMapper.deleteById(id);
     }
 

+ 8 - 10
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/CategoryServiceImpl.java

@@ -3,9 +3,7 @@ package com.chelvc.cloud.vehicle.server.service.impl;
 import java.util.ArrayList;
 import java.util.Comparator;
 import java.util.List;
-import java.util.Map;
 import java.util.Objects;
-import java.util.stream.Collectors;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -16,10 +14,10 @@ import com.chelvc.cloud.vehicle.server.copier.CategoryCopier;
 import com.chelvc.cloud.vehicle.server.dao.CategoryMapper;
 import com.chelvc.cloud.vehicle.server.entity.Category;
 import com.chelvc.cloud.vehicle.server.service.CategoryService;
-import com.chelvc.framework.base.util.ResourceUtils;
 import com.chelvc.framework.common.model.Pagination;
+import com.chelvc.framework.common.util.AssertUtils;
 import com.chelvc.framework.common.util.StringUtils;
-import com.chelvc.framework.database.util.PagingUtils;
+import com.chelvc.framework.database.context.DatabaseContextHolder;
 import lombok.NonNull;
 import org.apache.dubbo.config.annotation.DubboService;
 
@@ -35,7 +33,7 @@ public class CategoryServiceImpl extends ServiceImpl<CategoryMapper, Category> i
     @Override
     public Long addCategory(@NonNull CategoryModifyParam param) {
         Integer count = this.lambdaQuery().eq(Category::getName, param.getName()).count();
-        ResourceUtils.available(count <= 0, "分类名称已存在");
+        AssertUtils.available(count <= 0, "分类名称已存在");
         Category category = CategoryCopier.INSTANCE.copying(param);
         this.save(category);
         return category.getId();
@@ -43,7 +41,7 @@ public class CategoryServiceImpl extends ServiceImpl<CategoryMapper, Category> i
 
     @Override
     public void updateCategory(@NonNull Long id, @NonNull CategoryModifyParam param) {
-        Category category = ResourceUtils.required(this.getById(id), "分类不存在");
+        Category category = AssertUtils.available(this.getById(id), "分类不存在");
         CategoryCopier.INSTANCE.copying(param, category);
         this.updateById(category);
     }
@@ -51,10 +49,10 @@ public class CategoryServiceImpl extends ServiceImpl<CategoryMapper, Category> i
     @Override
     public Pagination<CategoryDTO> getCategoryPaging(@NonNull CategoryPagingParam param) {
         Page<Category> page = this.lambdaQuery()
-                .like(StringUtils.nonEmpty(param.getName()), Category::getName, param.getName())
+                .like(StringUtils.notEmpty(param.getName()), Category::getName, param.getName())
                 .eq(Objects.nonNull(param.getEnabled()), Category::getEnabled, param.getEnabled())
-                .orderByAsc(Category::getSort).page(PagingUtils.convert(param.getPaging()));
-        return PagingUtils.convert(page, CategoryCopier.INSTANCE::copying);
+                .orderByAsc(Category::getSort).page(DatabaseContextHolder.page(param.getPaging()));
+        return DatabaseContextHolder.pagination(page, CategoryCopier.INSTANCE::copying);
     }
 
     @Override
@@ -88,7 +86,7 @@ public class CategoryServiceImpl extends ServiceImpl<CategoryMapper, Category> i
     }
     @Override
     public void deleteCategory(Long id){
-        ResourceUtils.required(this.getById(id), "该分类不存在");
+        AssertUtils.available(this.getById(id), "该分类不存在");
         this.baseMapper.deleteById(id);
     }
     @Override

+ 6 - 6
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/CommentServiceImpl.java

@@ -15,8 +15,8 @@ import com.chelvc.cloud.vehicle.server.entity.Comment;
 import com.chelvc.cloud.vehicle.server.service.CommentService;
 import com.chelvc.framework.common.model.Pagination;
 import com.chelvc.framework.common.model.Paging;
-import com.chelvc.framework.common.util.BeanCopyUtil;
-import com.chelvc.framework.database.util.PagingUtils;
+import com.chelvc.framework.common.util.ObjectUtils;
+import com.chelvc.framework.database.context.DatabaseContextHolder;
 import lombok.NonNull;
 import org.apache.dubbo.config.annotation.DubboReference;
 import org.apache.dubbo.config.annotation.DubboService;
@@ -77,7 +77,7 @@ public class CommentServiceImpl extends ServiceImpl<CommentMapper, Comment> impl
 
     @Override
     public void addGoodsComments(AddGoodsCommentParam param, Long userId) {
-        Comment comment = BeanCopyUtil.copy(param, Comment.class);
+        Comment comment = ObjectUtils.copying(param, Comment.class);
         comment.setUserId(userId);
         baseMapper.insert(comment);
     }
@@ -103,9 +103,9 @@ public class CommentServiceImpl extends ServiceImpl<CommentMapper, Comment> impl
     public Pagination<CommentDTO> selectCommentListByUserId(Long userId, Paging paging) {
         Page<Comment> page = this.lambdaQuery()
                 .eq(Comment::getUserId, userId)
-                .orderByAsc(Comment::getCreateTime).page(PagingUtils.convert(paging));
+                .orderByAsc(Comment::getCreateTime).page(DatabaseContextHolder.page(paging));
         List<Comment> comments = page.getRecords();
-        List<CommentDTO> copy = BeanCopyUtil.copy(comments, CommentDTO.class);
-        return PagingUtils.convert(page, copy);
+        List<CommentDTO> copy = ObjectUtils.copying(comments, CommentDTO.class);
+        return DatabaseContextHolder.pagination(page, copy);
     }
 }

+ 6 - 6
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/CommissionConfigServiceImpl.java

@@ -9,9 +9,9 @@ import com.chelvc.cloud.vehicle.server.dao.CommissionConfigMapper;
 import com.chelvc.cloud.vehicle.server.entity.CommissionConfig;
 import com.chelvc.cloud.vehicle.server.service.CommissionConfigService;
 import com.chelvc.framework.base.context.SessionContextHolder;
-import com.chelvc.framework.base.util.ResourceUtils;
 import com.chelvc.framework.common.model.Pagination;
-import com.chelvc.framework.database.util.PagingUtils;
+import com.chelvc.framework.common.util.AssertUtils;
+import com.chelvc.framework.database.context.DatabaseContextHolder;
 import lombok.NonNull;
 import org.apache.dubbo.config.annotation.DubboService;
 
@@ -41,7 +41,7 @@ public class CommissionConfigServiceImpl extends ServiceImpl<CommissionConfigMap
 
     @Override
     public void updateCommissionConfig(@NonNull Long id, @NonNull CommissionConfigModifyParam param) {
-        CommissionConfig commissionConfig = ResourceUtils.required(this.getById(id), "该抽成配置不存在");
+        CommissionConfig commissionConfig = AssertUtils.available(this.getById(id), "该抽成配置不存在");
         CommissionConfigCopier.INSTANCE.copying(param, commissionConfig);
         Long userId = SessionContextHolder.getId();
         commissionConfig.setUpdateTime(new Date());
@@ -52,13 +52,13 @@ public class CommissionConfigServiceImpl extends ServiceImpl<CommissionConfigMap
     @Override
     public Pagination<CommissionConfigDTO> getCommissionConfigPaging(@NonNull CommissionConfigPagingParam param) {
         Page<CommissionConfig> page = this.lambdaQuery()
-                .orderByAsc(CommissionConfig::getCommissionRate).page(PagingUtils.convert(param.getPaging()));
-        return PagingUtils.convert(page, CommissionConfigCopier.INSTANCE::copying);
+                .orderByAsc(CommissionConfig::getCommissionRate).page(DatabaseContextHolder.page(param.getPaging()));
+        return DatabaseContextHolder.pagination(page, CommissionConfigCopier.INSTANCE::copying);
     }
 
     @Override
     public void deleteCommissionConfig(Long id){
-        ResourceUtils.required(this.getById(id), "该轮播图存在");
+        AssertUtils.available(this.getById(id), "该轮播图存在");
         this.baseMapper.deleteById(id);
     }
     @Override

+ 9 - 13
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/CouponServiceImpl.java

@@ -5,10 +5,8 @@ import java.util.List;
 import java.util.Objects;
 import java.util.stream.Collectors;
 
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.chelvc.cloud.vehicle.api.constant.PromotionStatus;
 import com.chelvc.cloud.vehicle.api.dto.CouponDTO;
 import com.chelvc.cloud.vehicle.api.param.CouponModifyParam;
 import com.chelvc.cloud.vehicle.api.param.CouponPagingParam;
@@ -16,14 +14,12 @@ import com.chelvc.cloud.vehicle.server.copier.CouponCopier;
 import com.chelvc.cloud.vehicle.server.dao.CouponMapper;
 import com.chelvc.cloud.vehicle.server.entity.Coupon;
 import com.chelvc.cloud.vehicle.server.service.CouponService;
-import com.chelvc.framework.base.exception.ResourceUnavailableException;
-import com.chelvc.framework.base.util.ResourceUtils;
+import com.chelvc.framework.common.exception.ResourceUnavailableException;
 import com.chelvc.framework.common.model.Pagination;
+import com.chelvc.framework.common.util.AssertUtils;
 import com.chelvc.framework.database.context.DatabaseContextHolder;
-import com.chelvc.framework.database.util.PagingUtils;
 import lombok.NonNull;
 import org.apache.dubbo.config.annotation.DubboService;
-import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 import org.springframework.util.StringUtils;
 
@@ -50,20 +46,20 @@ public class CouponServiceImpl extends ServiceImpl<CouponMapper, Coupon> impleme
 
     @Override
     public void updateCoupon(@NonNull Long id, @NonNull CouponModifyParam param) {
-        Coupon coupon = ResourceUtils.required(this.getById(id), "优惠券不存在");
+        Coupon coupon = AssertUtils.available(this.getById(id), "优惠券不存在");
         CouponCopier.INSTANCE.copying(param, coupon);
         this.updateById(coupon);
     }
 
     @Override
     public void deleteCoupon(@NonNull Long id) {
-        ResourceUtils.required(this.getById(id), "商品优惠卷不存在");
+        AssertUtils.available(this.getById(id), "商品优惠卷不存在");
         this.baseMapper.deleteById(id);
     }
 
     @Override
     public CouponDTO getCoupon(@NonNull Long id) {
-        Coupon coupon = ResourceUtils.required(this.getById(id), "优惠券不存在");
+        Coupon coupon = AssertUtils.available(this.getById(id), "优惠券不存在");
         return this.convert(coupon);
     }
 
@@ -76,7 +72,7 @@ public class CouponServiceImpl extends ServiceImpl<CouponMapper, Coupon> impleme
                 .eq(Objects.nonNull(param.getCouponStatus()), Coupon::getStatus, param.getCouponStatus())
                 .eq(Objects.nonNull(param.getCouponClaimType()), Coupon::getClaimType, param.getCouponClaimType())
                 .or().like(!StringUtils.isEmpty(param.getKeyword()), Coupon::getName, param.getKeyword())
-                .orderByDesc(Coupon::getCreateTime).page(PagingUtils.convert(param.getPaging()));
+                .orderByDesc(Coupon::getCreateTime).page(DatabaseContextHolder.page(param.getPaging()));
         List<Coupon> records = page.getRecords();
         if (CollectionUtils.isEmpty(records)) {
             return Pagination.empty();
@@ -84,7 +80,7 @@ public class CouponServiceImpl extends ServiceImpl<CouponMapper, Coupon> impleme
 
         // 构建优惠券信息
         List<CouponDTO> clients = records.stream().map(this::convert).collect(Collectors.toList());
-        return PagingUtils.convert(page, clients);
+        return DatabaseContextHolder.pagination(page, clients);
     }
 
     @Override
@@ -92,7 +88,7 @@ public class CouponServiceImpl extends ServiceImpl<CouponMapper, Coupon> impleme
         // 查询优惠券列表
         Page<Coupon> page = this.lambdaQuery()
                 .eq(Coupon::getMerchantId, merchantId)
-                .orderByDesc(Coupon::getCreateTime).page(PagingUtils.convert(param.getPaging()));
+                .orderByDesc(Coupon::getCreateTime).page(DatabaseContextHolder.page(param.getPaging()));
         List<Coupon> records = page.getRecords();
         if (CollectionUtils.isEmpty(records)) {
             return Pagination.empty();
@@ -100,7 +96,7 @@ public class CouponServiceImpl extends ServiceImpl<CouponMapper, Coupon> impleme
 
         // 构建优惠券信息
         List<CouponDTO> clients = records.stream().map(this::convert).collect(Collectors.toList());
-        return PagingUtils.convert(page, clients);
+        return DatabaseContextHolder.pagination(page, clients);
     }
 
     @Override

+ 208 - 204
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/DynamicCommentServiceImpl.java

@@ -1,5 +1,11 @@
 package com.chelvc.cloud.vehicle.server.service.impl;
 
+import java.time.LocalDateTime;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.stream.Collectors;
+
 import cn.hutool.extra.spring.SpringUtil;
 import com.baomidou.lock.annotation.Lock4j;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -23,9 +29,9 @@ import com.chelvc.cloud.vehicle.server.entity.DynamicComment;
 import com.chelvc.cloud.vehicle.server.service.DynamicCommentService;
 import com.chelvc.cloud.vehicle.server.service.DynamicContentService;
 import com.chelvc.cloud.vehicle.server.service.DynamicEvaluateRecordService;
-import com.chelvc.framework.base.exception.ResourceUnavailableException;
+import com.chelvc.framework.common.exception.ResourceUnavailableException;
 import com.chelvc.framework.common.model.Pagination;
-import com.chelvc.framework.common.util.BeanCopyUtil;
+import com.chelvc.framework.common.util.ObjectUtils;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
@@ -35,12 +41,6 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Lazy;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.time.LocalDateTime;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-import java.util.stream.Collectors;
-
 /**
  * @PACKAGE_NAME: net.yeeu.collision.dynamic.service.impl
  * @NAME: DynamicCommentServiceImpl
@@ -50,223 +50,227 @@ import java.util.stream.Collectors;
 @Slf4j
 @RequiredArgsConstructor(onConstructor = @__({@Autowired, @Lazy}))
 @DubboService(interfaceClass = com.chelvc.cloud.vehicle.api.service.DynamicCommentService.class)
-public class DynamicCommentServiceImpl implements DynamicCommentService, com.chelvc.cloud.vehicle.api.service.DynamicCommentService {
-  private final DynamicCommentMapper baseMapper;
-  private final DynamicContentService dynamicContentService;
-  @DubboReference
-  private final UserService userService;
-  DynamicEvaluateRecordService dynamicEvaluateRecordService;
+public class DynamicCommentServiceImpl implements DynamicCommentService,
+        com.chelvc.cloud.vehicle.api.service.DynamicCommentService {
+    private final DynamicCommentMapper baseMapper;
+    private final DynamicContentService dynamicContentService;
+    @DubboReference
+    private final UserService userService;
+    DynamicEvaluateRecordService dynamicEvaluateRecordService;
+
+    //private final ContentAuditHelper contentAuditHelper;
 
-  //private final ContentAuditHelper contentAuditHelper;
-  /**
-   * 查询动态评论列表
-   */
-  @Override
-  public Pagination<DynamicCommentDTO> queryPageList(QueryDynamicCommentParam param, Integer pageNum,
-                                                     Integer pageSize) {
-    LambdaQueryWrapper<DynamicComment> lqw = Wrappers.lambdaQuery();
-    lqw.eq(DynamicComment::getDynamicId, param.getDynamicId());
-    lqw.eq(DynamicComment::getParentId, param.getParentId());
-    lqw.eq(DynamicComment::getPlatformStatus, 0);
-    Long userId = param.getUserId();
-    lqw.and(wq -> wq
-        .eq(DynamicComment::getExamineStatus, 1)
-        .or(wq1 -> wq1
-            .eq(DynamicComment::getExamineStatus, 0)
-            .eq(DynamicComment::getUserId, userId)));
-    lqw.orderByDesc(DynamicComment::getCreateTime);
-    Page<DynamicComment> page = baseMapper.selectPage(
-        new Page<>(pageNum, pageSize), lqw);
-    List<DynamicComment> result = page.getRecords();
-    DynamicEvaluateRecordService service = getContentEvaluateRecordService();
-    if (result != null && result.size() > 0) {
-      List<DynamicCommentDTO> records = BeanCopyUtil.copy(result,
-          DynamicCommentDTO.class);
-      List<Long> userIds = records.stream().map(DynamicCommentDTO::getUserId).collect(
-          Collectors.toList());
-      Map<Long, UserDTO> map = userService.queryUserByIds(userIds);
-      records.forEach(e -> {
-        e.setUserDTO(map == null ? new UserDTO() : map.get(e.getUserId()));
-        DynamicEvaluateRecordDTO dto = service.queryOperaterType(e.getId(),
-                userId, RecordType.COMMENT.getValue());
-        if (dto == null) {
-          e.setClickStatus(0);
-        } else {
-          e.setClickStatus(dto.getOperaterType());
+    /**
+     * 查询动态评论列表
+     */
+    @Override
+    public Pagination<DynamicCommentDTO> queryPageList(QueryDynamicCommentParam param, Integer pageNum,
+                                                       Integer pageSize) {
+        LambdaQueryWrapper<DynamicComment> lqw = Wrappers.lambdaQuery();
+        lqw.eq(DynamicComment::getDynamicId, param.getDynamicId());
+        lqw.eq(DynamicComment::getParentId, param.getParentId());
+        lqw.eq(DynamicComment::getPlatformStatus, 0);
+        Long userId = param.getUserId();
+        lqw.and(wq -> wq
+                .eq(DynamicComment::getExamineStatus, 1)
+                .or(wq1 -> wq1
+                        .eq(DynamicComment::getExamineStatus, 0)
+                        .eq(DynamicComment::getUserId, userId)));
+        lqw.orderByDesc(DynamicComment::getCreateTime);
+        Page<DynamicComment> page = baseMapper.selectPage(
+                new Page<>(pageNum, pageSize), lqw);
+        List<DynamicComment> result = page.getRecords();
+        DynamicEvaluateRecordService service = getContentEvaluateRecordService();
+        if (result != null && result.size() > 0) {
+            List<DynamicCommentDTO> records = ObjectUtils.copying(result,
+                    DynamicCommentDTO.class);
+            List<Long> userIds = records.stream().map(DynamicCommentDTO::getUserId).collect(
+                    Collectors.toList());
+            List<UserDTO> users = this.userService.listUsers(userIds);
+            Map<Long, UserDTO> map = users.stream().collect(Collectors.toMap(UserDTO::getId, user -> user));
+            records.forEach(e -> {
+                e.setUserDTO(map == null ? new UserDTO() : map.get(e.getUserId()));
+                DynamicEvaluateRecordDTO dto = service.queryOperaterType(e.getId(),
+                        userId, RecordType.COMMENT.getValue());
+                if (dto == null) {
+                    e.setClickStatus(0);
+                } else {
+                    e.setClickStatus(dto.getOperaterType());
+                }
+            });
+            return Pagination.<DynamicCommentDTO>builder().total(page.getTotal()).pages(page.getPages())
+                    .records(records).build();
         }
-      });
-      return Pagination.<DynamicCommentDTO>builder().total(page.getTotal()).pages(page.getPages())
-              .records(records).build();
+        return new Pagination<>();
     }
-    return new Pagination<>();
-  }
 
-  public DynamicEvaluateRecordService getContentEvaluateRecordService() {
-    this.dynamicEvaluateRecordService = SpringUtil.getBean(DynamicEvaluateRecordService.class);
-    return dynamicEvaluateRecordService;
-  }
-
-  @Override
-  public Pagination<DynamicCommentDTO> queryAdminPageList(QueryAdminDynamicParam param, Long pageNum,
-                                                       Long pageSize) {
-    Page<DynamicCommentDTO> page = new Page<>(pageNum, pageSize);
-    IPage<DynamicCommentDTO> result = null;
-    if (param == null) {
-      return new Pagination<>();
+    public DynamicEvaluateRecordService getContentEvaluateRecordService() {
+        this.dynamicEvaluateRecordService = SpringUtil.getBean(DynamicEvaluateRecordService.class);
+        return dynamicEvaluateRecordService;
     }
-    result = baseMapper
-        .queryAll(page, queryManagerWrapper(param));
-    IPage<DynamicCommentDTO> resultDto = getResult(result);
-    return Pagination.<DynamicCommentDTO>builder().total(result.getTotal()).pages(result.getPages())
-            .records(resultDto.getRecords()).build();
-  }
 
-  public IPage<DynamicCommentDTO> getResult(IPage<DynamicCommentDTO> result) {
-    if (result == null) {
-      return null;
-    }
-    List<DynamicCommentDTO> records = result.getRecords();
-    if (records != null && !records.isEmpty()) {
-      List<Long> userIds = records.stream().map(DynamicCommentDTO::getUserId).collect(
-          Collectors.toList());
-      Map<Long, UserDTO> longUserBaseInfoMap = userService.queryUserByIds(
-          userIds);
-      log.info("远程查询用户信息成功:{}", longUserBaseInfoMap);
-      records.forEach(e -> {
-        e.setUserDTO(longUserBaseInfoMap == null ? new UserDTO() :
-            longUserBaseInfoMap.get(e.getUserId()));
-      });
+    @Override
+    public Pagination<DynamicCommentDTO> queryAdminPageList(QueryAdminDynamicParam param, Long pageNum,
+                                                            Long pageSize) {
+        Page<DynamicCommentDTO> page = new Page<>(pageNum, pageSize);
+        IPage<DynamicCommentDTO> result = null;
+        if (param == null) {
+            return new Pagination<>();
+        }
+        result = baseMapper
+                .queryAll(page, queryManagerWrapper(param));
+        IPage<DynamicCommentDTO> resultDto = getResult(result);
+        return Pagination.<DynamicCommentDTO>builder().total(result.getTotal()).pages(result.getPages())
+                .records(resultDto.getRecords()).build();
     }
-    return result;
-  }
-
-  private QueryWrapper<DynamicComment> queryManagerWrapper(
-      QueryAdminDynamicParam param) {
-    QueryWrapper<DynamicComment> lqw = Wrappers.query();
-    lqw.eq("t1.deleted", 0);
-    lqw.like(StringUtils.isNotBlank(param.getKeyWord()), "t1.content", param.getKeyWord());
-    lqw.ge(StringUtils.isNotBlank(param.getStartTime()), "t1.create_time", param.getStartTime());
-    lqw.le(StringUtils.isNotBlank(param.getEndTime()), "t1.create_time", param.getEndTime());
-    lqw.eq(param.getExamineStatus() != null, "t1.examine_status", param.getExamineStatus());
-    lqw.eq(param.getExamineResult() != null, "t1.examine_result", param.getExamineResult());
-    lqw.eq(param.getPlatformStatus() != null, "t1.platform_status", param.getPlatformStatus());
-    lqw.orderByDesc("t1.create_time","t1.id");
-    return lqw;
-  }
 
-  /**
-   * 新增动态评论
-   */
-  @Override
-  public void insertByBo(AddDynamicCommentParam param, Long userId) {
-    DynamicComment add = BeanCopyUtil.copy(param, DynamicComment.class);
-    add.setUserId(userId);
-    boolean b = baseMapper.insert(add) > 0;
-    if (!b) {
-      throw new ResourceUnavailableException("新增评论失败");
+    public IPage<DynamicCommentDTO> getResult(IPage<DynamicCommentDTO> result) {
+        if (result == null) {
+            return null;
+        }
+        List<DynamicCommentDTO> records = result.getRecords();
+        if (records != null && !records.isEmpty()) {
+            List<Long> userIds = records.stream().map(DynamicCommentDTO::getUserId).collect(
+                    Collectors.toList());
+            List<UserDTO> users = this.userService.listUsers(userIds);
+            Map<Long, UserDTO> longUserBaseInfoMap = users.stream().collect(Collectors.toMap(UserDTO::getId,
+                    user -> user));
+            log.info("远程查询用户信息成功:{}", longUserBaseInfoMap);
+            records.forEach(e -> {
+                e.setUserDTO(longUserBaseInfoMap == null ? new UserDTO() :
+                        longUserBaseInfoMap.get(e.getUserId()));
+            });
+        }
+        return result;
     }
-    //异步处理审核
-    //contentAuditHelper.asyncCommentHandle(add);
-    //暂时不审核
-    addParentComment(param.getParentId());
-    dynamicContentService.addComment(param.getDynamicId());
-  }
 
-  private void addParentComment(Long parentId) {
-    if(parentId == 0){
-      return;
+    private QueryWrapper<DynamicComment> queryManagerWrapper(
+            QueryAdminDynamicParam param) {
+        QueryWrapper<DynamicComment> lqw = Wrappers.query();
+        lqw.eq("t1.deleted", 0);
+        lqw.like(StringUtils.isNotBlank(param.getKeyWord()), "t1.content", param.getKeyWord());
+        lqw.ge(StringUtils.isNotBlank(param.getStartTime()), "t1.create_time", param.getStartTime());
+        lqw.le(StringUtils.isNotBlank(param.getEndTime()), "t1.create_time", param.getEndTime());
+        lqw.eq(param.getExamineStatus() != null, "t1.examine_status", param.getExamineStatus());
+        lqw.eq(param.getExamineResult() != null, "t1.examine_result", param.getExamineResult());
+        lqw.eq(param.getPlatformStatus() != null, "t1.platform_status", param.getPlatformStatus());
+        lqw.orderByDesc("t1.create_time", "t1.id");
+        return lqw;
     }
-    DynamicComment DynamicComment = baseMapper.selectById(parentId);
-    if(DynamicComment == null){
-      return;
-    }
-    int i = baseMapper.addComment(DynamicComment.getId());
-    if(i != 1){
-      throw new ResourceUnavailableException("新增评论失败");
-    }
-    addParentComment(DynamicComment.getParentId());
-  }
 
-  @Override
-  @Lock4j(keys = {"#contentId"})
-  public void addNum(Integer dynamicStatus, Long contentId) {
-    if (Objects.equals(DynamicStatusType.GOOD.getValue(), dynamicStatus)) {
-      int i = baseMapper.addGoodNum(contentId);
-      if(i != 1){
-        throw new ResourceUnavailableException("点赞失败");
-      }
-    } else if (Objects.equals(DynamicStatusType.BAD.getValue(), dynamicStatus)) {
-      int i = baseMapper.addBadNum(contentId);
-      if(i != 1){
-        throw new ResourceUnavailableException("D踩一踩失败");
-      }
+    /**
+     * 新增动态评论
+     */
+    @Override
+    public void insertByBo(AddDynamicCommentParam param, Long userId) {
+        DynamicComment add = ObjectUtils.copying(param, DynamicComment.class);
+        add.setUserId(userId);
+        boolean b = baseMapper.insert(add) > 0;
+        if (!b) {
+            throw new ResourceUnavailableException("新增评论失败");
+        }
+        //异步处理审核
+        //contentAuditHelper.asyncCommentHandle(add);
+        //暂时不审核
+        addParentComment(param.getParentId());
+        dynamicContentService.addComment(param.getDynamicId());
     }
-  }
 
-  @Override
-  @Lock4j(keys = {"#contentId"})
-  public void reduceNum(Integer dynamicStatus, Long contentId) {
-    if (Objects.equals(DynamicStatusType.GOOD.getValue(), dynamicStatus)) {
-      int i = baseMapper.reduceGoodNum(contentId);
-      if(i != 1){
-        throw new ResourceUnavailableException("取消点赞失败");
-      }
-    } else if (Objects.equals(DynamicStatusType.BAD.getValue(), dynamicStatus)) {
-      int i = baseMapper.reduceBadNum(contentId);
-      if(i != 1){
-        throw new ResourceUnavailableException("取消踩一踩失败");
-      }
+    private void addParentComment(Long parentId) {
+        if (parentId == 0) {
+            return;
+        }
+        DynamicComment DynamicComment = baseMapper.selectById(parentId);
+        if (DynamicComment == null) {
+            return;
+        }
+        int i = baseMapper.addComment(DynamicComment.getId());
+        if (i != 1) {
+            throw new ResourceUnavailableException("新增评论失败");
+        }
+        addParentComment(DynamicComment.getParentId());
     }
-  }
 
-  @Override
-  @Transactional(rollbackFor = RuntimeException.class)
-  public void examine(Long id, ExamineType examine) {
-    DynamicComment DynamicComment = baseMapper.selectById(id);
-    if(DynamicComment == null){
-      throw new ResourceUnavailableException("评论不存在");
-    }
-    LambdaUpdateWrapper<DynamicComment> lwq = Wrappers.lambdaUpdate();
-    lwq.eq(com.chelvc.cloud.vehicle.server.entity.DynamicComment::getId, id);
-    lwq.set(com.chelvc.cloud.vehicle.server.entity.DynamicComment::getExamineStatus, 1);
-    if(ExamineType.REFUSE.equals(examine)){
-      lwq.set(com.chelvc.cloud.vehicle.server.entity.DynamicComment::getPlatformStatus, 1);
-    }
-    int update = baseMapper.update(null, lwq);
-    if(update != 1){
-      throw new ResourceUnavailableException("操作失败");
+    @Override
+    @Lock4j(keys = {"#contentId"})
+    public void addNum(Integer dynamicStatus, Long contentId) {
+        if (Objects.equals(DynamicStatusType.GOOD.getValue(), dynamicStatus)) {
+            int i = baseMapper.addGoodNum(contentId);
+            if (i != 1) {
+                throw new ResourceUnavailableException("点赞失败");
+            }
+        } else if (Objects.equals(DynamicStatusType.BAD.getValue(), dynamicStatus)) {
+            int i = baseMapper.addBadNum(contentId);
+            if (i != 1) {
+                throw new ResourceUnavailableException("D踩一踩失败");
+            }
+        }
     }
-    if(ExamineType.PASS.equals(examine)){
-      addParentComment(DynamicComment.getParentId());
-      dynamicContentService.addComment(DynamicComment.getDynamicId());
+
+    @Override
+    @Lock4j(keys = {"#contentId"})
+    public void reduceNum(Integer dynamicStatus, Long contentId) {
+        if (Objects.equals(DynamicStatusType.GOOD.getValue(), dynamicStatus)) {
+            int i = baseMapper.reduceGoodNum(contentId);
+            if (i != 1) {
+                throw new ResourceUnavailableException("取消点赞失败");
+            }
+        } else if (Objects.equals(DynamicStatusType.BAD.getValue(), dynamicStatus)) {
+            int i = baseMapper.reduceBadNum(contentId);
+            if (i != 1) {
+                throw new ResourceUnavailableException("取消踩一踩失败");
+            }
+        }
     }
-  }
 
-  @Override
-  public void autoAudit(Long id, int platformStatus, int examineResult) {
-    LambdaUpdateWrapper<DynamicComment> lwq = Wrappers.lambdaUpdate();
-    lwq.set(DynamicComment::getPlatformStatus, platformStatus);
-    lwq.set(DynamicComment::getExamineStatus, 1);
-    lwq.set(DynamicComment::getExamineResult, examineResult);
-    lwq.set(DynamicComment::getUpdateTime, LocalDateTime.now());
-    lwq.eq(DynamicComment::getId, id);
-    int update = baseMapper.update(null, lwq);
-    if(update != 1){
-      throw new ResourceUnavailableException("自动审核失败");
+    @Override
+    @Transactional(rollbackFor = RuntimeException.class)
+    public void examine(Long id, ExamineType examine) {
+        DynamicComment DynamicComment = baseMapper.selectById(id);
+        if (DynamicComment == null) {
+            throw new ResourceUnavailableException("评论不存在");
+        }
+        LambdaUpdateWrapper<DynamicComment> lwq = Wrappers.lambdaUpdate();
+        lwq.eq(com.chelvc.cloud.vehicle.server.entity.DynamicComment::getId, id);
+        lwq.set(com.chelvc.cloud.vehicle.server.entity.DynamicComment::getExamineStatus, 1);
+        if (ExamineType.REFUSE.equals(examine)) {
+            lwq.set(com.chelvc.cloud.vehicle.server.entity.DynamicComment::getPlatformStatus, 1);
+        }
+        int update = baseMapper.update(null, lwq);
+        if (update != 1) {
+            throw new ResourceUnavailableException("操作失败");
+        }
+        if (ExamineType.PASS.equals(examine)) {
+            addParentComment(DynamicComment.getParentId());
+            dynamicContentService.addComment(DynamicComment.getDynamicId());
+        }
     }
-    if(ExamineType.PASS.getValue() == examineResult){
-      DynamicComment DynamicComment = baseMapper.selectById(id);
-      addParentComment(DynamicComment.getParentId());
-      dynamicContentService.addComment(DynamicComment.getDynamicId());
+
+    @Override
+    public void autoAudit(Long id, int platformStatus, int examineResult) {
+        LambdaUpdateWrapper<DynamicComment> lwq = Wrappers.lambdaUpdate();
+        lwq.set(DynamicComment::getPlatformStatus, platformStatus);
+        lwq.set(DynamicComment::getExamineStatus, 1);
+        lwq.set(DynamicComment::getExamineResult, examineResult);
+        lwq.set(DynamicComment::getUpdateTime, LocalDateTime.now());
+        lwq.eq(DynamicComment::getId, id);
+        int update = baseMapper.update(null, lwq);
+        if (update != 1) {
+            throw new ResourceUnavailableException("自动审核失败");
+        }
+        if (ExamineType.PASS.getValue() == examineResult) {
+            DynamicComment DynamicComment = baseMapper.selectById(id);
+            addParentComment(DynamicComment.getParentId());
+            dynamicContentService.addComment(DynamicComment.getDynamicId());
+        }
     }
-  }
 
-  @Override
-  public DynamicCommentDTO queryById(Long id) {
-    DynamicComment dynamicComment = baseMapper.selectById(id);
-    if(dynamicComment == null){
-      return null;
+    @Override
+    public DynamicCommentDTO queryById(Long id) {
+        DynamicComment dynamicComment = baseMapper.selectById(id);
+        if (dynamicComment == null) {
+            return null;
+        }
+        return ObjectUtils.copying(dynamicComment, DynamicCommentDTO.class);
     }
-    return BeanCopyUtil.copy(dynamicComment, DynamicCommentDTO.class);
-  }
 }

+ 3 - 3
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/DynamicContentServiceImpl.java

@@ -24,7 +24,7 @@ import com.chelvc.cloud.vehicle.server.entity.DynamicResource;
 import com.chelvc.cloud.vehicle.server.service.DynamicContentService;
 import com.chelvc.cloud.vehicle.server.service.DynamicEvaluateRecordService;
 import com.chelvc.cloud.vehicle.server.service.DynamicResourceService;
-import com.chelvc.framework.base.exception.ResourceUnavailableException;
+import com.chelvc.framework.common.exception.ResourceUnavailableException;
 import com.chelvc.framework.common.model.Pagination;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
@@ -125,8 +125,8 @@ public class DynamicContentServiceImpl implements DynamicContentService, com.che
     if (!records.isEmpty()) {
       List<Long> userIds = records.stream().map(DynamicContentDTO::getUserId).collect(
           Collectors.toList());
-      Map<Long, UserDTO> longUserBaseInfoMap = userService.queryUserByIds(
-          userIds);
+      List<UserDTO> users = this.userService.listUsers(userIds);
+      Map<Long, UserDTO> longUserBaseInfoMap = users.stream().collect(Collectors.toMap(UserDTO::getId, user -> user));
       log.info("远程查询用户信息成功:{}", longUserBaseInfoMap);
       if(selfUserId != null){
         records.forEach(e -> {

+ 8 - 8
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/DynamicEvaluateRecordServiceImpl.java

@@ -16,11 +16,11 @@ import com.chelvc.cloud.vehicle.server.entity.DynamicEvaluateRecord;
 import com.chelvc.cloud.vehicle.server.service.DynamicCommentService;
 import com.chelvc.cloud.vehicle.server.service.DynamicContentService;
 import com.chelvc.cloud.vehicle.server.service.DynamicEvaluateRecordService;
-import com.chelvc.framework.base.exception.ResourceUnavailableException;
+import com.chelvc.framework.common.exception.ResourceUnavailableException;
 import com.chelvc.framework.common.model.Pagination;
 import com.chelvc.framework.common.model.Paging;
-import com.chelvc.framework.common.util.BeanCopyUtil;
-import com.chelvc.framework.database.util.PagingUtils;
+import com.chelvc.framework.common.util.ObjectUtils;
+import com.chelvc.framework.database.context.DatabaseContextHolder;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.dubbo.config.annotation.DubboService;
@@ -101,7 +101,7 @@ public class DynamicEvaluateRecordServiceImpl extends ServiceImpl<DynamicEvaluat
     List<DynamicEvaluateRecord> dynamicEvaluateRecordEntities = baseMapper.selectList(lwq);
     if (dynamicEvaluateRecordEntities != null && dynamicEvaluateRecordEntities.size() > 0){
       DynamicEvaluateRecord entity = dynamicEvaluateRecordEntities.get(0);
-      return BeanCopyUtil.copy(entity, DynamicEvaluateRecordDTO.class);
+      return ObjectUtils.copying(entity, DynamicEvaluateRecordDTO.class);
     }
     return null;
   }
@@ -127,9 +127,9 @@ public class DynamicEvaluateRecordServiceImpl extends ServiceImpl<DynamicEvaluat
   public Pagination<EvaluateDTO> selectEvaluateListByUserId(Long userId, Paging paging) {
     Page<DynamicEvaluateRecord> page = this.lambdaQuery()
             .eq(DynamicEvaluateRecord::getTargetUserId, userId)
-            .orderByAsc(DynamicEvaluateRecord::getCreateTime).page(PagingUtils.convert(paging));
+            .orderByAsc(DynamicEvaluateRecord::getCreateTime).page(DatabaseContextHolder.page(paging));
     List<DynamicEvaluateRecord> dynamicEvaluateRecords = page.getRecords();
-    List<EvaluateDTO> copy = BeanCopyUtil.copy(dynamicEvaluateRecords, EvaluateDTO.class);
+    List<EvaluateDTO> copy = ObjectUtils.copying(dynamicEvaluateRecords, EvaluateDTO.class);
     if(copy != null && copy.size() > 0){
       for (EvaluateDTO evaluateDTO : copy) {
         Integer contentType = evaluateDTO.getContentType();
@@ -144,7 +144,7 @@ public class DynamicEvaluateRecordServiceImpl extends ServiceImpl<DynamicEvaluat
         }
       }
     }
-    return PagingUtils.convert(page, copy);
+    return DatabaseContextHolder.pagination(page, copy);
   }
 
   /**
@@ -160,7 +160,7 @@ public class DynamicEvaluateRecordServiceImpl extends ServiceImpl<DynamicEvaluat
       if(DynamicEvaluateRecord != null){
         throw new ResourceUnavailableException("处理失败");
       }
-      DynamicEvaluateRecord contentEvaluateRecord = BeanCopyUtil.copy(param,
+      DynamicEvaluateRecord contentEvaluateRecord = ObjectUtils.copying(param,
           DynamicEvaluateRecord.class);
       contentEvaluateRecord.setContentType(param.getRecordType().getValue());
       contentEvaluateRecord.setOperaterType(param.getDynamicStatusType().getValue());

+ 3 - 3
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/DynamicResourceServiceImpl.java

@@ -6,8 +6,8 @@ import com.chelvc.cloud.vehicle.api.dto.DynamicResourceDTO;
 import com.chelvc.cloud.vehicle.server.dao.DynamicResourceMapper;
 import com.chelvc.cloud.vehicle.server.entity.DynamicResource;
 import com.chelvc.cloud.vehicle.server.service.DynamicResourceService;
-import com.chelvc.framework.base.exception.ResourceUnavailableException;
-import com.chelvc.framework.common.util.BeanCopyUtil;
+import com.chelvc.framework.common.exception.ResourceUnavailableException;
+import com.chelvc.framework.common.util.ObjectUtils;
 import lombok.RequiredArgsConstructor;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -44,6 +44,6 @@ public class DynamicResourceServiceImpl implements DynamicResourceService {
         if(list == null || list.size() == 0){
             return Collections.emptyList();
         }
-        return BeanCopyUtil.copy(list, DynamicResourceDTO.class);
+        return ObjectUtils.copying(list, DynamicResourceDTO.class);
     }
 }

+ 19 - 22
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/FavoriteServiceImpl.java

@@ -1,5 +1,11 @@
 package com.chelvc.cloud.vehicle.server.service.impl;
 
+import java.util.Collections;
+import java.util.Date;
+import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
+
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.chelvc.cloud.vehicle.api.constant.FavoriteType;
 import com.chelvc.cloud.vehicle.api.dto.FavoriteDTO;
@@ -13,21 +19,14 @@ import com.chelvc.cloud.vehicle.server.entity.Favorite;
 import com.chelvc.cloud.vehicle.server.service.FavoriteService;
 import com.chelvc.cloud.vehicle.server.service.GoodsService;
 import com.chelvc.framework.base.context.SessionContextHolder;
-import com.chelvc.framework.base.exception.ResourceUnavailableException;
-import com.chelvc.framework.base.util.ResourceUtils;
 import com.chelvc.framework.common.model.Pagination;
+import com.chelvc.framework.common.util.AssertUtils;
 import lombok.NonNull;
 import lombok.RequiredArgsConstructor;
 import org.apache.dubbo.config.annotation.DubboService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.util.CollectionUtils;
 
-import java.util.Collections;
-import java.util.Date;
-import java.util.List;
-import java.util.Objects;
-import java.util.stream.Collectors;
-
 /**
  * 用户收藏业务操作实现
  *
@@ -42,24 +41,24 @@ public class FavoriteServiceImpl extends ServiceImpl<FavoriteMapper, Favorite> i
     private final GoodsService goodsService;
 
     @Override
-    public Long addMerchantFavorite(@NonNull Long merchantId,String type) {
+    public Long addMerchantFavorite(@NonNull Long merchantId, String type) {
         Long userId = SessionContextHolder.getId();
-        if ("GOODS".equals(type)){
+        if ("GOODS".equals(type)) {
             Integer count = this.lambdaQuery()
                     .eq(Favorite::getUserId, userId)
                     .eq(Favorite::getType, FavoriteType.GOODS)
                     .eq(Favorite::getContentId, merchantId).count();
-            ResourceUtils.available(count <= 0, "收藏信息已存在");
+            AssertUtils.available(count <= 0, "收藏信息已存在");
             Favorite favorite = Favorite.builder().userId(userId).type(FavoriteType.GOODS)
                     .contentId(merchantId).createTime(new Date()).build();
             this.baseMapper.saveFavorite(favorite);
             return favorite.getId();
-        }else{
+        } else {
             Integer count = this.lambdaQuery()
                     .eq(Favorite::getUserId, userId)
                     .eq(Favorite::getType, FavoriteType.MERCHANT)
                     .eq(Favorite::getContentId, merchantId).count();
-            ResourceUtils.available(count <= 0, "收藏信息已存在");
+            AssertUtils.available(count <= 0, "收藏信息已存在");
             Favorite favorite = Favorite.builder().userId(userId).type(FavoriteType.MERCHANT)
                     .contentId(merchantId).createTime(new Date()).build();
             this.baseMapper.saveFavorite(favorite);
@@ -73,12 +72,10 @@ public class FavoriteServiceImpl extends ServiceImpl<FavoriteMapper, Favorite> i
         Favorite favorite = this.lambdaQuery()
                 .eq(Favorite::getUserId, userId)
                 .eq(Favorite::getContentId, id).one();
-        ResourceUtils.available(favorite != null, "收藏信息不存在");
-        if(favorite == null || favorite.getUserId() == null){
-            throw new ResourceUnavailableException("非法操作");
-        }
-        ResourceUtils.available(Objects.equals(favorite.getUserId(), SessionContextHolder.getId()), "非法操作");
-        this.baseMapper.deleteFavorite(id,userId);
+        AssertUtils.available(favorite != null, "收藏信息不存在");
+        AssertUtils.available(favorite.getUserId(), "非法操作");
+        AssertUtils.available(Objects.equals(favorite.getUserId(), SessionContextHolder.getId()), "非法操作");
+        this.baseMapper.deleteFavorite(id, userId);
     }
 
     @Override
@@ -106,11 +103,11 @@ public class FavoriteServiceImpl extends ServiceImpl<FavoriteMapper, Favorite> i
     @Override
     public List<FavoriteDTO> listFavoriteGoods() {
         Long userId = SessionContextHolder.getId();
-        List<Favorite> favorites = this.lambdaQuery().eq(Favorite::getUserId,userId)
-                .eq(Favorite::getType,FavoriteType.GOODS).list();
+        List<Favorite> favorites = this.lambdaQuery().eq(Favorite::getUserId, userId)
+                .eq(Favorite::getType, FavoriteType.GOODS).list();
 
         List<FavoriteDTO> favoriteList = FavoriteCopier.INSTANCE.copying(favorites);
-        favoriteList.forEach(item ->{
+        favoriteList.forEach(item -> {
             item.setGoods(GoodsCopier.INSTANCE.copying(this.goodsService.getById(item.getContentId())));
         });
         return favoriteList;

+ 2 - 2
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/FeedbackServiceImpl.java

@@ -7,7 +7,7 @@ import com.chelvc.cloud.vehicle.server.dao.FeedbackMapper;
 import com.chelvc.cloud.vehicle.server.entity.FeedBack;
 import com.chelvc.cloud.vehicle.server.service.FeedbackService;
 import com.chelvc.framework.base.context.SessionContextHolder;
-import com.chelvc.framework.base.util.ResourceUtils;
+import com.chelvc.framework.common.util.AssertUtils;
 import lombok.NonNull;
 import org.apache.dubbo.config.annotation.DubboService;
 
@@ -36,7 +36,7 @@ public class FeedbackServiceImpl extends ServiceImpl<FeedbackMapper, FeedBack> i
 
     @Override
     public void updateFeedback(@NonNull Long id, @NonNull FeedBackModifyParam param) {
-        FeedBack feedBack = ResourceUtils.required(this.getById(id), "该意见反馈不存在");
+        FeedBack feedBack = AssertUtils.available(this.getById(id), "该意见反馈不存在");
         FeedbackCopier.INSTANCE.copying(param, feedBack);
         this.updateById(feedBack);
     }

+ 8 - 8
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/GoodsServiceImpl.java

@@ -19,10 +19,10 @@ import com.chelvc.cloud.vehicle.server.service.CommentService;
 import com.chelvc.cloud.vehicle.server.service.CouponService;
 import com.chelvc.cloud.vehicle.server.service.GoodsService;
 import com.chelvc.framework.base.context.SessionContextHolder;
-import com.chelvc.framework.base.util.ResourceUtils;
 import com.chelvc.framework.common.model.Pagination;
+import com.chelvc.framework.common.util.AssertUtils;
 import com.chelvc.framework.common.util.StringUtils;
-import com.chelvc.framework.database.util.PagingUtils;
+import com.chelvc.framework.database.context.DatabaseContextHolder;
 import lombok.NonNull;
 import lombok.RequiredArgsConstructor;
 import org.apache.dubbo.config.annotation.DubboService;
@@ -61,7 +61,7 @@ public class GoodsServiceImpl extends ServiceImpl<GoodsMapper, Goods> implements
         Long userId = SessionContextHolder.getId();
         GoodsDetailDTO detail = GoodsDetailDTO.builder().build();
         // 获取商品信息
-        Goods goods = ResourceUtils.required(this.getById(id), "商品不存在");
+        Goods goods = AssertUtils.available(this.getById(id), "商品不存在");
         //查询商品是否被收藏
         Integer count = this.baseMapper.goodsFavorite(id,userId);
         detail.setGoods(GoodsCopier.INSTANCE.copying(goods));
@@ -98,14 +98,14 @@ public class GoodsServiceImpl extends ServiceImpl<GoodsMapper, Goods> implements
 
     @Override
     public void updateGoods(@NonNull Long id, @NonNull GoodsModifyParam param) {
-        Goods goods = ResourceUtils.required(this.getById(id), "商品不存在");
+        Goods goods = AssertUtils.available(this.getById(id), "商品不存在");
         GoodsCopier.INSTANCE.copying(param, goods);
         this.updateById(goods);
     }
 
     @Override
     public void deleteGoods(@NonNull Long id) {
-        ResourceUtils.required(this.getById(id), "商品不存在");
+        AssertUtils.available(this.getById(id), "商品不存在");
         this.baseMapper.deleteById(id);
     }
 
@@ -115,9 +115,9 @@ public class GoodsServiceImpl extends ServiceImpl<GoodsMapper, Goods> implements
                 .eq(Objects.nonNull(param.getMerchantId()), Goods::getMerchantId, param.getMerchantId())
                 .eq(Objects.nonNull(param.getCategoryId()), Goods::getCategoryId, param.getCategoryId())
                 .eq(Objects.nonNull(param.getStatus()), Goods::getStatus, param.getStatus())
-                .like(StringUtils.nonEmpty(param.getName()), Goods::getName, param.getName())
-                .orderByDesc(Goods::getCreateTime).page(PagingUtils.convert(param.getPaging()));
-        Pagination<GoodsDTO> pagination = PagingUtils.convert(page, GoodsCopier.INSTANCE::copying);
+                .like(StringUtils.notEmpty(param.getName()), Goods::getName, param.getName())
+                .orderByDesc(Goods::getCreateTime).page(DatabaseContextHolder.page(param.getPaging()));
+        Pagination<GoodsDTO> pagination = DatabaseContextHolder.pagination(page, GoodsCopier.INSTANCE::copying);
         pagination.getRecords().forEach(item ->{
             Category category = this.categoryService.getById(item.getCategoryId());
             if (category != null){

+ 13 - 12
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/MerchantAuthServiceImpl.java

@@ -1,5 +1,7 @@
 package com.chelvc.cloud.vehicle.server.service.impl;
 
+import java.util.Date;
+
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.chelvc.cloud.vehicle.api.dto.MerchantAuthDTO;
@@ -10,17 +12,15 @@ import com.chelvc.cloud.vehicle.server.dao.MerchantAuthMapper;
 import com.chelvc.cloud.vehicle.server.entity.MerchantAuth;
 import com.chelvc.cloud.vehicle.server.service.MerchantAuthService;
 import com.chelvc.framework.base.context.SessionContextHolder;
-import com.chelvc.framework.base.util.ResourceUtils;
 import com.chelvc.framework.common.model.Pagination;
+import com.chelvc.framework.common.util.AssertUtils;
 import com.chelvc.framework.common.util.StringUtils;
-import com.chelvc.framework.database.util.PagingUtils;
+import com.chelvc.framework.database.context.DatabaseContextHolder;
 import lombok.NonNull;
 import lombok.RequiredArgsConstructor;
 import org.apache.dubbo.config.annotation.DubboService;
 import org.springframework.beans.factory.annotation.Autowired;
 
-import java.util.Date;
-
 /**
  * 商家认证业务操作实现
  *
@@ -32,7 +32,7 @@ import java.util.Date;
 public class MerchantAuthServiceImpl extends ServiceImpl<MerchantAuthMapper, MerchantAuth> implements MerchantAuthService,
         com.chelvc.cloud.vehicle.api.service.MerchantAuthService {
     @Override
-    public Long addMerchantAuth(@NonNull MerchantAuthModifyParam param){
+    public Long addMerchantAuth(@NonNull MerchantAuthModifyParam param) {
         MerchantAuth merchantAuth = MerchantAuthCopier.INSTANCE.copying(param);
         Long userId = SessionContextHolder.getId();
         merchantAuth.setApplicationTime(new Date());
@@ -43,7 +43,7 @@ public class MerchantAuthServiceImpl extends ServiceImpl<MerchantAuthMapper, Mer
 
     @Override
     public void updateMerchantAuth(@NonNull Long id, @NonNull MerchantAuthModifyParam param) {
-        MerchantAuth merchantAuth = ResourceUtils.required(this.getById(id), "商家认证不存在");
+        MerchantAuth merchantAuth = AssertUtils.available(this.getById(id), "商家认证不存在");
         MerchantAuthCopier.INSTANCE.copying(param, merchantAuth);
         this.updateById(merchantAuth);
     }
@@ -51,12 +51,13 @@ public class MerchantAuthServiceImpl extends ServiceImpl<MerchantAuthMapper, Mer
     @Override
     public Pagination<MerchantAuthDTO> getMerchantAuthPaging(@NonNull MerchantAuthPagingParam param) {
         Page<MerchantAuth> page = this.lambdaQuery()
-                .like(StringUtils.nonEmpty(param.getStoreName()), MerchantAuth::getStoreName, param.getStoreName())
-                .orderByAsc(MerchantAuth::getReviewTime).page(PagingUtils.convert(param.getPaging()));
-        return PagingUtils.convert(page, MerchantAuthCopier.INSTANCE::copying);
+                .like(StringUtils.notEmpty(param.getStoreName()), MerchantAuth::getStoreName, param.getStoreName())
+                .orderByAsc(MerchantAuth::getReviewTime).page(DatabaseContextHolder.page(param.getPaging()));
+        return DatabaseContextHolder.pagination(page, MerchantAuthCopier.INSTANCE::copying);
     }
+
     @Override
-   public MerchantAuthDTO queryById(){
+    public MerchantAuthDTO queryById() {
         Long userId = SessionContextHolder.getId();
         MerchantAuth merchantAuth = this.lambdaQuery()
                 .eq(MerchantAuth::getApplicant, userId).one();
@@ -64,9 +65,9 @@ public class MerchantAuthServiceImpl extends ServiceImpl<MerchantAuthMapper, Mer
     }
 
     @Override
-    public void certificationAudit(Long id,String state){
+    public void certificationAudit(Long id, String state) {
         Long userId = SessionContextHolder.getId();
-        MerchantAuth merchantAuth = ResourceUtils.required(this.getById(id), "商家认证不存在");
+        MerchantAuth merchantAuth = AssertUtils.available(this.getById(id), "商家认证不存在");
         merchantAuth.setReviewStatus(state);
         merchantAuth.setReviewTime(new Date());
         merchantAuth.setReviewer(userId.toString());

+ 70 - 82
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/MerchantServiceImpl.java

@@ -1,5 +1,13 @@
 package com.chelvc.cloud.vehicle.server.service.impl;
 
+import java.math.BigDecimal;
+import java.time.LocalTime;
+import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
+
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -8,8 +16,19 @@ import com.chelvc.cloud.uc.api.dto.UserDTO;
 import com.chelvc.cloud.uc.api.service.EmployeeService;
 import com.chelvc.cloud.uc.api.service.UserService;
 import com.chelvc.cloud.vehicle.api.constant.MerchantStatus;
-import com.chelvc.cloud.vehicle.api.dto.*;
-import com.chelvc.cloud.vehicle.api.param.*;
+import com.chelvc.cloud.vehicle.api.dto.CategoryDTO;
+import com.chelvc.cloud.vehicle.api.dto.GoodsDTO;
+import com.chelvc.cloud.vehicle.api.dto.MerchantDTO;
+import com.chelvc.cloud.vehicle.api.dto.MerchantDetailDTO;
+import com.chelvc.cloud.vehicle.api.dto.MerchantRankCountDTO;
+import com.chelvc.cloud.vehicle.api.dto.MerchantRankDTO;
+import com.chelvc.cloud.vehicle.api.param.GoodsQueryParam;
+import com.chelvc.cloud.vehicle.api.param.LocationQueryParam;
+import com.chelvc.cloud.vehicle.api.param.MerchantModifyParam;
+import com.chelvc.cloud.vehicle.api.param.MerchantPagingParam;
+import com.chelvc.cloud.vehicle.api.param.MerchantQueryParam;
+import com.chelvc.cloud.vehicle.api.param.MerchantRankParam;
+import com.chelvc.cloud.vehicle.api.param.OmsCartItemPagingParam;
 import com.chelvc.cloud.vehicle.api.util.DateTimeUtils;
 import com.chelvc.cloud.vehicle.server.copier.MerchantCopier;
 import com.chelvc.cloud.vehicle.server.dao.MerchantMapper;
@@ -21,30 +40,20 @@ import com.chelvc.cloud.vehicle.server.service.GoodsService;
 import com.chelvc.cloud.vehicle.server.service.MerchantService;
 import com.chelvc.cloud.vehicle.server.service.OmsCartItemService;
 import com.chelvc.framework.base.context.SessionContextHolder;
-import com.chelvc.framework.base.util.ResourceUtils;
 import com.chelvc.framework.common.model.Pagination;
+import com.chelvc.framework.common.util.AssertUtils;
 import com.chelvc.framework.common.util.StringUtils;
-import com.chelvc.framework.database.util.PagingUtils;
+import com.chelvc.framework.database.context.DatabaseContextHolder;
 import com.chelvc.framework.location.Address;
 import com.chelvc.framework.location.LocationHandler;
-import com.chelvc.framework.redis.RedisConstant;
 import lombok.NonNull;
 import lombok.RequiredArgsConstructor;
 import org.apache.dubbo.config.annotation.DubboReference;
 import org.apache.dubbo.config.annotation.DubboService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Lazy;
-import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.scheduling.annotation.Scheduled;
 
-import java.math.BigDecimal;
-import java.time.LocalTime;
-import java.time.format.DateTimeFormatter;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Objects;
-import java.util.stream.Collectors;
-
 /**
  * 商家业务操作实现
  *
@@ -59,8 +68,6 @@ public class MerchantServiceImpl extends ServiceImpl<MerchantMapper, Merchant> i
 
     private final CategoryService categoryService;
 
-    private final RedisTemplate<String, Object> redisTemplate;
-
     private final LocationHandler locationHandler;
 
     private final RegionMapper regionMapper;
@@ -92,7 +99,7 @@ public class MerchantServiceImpl extends ServiceImpl<MerchantMapper, Merchant> i
     public MerchantDetailDTO getMerchantDetail(@NonNull Long id) {
         // 获取商家信息
         MerchantDTO merchant = MerchantCopier.INSTANCE.copying(
-                ResourceUtils.required(this.getById(id), "商家不存在")
+                AssertUtils.available(this.getById(id), "商家不存在")
         );
 
         // 获取商家全部商品列表
@@ -113,12 +120,12 @@ public class MerchantServiceImpl extends ServiceImpl<MerchantMapper, Merchant> i
     public MerchantDetailDTO getMerchantDetail(Long id, LocationQueryParam param) {
         // 获取商家信息
         MerchantDTO merchant = MerchantCopier.INSTANCE.copying(
-                ResourceUtils.required(this.baseMapper.getMerchantById(id, param), "商家不存在")
+                AssertUtils.available(this.baseMapper.getMerchantById(id, param), "商家不存在")
         );
         Long userId = SessionContextHolder.getSession().getId();
         //查询商家是否被收藏
-        Integer count = this.baseMapper.merchantFavorite(id,userId);
-        if (count > 0){
+        Integer count = this.baseMapper.merchantFavorite(id, userId);
+        if (count > 0) {
             merchant.setFavorites(true);
         }
 
@@ -132,7 +139,7 @@ public class MerchantServiceImpl extends ServiceImpl<MerchantMapper, Merchant> i
         List<Long> idSet = goods.stream()
                 .map(GoodsDTO::getCategoryId) // 将每个Person对象映射到其id
                 .collect(Collectors.toList());
-        if (idSet.isEmpty()){
+        if (idSet.isEmpty()) {
             return MerchantDetailDTO.builder().merchant(merchant).goods(goods).build();
         }
         List<CategoryDTO> categories = this.categoryService.listCategories(idSet);
@@ -145,7 +152,7 @@ public class MerchantServiceImpl extends ServiceImpl<MerchantMapper, Merchant> i
         Integer count = this.lambdaQuery()
                 .eq(Merchant::getName, param.getName())
                 .eq(Merchant::getStatus, MerchantStatus.ONLINE).count();
-        ResourceUtils.available(count < 1 , "商家名称已存在");
+        AssertUtils.available(count < 1, "商家名称已存在");
         Merchant merchant = MerchantCopier.INSTANCE.copying(param);
         merchant.setUserId(0L);
         merchant.setScore(0D);
@@ -157,42 +164,30 @@ public class MerchantServiceImpl extends ServiceImpl<MerchantMapper, Merchant> i
 
     @Override
     public void updateMerchant(@NonNull Long id, @NonNull MerchantModifyParam param) {
-        Merchant merchant = ResourceUtils.required(this.getById(id), "商家不存在");
+        Merchant merchant = AssertUtils.available(this.getById(id), "商家不存在");
         MerchantCopier.INSTANCE.copying(param, merchant);
         this.updateById(merchant);
     }
 
     @Override
     public void deleteMerchant(@NonNull Long id) {
-         ResourceUtils.required(this.getById(id), "商家不存在");
+        AssertUtils.available(this.getById(id), "商家不存在");
         this.baseMapper.deleteById(id);
     }
 
     @Override
     public Pagination<MerchantDTO> getMerchantPaging(@NonNull MerchantPagingParam param) {
-        Long userId = SessionContextHolder.getSession().getId();
-        if (employeeService.isAdmin(userId)){
-            Page<Merchant> page = this.lambdaQuery()
-                    .like(StringUtils.nonEmpty(param.getName()), Merchant::getName, param.getName())
-                    .eq(Objects.nonNull(param.getRecommend()), Merchant::getRecommend, param.getRecommend())
-                    .eq(Objects.nonNull(param.getStatus()), Merchant::getStatus, param.getStatus())
-                    .orderByDesc(Merchant::getCreateTime).page(PagingUtils.convert(param.getPaging()));
-            return PagingUtils.convert(page, MerchantCopier.INSTANCE::copying);
-        }else{
-            Page<Merchant> page = this.lambdaQuery()
-                    .like(StringUtils.nonEmpty(param.getName()), Merchant::getName, param.getName())
-                    .eq(Objects.nonNull(param.getRecommend()), Merchant::getRecommend, param.getRecommend())
-                    .eq(Objects.nonNull(param.getStatus()), Merchant::getStatus, param.getStatus())
-                    .eq(Merchant::getUserId,userId)
-                    .orderByDesc(Merchant::getCreateTime).page(PagingUtils.convert(param.getPaging()));
-            return PagingUtils.convert(page, MerchantCopier.INSTANCE::copying);
-        }
-
+        Page<Merchant> page = this.lambdaQuery()
+                .like(StringUtils.notEmpty(param.getName()), Merchant::getName, param.getName())
+                .eq(Objects.nonNull(param.getRecommend()), Merchant::getRecommend, param.getRecommend())
+                .eq(Objects.nonNull(param.getStatus()), Merchant::getStatus, param.getStatus())
+                .orderByDesc(Merchant::getCreateTime).page(DatabaseContextHolder.page(param.getPaging()));
+        return DatabaseContextHolder.pagination(page, MerchantCopier.INSTANCE::copying);
     }
 
     @Override
     public MerchantDTO getMerchant(@NonNull Long id) {
-        Merchant merchant = ResourceUtils.required(this.getById(id), "商家不存在");
+        Merchant merchant = AssertUtils.available(this.getById(id), "商家不存在");
         return this.convert(merchant);
     }
 
@@ -208,15 +203,16 @@ public class MerchantServiceImpl extends ServiceImpl<MerchantMapper, Merchant> i
 
 
     @Override
-    public List<Long> getMerchantIdsByUserId(Long userId){
-       List<Merchant> merchants = this.lambdaQuery()
+    public List<Long> getMerchantIdsByUserId(Long userId) {
+        List<Merchant> merchants = this.lambdaQuery()
                 .eq(Merchant::getUserId, userId)
                 .eq(Merchant::getStatus, MerchantStatus.ONLINE)
-               .list();
-       return merchants.stream().map(Merchant::getId).collect(Collectors.toList());
+                .list();
+        return merchants.stream().map(Merchant::getId).collect(Collectors.toList());
     }
+
     @Override
-    public List<MerchantDTO> getMerchantIdsByUserId(){
+    public List<MerchantDTO> getMerchantIdsByUserId() {
         Long userId = SessionContextHolder.getSession().getId();
         List<Merchant> merchants = this.lambdaQuery()
                 .eq(Merchant::getUserId, userId)
@@ -231,34 +227,25 @@ public class MerchantServiceImpl extends ServiceImpl<MerchantMapper, Merchant> i
         Integer regionId = param.getRegionId();
         Double longitude = (double) 0;
         Double latitude = (double) 0;
-        if(regionId == null){
-            if(Boolean.TRUE.equals(redisTemplate.hasKey(RedisConstant.USER_ADDRESS + userId))){
-                Address address = (Address)redisTemplate.opsForValue().get(RedisConstant.USER_ADDRESS + userId);
-                if(address != null){
-                    regionId = address.getDistrict().getId();
-                    longitude = address.getLongitude();
-                    latitude = address.getLatitude();
-                }
-            }
-        }
-        if(regionId == null){
+        if (regionId == null) {
             UserDTO user = userService.getUser(userId);
-            if(user == null){
+            if (user == null) {
                 return result;
             }
-            Address address = locationHandler.ip2address(user.getHost());
-            if(address == null){
-               return result;
+            Address address = locationHandler.ip2address(SessionContextHolder.getHost());
+            if (address == null) {
+                return result;
             }
             regionId = address.getDistrict().getId();
             longitude = address.getLongitude();
             latitude = address.getLatitude();
         }
         Region region = regionMapper.selectById(regionId);
-        if(region == null){
+        if (region == null) {
             return result;
         }
-        result = baseMapper.listRankMerchants(DateTimeUtils.getMonthStartLocalTime(), regionId, longitude, latitude, region.getLevel());
+        result = baseMapper.listRankMerchants(DateTimeUtils.getMonthStartLocalTime(), regionId, longitude, latitude,
+                region.getLevel());
         return result;
     }
 
@@ -275,7 +262,7 @@ public class MerchantServiceImpl extends ServiceImpl<MerchantMapper, Merchant> i
     }
 
     @Override
-    public MerchantDTO getMerchantById(Long merchantId){
+    public MerchantDTO getMerchantById(Long merchantId) {
         return MerchantCopier.INSTANCE.copying(this.getById(merchantId));
     }
 
@@ -289,39 +276,40 @@ public class MerchantServiceImpl extends ServiceImpl<MerchantMapper, Merchant> i
 
     /**
      * 购物车列表
+     *
      * @param param
      * @return
      */
     @Override
-    public Pagination<MerchantDTO> getUserMineCartPaging(OmsCartItemPagingParam param){
+    public Pagination<MerchantDTO> getUserMineCartPaging(OmsCartItemPagingParam param) {
         Long userId = SessionContextHolder.getSession().getId();
         List<Long> merchants = this.baseMapper.getMerchantIds(userId);
-        if (merchants == null && merchants.size() > 0){
+        if (merchants == null && merchants.size() > 0) {
             return null;
         }
         Page<Merchant> page = this.lambdaQuery()
-                .like(StringUtils.nonEmpty(param.getMerchantName()), Merchant::getName, param.getMerchantName())
+                .like(StringUtils.notEmpty(param.getMerchantName()), Merchant::getName, param.getMerchantName())
                 .eq(Merchant::getStatus, MerchantStatus.ONLINE)
-                .in(Merchant::getId,merchants)
-                .orderByDesc(Merchant::getCreateTime).page(PagingUtils.convert(param.getPaging()));
-        Pagination<MerchantDTO> pagination = PagingUtils.convert(page, MerchantCopier.INSTANCE::copying);
-        pagination.getRecords().forEach(item ->{
-           item.setCartItems(this.omsCartItemService.merchantListCartItem(item.getId()));
+                .in(Merchant::getId, merchants)
+                .orderByDesc(Merchant::getCreateTime).page(DatabaseContextHolder.page(param.getPaging()));
+        Pagination<MerchantDTO> pagination = DatabaseContextHolder.pagination(page, MerchantCopier.INSTANCE::copying);
+        pagination.getRecords().forEach(item -> {
+            item.setCartItems(this.omsCartItemService.merchantListCartItem(item.getId()));
         });
         return pagination;
     }
 
     @Override
-    public void updateMerchantBusinessStatus(Long merchantId,String businessStatus){
-        Merchant merchant = ResourceUtils.required(this.getById(merchantId), "商家不存在");
-        this.baseMapper.updateMerchantBusinessStatus(merchantId,businessStatus,"1");
+    public void updateMerchantBusinessStatus(Long merchantId, String businessStatus) {
+        Merchant merchant = AssertUtils.nonnull(this.getById(merchantId), "商家不存在");
+        this.baseMapper.updateMerchantBusinessStatus(merchantId, businessStatus, "1");
     }
 
     /**
      * 每天定时更新商家得营业状态
      */
     @Scheduled(cron = "5 * * * * ?")
-    public void batchMerchantBusinessStatus(){
+    public void batchMerchantBusinessStatus() {
         List<Merchant> merchantList = this.lambdaQuery().list();
         merchantList.forEach(item -> {
             String opening = "10:00:00,18:00:00";
@@ -329,10 +317,10 @@ public class MerchantServiceImpl extends ServiceImpl<MerchantMapper, Merchant> i
             DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH:mm:ss");
             LocalTime time1 = LocalTime.parse(openStr[0], formatter);
             LocalTime time2 = LocalTime.parse(openStr[1], formatter);
-            if (time1.isAfter(LocalTime.now()) && time2.isAfter(LocalTime.now())){
-                this.baseMapper.updateMerchantBusinessStatus(item.getId(),"0","0");
-            }else{
-                this.baseMapper.updateMerchantBusinessStatus(item.getId(),"1","0");
+            if (time1.isAfter(LocalTime.now()) && time2.isAfter(LocalTime.now())) {
+                this.baseMapper.updateMerchantBusinessStatus(item.getId(), "0", "0");
+            } else {
+                this.baseMapper.updateMerchantBusinessStatus(item.getId(), "1", "0");
             }
         });
 

+ 6 - 6
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/NoticeServiceImpl.java

@@ -10,10 +10,10 @@ import com.chelvc.cloud.vehicle.server.dao.NoticeMapper;
 import com.chelvc.cloud.vehicle.server.entity.Notice;
 import com.chelvc.cloud.vehicle.server.service.NoticeService;
 import com.chelvc.framework.base.context.SessionContextHolder;
-import com.chelvc.framework.base.util.ResourceUtils;
 import com.chelvc.framework.common.model.Pagination;
+import com.chelvc.framework.common.util.AssertUtils;
 import com.chelvc.framework.common.util.StringUtils;
-import com.chelvc.framework.database.util.PagingUtils;
+import com.chelvc.framework.database.context.DatabaseContextHolder;
 import lombok.NonNull;
 import lombok.RequiredArgsConstructor;
 import org.apache.dubbo.config.annotation.DubboService;
@@ -42,7 +42,7 @@ public class NoticeServiceImpl extends ServiceImpl<NoticeMapper, Notice> impleme
 
     @Override
     public void updateNotice(@NonNull Long id, @NonNull NoticeModifyParam param) {
-        Notice notice = ResourceUtils.required(this.getById(id), "通知配置不存在");
+        Notice notice = AssertUtils.available(this.getById(id), "通知配置不存在");
         NoticeCopier.INSTANCE.copying(param, notice);
         this.updateById(notice);
     }
@@ -50,8 +50,8 @@ public class NoticeServiceImpl extends ServiceImpl<NoticeMapper, Notice> impleme
     @Override
     public Pagination<NoticeDTO> getNoticePaging(@NonNull NoticePagingParam param) {
         Page<Notice> page = this.lambdaQuery()
-                .like(StringUtils.nonEmpty(param.getTitle()), Notice::getTitle, param.getTitle())
-                .orderByAsc(Notice::getStatus).page(PagingUtils.convert(param.getPaging()));
-        return PagingUtils.convert(page, NoticeCopier.INSTANCE::copying);
+                .like(StringUtils.notEmpty(param.getTitle()), Notice::getTitle, param.getTitle())
+                .orderByAsc(Notice::getStatus).page(DatabaseContextHolder.page(param.getPaging()));
+        return DatabaseContextHolder.pagination(page, NoticeCopier.INSTANCE::copying);
     }
 }

+ 5 - 5
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/OmsOrderOperateHistoryServiceImpl.java

@@ -10,8 +10,8 @@ import com.chelvc.cloud.vehicle.server.entity.OmsOrderOperateHistory;
 import com.chelvc.cloud.vehicle.server.service.IOmsOrderOperateHistoryService;
 import com.chelvc.framework.common.model.Pagination;
 import com.chelvc.framework.common.model.Paging;
-import com.chelvc.framework.common.util.BeanCopyUtil;
-import com.chelvc.framework.database.util.PagingUtils;
+import com.chelvc.framework.common.util.ObjectUtils;
+import com.chelvc.framework.database.context.DatabaseContextHolder;
 import org.springframework.stereotype.Service;
 
 import java.util.Date;
@@ -110,10 +110,10 @@ public class OmsOrderOperateHistoryServiceImpl extends ServiceImpl<OmsOrderOpera
     public Pagination<OmsOrderOperateHistoryDTO> selectOmsOrderOperateHistoryListByUserId(Long userId, Paging paging) {
         Page<OmsOrderOperateHistory> page = this.lambdaQuery()
                 .eq(OmsOrderOperateHistory::getUserId, userId)
-                .orderByAsc(OmsOrderOperateHistory::getCreateTime).page(PagingUtils.convert(paging));
+                .orderByAsc(OmsOrderOperateHistory::getCreateTime).page(DatabaseContextHolder.page(paging));
         List<OmsOrderOperateHistory> OmsOrderOperateHistories = page.getRecords();
-        List<OmsOrderOperateHistoryDTO> copy = BeanCopyUtil.copy(OmsOrderOperateHistories, OmsOrderOperateHistoryDTO.class);
-        return PagingUtils.convert(page, copy);
+        List<OmsOrderOperateHistoryDTO> copy = ObjectUtils.copying(OmsOrderOperateHistories, OmsOrderOperateHistoryDTO.class);
+        return DatabaseContextHolder.pagination(page, copy);
     }
 
     /**

+ 0 - 9
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/OmsOrderPayHistoryServiceImpl.java

@@ -7,26 +7,17 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.chelvc.cloud.vehicle.api.dto.DynamicContentDTO;
 import com.chelvc.cloud.vehicle.api.dto.OmsOrderDTO;
-import com.chelvc.cloud.vehicle.api.dto.OmsOrderPayHistoryDTO;
 import com.chelvc.cloud.vehicle.server.dao.OmsOrderPayHistoryMapper;
-import com.chelvc.cloud.vehicle.server.entity.DynamicContent;
-import com.chelvc.cloud.vehicle.server.entity.OmsOrder;
-import com.chelvc.cloud.vehicle.server.entity.OmsOrderOperateHistory;
 import com.chelvc.cloud.vehicle.server.entity.OmsOrderPayHistory;
 import com.chelvc.cloud.vehicle.server.service.IOmsOrderService;
 import com.chelvc.cloud.vehicle.server.service.OmsOrderPayHistoryService;
 import com.chelvc.framework.common.model.Pagination;
 import com.chelvc.framework.common.model.Paging;
-import com.chelvc.framework.database.util.PagingUtils;
 import lombok.RequiredArgsConstructor;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
-import java.util.List;
-import java.util.stream.Collectors;
-
 @Service
 @RequiredArgsConstructor(onConstructor = @__(@Autowired))
 public class OmsOrderPayHistoryServiceImpl extends ServiceImpl<OmsOrderPayHistoryMapper, OmsOrderPayHistory> implements OmsOrderPayHistoryService {

+ 6 - 6
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/OmsOrderReturnApplyServiceImpl.java

@@ -11,8 +11,8 @@ import com.chelvc.cloud.vehicle.server.entity.OmsOrderReturnApply;
 import com.chelvc.cloud.vehicle.server.service.IOmsOrderReturnApplyService;
 import com.chelvc.framework.common.model.Pagination;
 import com.chelvc.framework.common.model.Paging;
-import com.chelvc.framework.common.util.BeanCopyUtil;
-import com.chelvc.framework.database.util.PagingUtils;
+import com.chelvc.framework.common.util.ObjectUtils;
+import com.chelvc.framework.database.context.DatabaseContextHolder;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -109,10 +109,10 @@ public class OmsOrderReturnApplyServiceImpl extends ServiceImpl<OmsOrderReturnAp
     public Pagination<OmsOrderReturnApplyIdsDTO> listOrderReturnApply(Long merchantId, Paging paging) {
         Page<OmsOrderReturnApply> page = this.lambdaQuery()
                 .eq(OmsOrderReturnApply::getMerchantId, merchantId)
-                .orderByAsc(OmsOrderReturnApply::getCreateTime).page(PagingUtils.convert(paging));
+                .orderByAsc(OmsOrderReturnApply::getCreateTime).page(DatabaseContextHolder.page(paging));
         List<OmsOrderReturnApply> omsOrderReturnApplies = page.getRecords();
-        List<OmsOrderReturnApplyIdsDTO> copy = BeanCopyUtil.copy(omsOrderReturnApplies, OmsOrderReturnApplyIdsDTO.class);
-        return PagingUtils.convert(page, copy);
+        List<OmsOrderReturnApplyIdsDTO> copy = ObjectUtils.copying(omsOrderReturnApplies, OmsOrderReturnApplyIdsDTO.class);
+        return DatabaseContextHolder.pagination(page, copy);
     }
 
     @Override
@@ -129,6 +129,6 @@ public class OmsOrderReturnApplyServiceImpl extends ServiceImpl<OmsOrderReturnAp
         if (omsOrderReturnApply == null){
             return null;
         }
-        return BeanCopyUtil.copy(omsOrderReturnApply, OmsOrderReturnApplyDTO.class);
+        return ObjectUtils.copying(omsOrderReturnApply, OmsOrderReturnApplyDTO.class);
     }
 }

+ 145 - 109
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/OmsOrderServiceImpl.java

@@ -1,23 +1,53 @@
 package com.chelvc.cloud.vehicle.server.service.impl;
 
+import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.text.SimpleDateFormat;
+import java.time.LocalDateTime;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.chelvc.cloud.uc.api.model.Scope;
 import com.chelvc.cloud.uc.api.service.EmployeeService;
-import com.chelvc.cloud.vehicle.api.dto.*;
+import com.chelvc.cloud.vehicle.api.dto.CalcAmountDTO;
+import com.chelvc.cloud.vehicle.api.dto.CartPromotionItemDTO;
+import com.chelvc.cloud.vehicle.api.dto.ConfirmOrderResultDTO;
+import com.chelvc.cloud.vehicle.api.dto.CouponDTO;
+import com.chelvc.cloud.vehicle.api.dto.OmsCartItemDTO;
+import com.chelvc.cloud.vehicle.api.dto.OmsOrderDTO;
+import com.chelvc.cloud.vehicle.api.dto.OmsOrderDetailDTO;
+import com.chelvc.cloud.vehicle.api.dto.OmsOrderExampleDTO;
+import com.chelvc.cloud.vehicle.api.dto.OmsOrderItemDTO;
+import com.chelvc.cloud.vehicle.api.dto.UserCouponDTO;
 import com.chelvc.cloud.vehicle.api.param.OmsOrderModifyParam;
 import com.chelvc.cloud.vehicle.api.param.OrderPagingParam;
 import com.chelvc.cloud.vehicle.api.util.DateTimeUtils;
 import com.chelvc.cloud.vehicle.server.copier.MerchantCopier;
 import com.chelvc.cloud.vehicle.server.copier.OrderCopier;
 import com.chelvc.cloud.vehicle.server.dao.OmsOrderMapper;
-import com.chelvc.cloud.vehicle.server.dao.OmsOrderSettingMapper;
-import com.chelvc.cloud.vehicle.server.entity.*;
-import com.chelvc.cloud.vehicle.server.service.*;
+import com.chelvc.cloud.vehicle.server.entity.Merchant;
+import com.chelvc.cloud.vehicle.server.entity.OmsOrder;
+import com.chelvc.cloud.vehicle.server.entity.OmsOrderItem;
+import com.chelvc.cloud.vehicle.server.entity.OmsOrderSetting;
+import com.chelvc.cloud.vehicle.server.entity.UserCoupon;
+import com.chelvc.cloud.vehicle.server.service.IOmsOrderItemService;
+import com.chelvc.cloud.vehicle.server.service.IOmsOrderService;
+import com.chelvc.cloud.vehicle.server.service.MerchantService;
+import com.chelvc.cloud.vehicle.server.service.OmsCartItemService;
+import com.chelvc.cloud.vehicle.server.service.OmsOrderSettingService;
+import com.chelvc.cloud.vehicle.server.service.OrderHandleService;
+import com.chelvc.cloud.vehicle.server.service.UserCouponService;
 import com.chelvc.framework.base.context.SessionContextHolder;
-import com.chelvc.framework.base.exception.ResourceUnavailableException;
 import com.chelvc.framework.common.model.Pagination;
+import com.chelvc.framework.common.util.AssertUtils;
+import com.chelvc.framework.common.util.ObjectUtils;
 import com.chelvc.framework.common.util.StringUtils;
-import com.chelvc.framework.database.util.PagingUtils;
+import com.chelvc.framework.database.context.DatabaseContextHolder;
 import lombok.RequiredArgsConstructor;
 import org.apache.dubbo.config.annotation.DubboService;
 import org.apache.http.util.Asserts;
@@ -25,15 +55,9 @@ import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.util.CollectionUtils;
 
-import java.math.BigDecimal;
-import java.math.RoundingMode;
-import java.text.SimpleDateFormat;
-import java.time.LocalDateTime;
-import java.util.*;
-
 /**
  * 订单Service业务层处理
- * 
+ *
  * @author liude
  * @date 2023-11-08
  */
@@ -47,14 +71,10 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
 
     private final OmsOrderSettingService orderSettingService;
 
-    private OmsOrderSettingMapper omsOrderSettingMapper;
-
     private final IOmsOrderItemService omsOrderItemService;
 
     private final UserCouponService userCouponService;
 
-    private final GoodsService goodsService;
-
     private final MerchantService merchantService;
 
     private final EmployeeService employeeService;
@@ -77,14 +97,16 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
 //        //获取用户积分
 //        result.setMemberIntegration(currentMember.getIntegration());
 //        //获取积分使用规则
-//        UmsIntegrationConsumeSetting integrationConsumeSetting = integrationConsumeSettingMapper.selectByPrimaryKey(1L);
+//        UmsIntegrationConsumeSetting integrationConsumeSetting = integrationConsumeSettingMapper.selectByPrimaryKey
+//        (1L);
 //        result.setIntegrationConsumeSetting(integrationConsumeSetting);
 //        //计算总金额、活动优惠、应付金额
         CalcAmountDTO calcAmount = calcCartAmount(cartItemList);
         result.setCalcAmount(calcAmount);
-        List<UserCouponDTO> userCouponList = this.userCouponService.getUserCouponList(userId,calcAmount.getTotalAmount());
+        List<UserCouponDTO> userCouponList = this.userCouponService.getUserCouponList(userId,
+                calcAmount.getTotalAmount());
         result.setCouponHistoryDetailList(userCouponList);
-        if (!StringUtils.isEmpty(orderParam.getMerchantId())){
+        if (!StringUtils.isEmpty(orderParam.getMerchantId())) {
             Merchant merchant = this.merchantService.getById(orderParam.getMerchantId());
             result.setMerchantDTO(MerchantCopier.INSTANCE.copying(merchant));
         }
@@ -132,13 +154,13 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
             //使用优惠券
             UserCouponDTO userCouponDTO = getUseCoupon(cartPromotionItemList, orderParam.getCouponId());
             if (userCouponDTO == null) {
-                Asserts.check(true,"该优惠券不可用");
+                Asserts.check(true, "该优惠券不可用");
             }
             //对下单商品的优惠券进行处理
             handleCouponAmount(orderItemList, userCouponDTO);
         }
         //判断是否使用积分
-        if (orderParam.getUseIntegration() == null||orderParam.getUseIntegration().equals(0)) {
+        if (orderParam.getUseIntegration() == null || orderParam.getUseIntegration().equals(0)) {
             //不使用积分
             for (OmsOrderItem orderItem : orderItemList) {
                 orderItem.setIntegrationAmount(new BigDecimal(0));
@@ -146,13 +168,15 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
         } else {
             //使用积分
             BigDecimal totalAmount = calcTotalAmount(orderItemList);
-//            BigDecimal integrationAmount = getUseIntegrationAmount(orderParam.getUseIntegration(), totalAmount, currentMember, orderParam.getCouponId() != null);
+//            BigDecimal integrationAmount = getUseIntegrationAmount(orderParam.getUseIntegration(), totalAmount,
+//            currentMember, orderParam.getCouponId() != null);
 //            if (integrationAmount.compareTo(new BigDecimal(0)) == 0) {
 //                Asserts.check(true,"积分不可用");
 //            } else {
-                //可用情况下分摊到可用商品中
+            //可用情况下分摊到可用商品中
 //                for (OmsOrderItemDTO orderItem : orderItemList) {
-//                    BigDecimal perAmount = orderItem.getProductPrice().divide(totalAmount, 3, RoundingMode.HALF_EVEN).multiply(integrationAmount);
+//                    BigDecimal perAmount = orderItem.getProductPrice().divide(totalAmount, 3, RoundingMode
+//                    .HALF_EVEN).multiply(integrationAmount);
 //                    orderItem.setIntegrationAmount(perAmount);
 ////                }
 //            }
@@ -215,7 +239,7 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
         order.setMerchantId(orderParam.getMerchantId());
         //设置自动收货天数
         List<OmsOrderSetting> orderSettings = orderSettingService.listOrderSetting();
-        if(!CollectionUtils.isEmpty(orderSettings)){
+        if (!CollectionUtils.isEmpty(orderSettings)) {
             order.setAutoConfirmDay(orderSettings.get(0).getConfirmOvertime());
         }
         //插入order表和order_item表
@@ -232,7 +256,8 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
         //如使用积分需要扣除积分
 //        if (orderParam.getUseIntegration() != null) {
 //            order.setUseIntegration(orderParam.getUseIntegration());
-//            memberService.updateIntegration(currentMember.getId(), currentMember.getIntegration() - orderParam.getUseIntegration());
+//            memberService.updateIntegration(currentMember.getId(), currentMember.getIntegration() - orderParam
+//            .getUseIntegration());
 //        }
         //删除购物车中的下单商品
         deleteCartItemList(cartPromotionItemList, userId);
@@ -260,14 +285,15 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
 
     @Override
     public Integer cancelTimeOutOrder() {
-        Integer count=0;
+        Integer count = 0;
         //查询订单设置
         List<OmsOrderSetting> orderSettings = orderSettingService.listOrderSetting();
-        if(!CollectionUtils.isEmpty(orderSettings)){
-            Asserts.check(true,"未设置订单超时设置!");
+        if (!CollectionUtils.isEmpty(orderSettings)) {
+            Asserts.check(true, "未设置订单超时设置!");
         }
         //查询超时、未支付的订单及订单详情
-        List<OmsOrderDetailDTO> timeOutOrders = this.baseMapper.getTimeOutOrders(orderSettings.get(0).getNormalOrderOvertime());
+        List<OmsOrderDetailDTO> timeOutOrders =
+                this.baseMapper.getTimeOutOrders(orderSettings.get(0).getNormalOrderOvertime());
         if (CollectionUtils.isEmpty(timeOutOrders)) {
             return count;
         }
@@ -285,7 +311,8 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
             //返还使用积分
 //            if (timeOutOrder.getUseIntegration() != null) {
 //                UmsMember member = memberService.getById(timeOutOrder.getMemberId());
-//                memberService.updateIntegration(timeOutOrder.getMemberId(), member.getIntegration() + timeOutOrder.getUseIntegration());
+//                memberService.updateIntegration(timeOutOrder.getMemberId(), member.getIntegration() + timeOutOrder
+//                .getUseIntegration());
 //            }
         }
         return timeOutOrders.size();
@@ -317,7 +344,8 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
             //返还使用积分
 //            if (cancelOrder.getUseIntegration() != null) {
 //                UmsMember member = memberService.getById(cancelOrder.getMemberId());
-//                memberService.updateIntegration(cancelOrder.getMemberId(), member.getIntegration() + cancelOrder.getUseIntegration());
+//                memberService.updateIntegration(cancelOrder.getMemberId(), member.getIntegration() + cancelOrder
+//                .getUseIntegration());
 //            }
         }
     }
@@ -335,56 +363,58 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
     public void confirmReceiveOrder(Long orderId) {
         Long userId = SessionContextHolder.getId();
         OmsOrder order = this.baseMapper.selectOmsOrderById(orderId);
-        if(!userId.equals(order.getUserId())){
-            Asserts.check(true,"不能确认他人订单!");
+        if (!userId.equals(order.getUserId())) {
+            Asserts.check(true, "不能确认他人订单!");
         }
-        if(order.getStatus()!=3){
-            Asserts.check(true,"该订单还未发货!");
+        if (order.getStatus() != 3) {
+            Asserts.check(true, "该订单还未发货!");
         }
         order.setStatus(4);
         order.setConfirmStatus(1);
         order.setReceiveTime(new Date());
         this.baseMapper.updateById(order);
     }
+
     @Override
-    public Pagination<OmsOrderDTO> getOrderPaging(OrderPagingParam param){
+    public Pagination<OmsOrderDTO> getOrderPaging(OrderPagingParam param) {
         Long userId = SessionContextHolder.getId();
         Page<OmsOrder> page = this.lambdaQuery()
-                .eq(OmsOrder :: getStatus,param.getStatus())
-                .orderByDesc(OmsOrder :: getCreateTime)
-                .page(PagingUtils.convert(param.getPaging()));
-        Pagination<OmsOrderDTO> pagination = PagingUtils.convert(page, OrderCopier.INSTANCE::copying);
-        pagination.getRecords().forEach(item ->{
+                .eq(OmsOrder::getStatus, param.getStatus())
+                .orderByDesc(OmsOrder::getCreateTime)
+                .page(DatabaseContextHolder.page(param.getPaging()));
+        Pagination<OmsOrderDTO> pagination = DatabaseContextHolder.pagination(page, OrderCopier.INSTANCE::copying);
+        pagination.getRecords().forEach(item -> {
             item.setGoodsInfo(this.omsOrderItemService.getOrderItemByOrderId(item.getId()));
         });
         return pagination;
     }
 
     @Override
-    public Pagination<OmsOrderDTO> getOmsOrderPaging(OrderPagingParam param){
+    public Pagination<OmsOrderDTO> getOmsOrderPaging(OrderPagingParam param) {
         Long userId = SessionContextHolder.getId();
-        if (this.employeeService.isAdmin(userId)){
+        Scope scope = StringUtils.ifEmpty(SessionContextHolder.getScope(), Scope::parse);
+        if (scope == Scope.ADMIN) {
             Page<OmsOrder> page = this.lambdaQuery()
-                    .eq(StringUtils.nonEmpty(param.getStatus()),OmsOrder :: getStatus,param.getStatus())
-                    .orderByDesc(OmsOrder :: getCreateTime)
-                    .page(PagingUtils.convert(param.getPaging()));
-            Pagination<OmsOrderDTO> pagination = PagingUtils.convert(page, OrderCopier.INSTANCE::copying);
-            pagination.getRecords().forEach(item ->{
+                    .eq(StringUtils.notEmpty(param.getStatus()), OmsOrder::getStatus, param.getStatus())
+                    .orderByDesc(OmsOrder::getCreateTime)
+                    .page(DatabaseContextHolder.page(param.getPaging()));
+            Pagination<OmsOrderDTO> pagination = DatabaseContextHolder.pagination(page, OrderCopier.INSTANCE::copying);
+            pagination.getRecords().forEach(item -> {
                 item.setGoodsInfo(this.omsOrderItemService.getOrderItemByOrderId(item.getId()));
             });
             return pagination;
-        }else{
+        } else {
             List<Long> merchants = this.merchantService.getMerchantIdsByUserId(userId);
-            if (!StringUtils.nonEmpty(merchants)){
+            if (ObjectUtils.isEmpty(merchants)) {
                 return null;
             }
             Page<OmsOrder> page = this.lambdaQuery()
-                    .eq(StringUtils.nonEmpty(param.getStatus()),OmsOrder :: getStatus,param.getStatus())
-                    .in(OmsOrder :: getMerchantId,merchants)
-                    .orderByDesc(OmsOrder :: getCreateTime)
-                    .page(PagingUtils.convert(param.getPaging()));
-            Pagination<OmsOrderDTO> pagination = PagingUtils.convert(page, OrderCopier.INSTANCE::copying);
-            pagination.getRecords().forEach(item ->{
+                    .eq(StringUtils.notEmpty(param.getStatus()), OmsOrder::getStatus, param.getStatus())
+                    .in(OmsOrder::getMerchantId, merchants)
+                    .orderByDesc(OmsOrder::getCreateTime)
+                    .page(DatabaseContextHolder.page(param.getPaging()));
+            Pagination<OmsOrderDTO> pagination = DatabaseContextHolder.pagination(page, OrderCopier.INSTANCE::copying);
+            pagination.getRecords().forEach(item -> {
                 item.setGoodsInfo(this.omsOrderItemService.getOrderItemByOrderId(item.getId()));
             });
             return pagination;
@@ -398,7 +428,7 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
         orderItem.setOrderId(orderId);
         List<OmsOrderItem> orderItemList = omsOrderItemService.selectByExample(orderItem);
         OmsOrderDetailDTO orderDetail = new OmsOrderDetailDTO();
-        BeanUtils.copyProperties(omsOrder,orderDetail);
+        BeanUtils.copyProperties(omsOrder, orderDetail);
 //        orderDetail.setOrderItemList(orderItemList);
         return orderDetail;
     }
@@ -407,14 +437,14 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
     public void deleteOrder(Long orderId) {
         Long userId = SessionContextHolder.getId();
         OmsOrder order = this.baseMapper.selectOmsOrderById(orderId);
-        if(!userId.equals(order.getUserId())){
-            Asserts.check(true,"不能删除他人订单!");
+        if (!userId.equals(order.getUserId())) {
+            Asserts.check(true, "不能删除他人订单!");
         }
-        if(order.getStatus()==4||order.getStatus()==5){
+        if (order.getStatus() == 4 || order.getStatus() == 5) {
             order.setDeleteStatus(1);
             this.baseMapper.updateById(order);
-        }else{
-            Asserts.check(true,"只能删除已完成或已关闭的订单!");
+        } else {
+            Asserts.check(true, "只能删除已完成或已关闭的订单!");
         }
     }
 
@@ -446,7 +476,7 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
         for (OmsCartItemDTO cartPromotionItem : cartPromotionItemList) {
             ids.add(cartPromotionItem.getId());
         }
-        omsCartItemService.delete(ids,userId);
+        omsCartItemService.delete(ids, userId);
     }
 
     /**
@@ -475,18 +505,18 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
      * 将优惠券信息更改为指定状态
      *
      * @param couponId  优惠券id
-     * @param userId  会员id
+     * @param userId    会员id
      * @param useStatus 0->未使用;1->已使用
      */
     private void updateCouponStatus(Long couponId, Long userId, Integer useStatus) {
         if (couponId == null) return;
         //查询第一张优惠券
-        UserCoupon example = this.userCouponService.getUserCouponInfo(couponId,userId);
-        if (null == example){
+        UserCoupon example = this.userCouponService.getUserCouponInfo(couponId, userId);
+        if (null == example) {
             return;
         }
         example.setUsed(useStatus);
-        this.userCouponService.updateUserCouponUserd(example,couponId,userId);
+        this.userCouponService.updateUserCouponUserd(example, couponId, userId);
     }
 
     private void handleRealAmount(List<OmsOrderItem> orderItemList) {
@@ -536,7 +566,8 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
         BigDecimal integrationAmount = new BigDecimal(0);
         for (OmsOrderItem orderItem : orderItemList) {
             if (orderItem.getIntegrationAmount() != null) {
-                integrationAmount = integrationAmount.add(orderItem.getIntegrationAmount().multiply(new BigDecimal(orderItem.getGoodsQuantity())));
+                integrationAmount =
+                        integrationAmount.add(orderItem.getIntegrationAmount().multiply(new BigDecimal(orderItem.getGoodsQuantity())));
             }
         }
         return integrationAmount;
@@ -549,7 +580,8 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
         BigDecimal couponAmount = new BigDecimal(0);
         for (OmsOrderItem orderItem : orderItemList) {
             if (orderItem.getCouponAmount() != null) {
-                couponAmount = couponAmount.add(orderItem.getCouponAmount().multiply(new BigDecimal(orderItem.getGoodsQuantity())));
+                couponAmount =
+                        couponAmount.add(orderItem.getCouponAmount().multiply(new BigDecimal(orderItem.getGoodsQuantity())));
             }
         }
         return couponAmount;
@@ -562,7 +594,8 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
         BigDecimal promotionAmount = new BigDecimal(0);
         for (OmsOrderItem orderItem : orderItemList) {
             if (orderItem.getPromotionAmount() != null) {
-                promotionAmount = promotionAmount.add(orderItem.getPromotionAmount().multiply(new BigDecimal(orderItem.getGoodsQuantity())));
+                promotionAmount =
+                        promotionAmount.add(orderItem.getPromotionAmount().multiply(new BigDecimal(orderItem.getGoodsQuantity())));
             }
         }
         return promotionAmount;
@@ -576,7 +609,8 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
      * @param currentMember  使用的用户
      * @param hasCoupon      是否已经使用优惠券
      */
-//    private BigDecimal getUseIntegrationAmount(Integer useIntegration, BigDecimal totalAmount, UmsMember currentMember, boolean hasCoupon) {
+//    private BigDecimal getUseIntegrationAmount(Integer useIntegration, BigDecimal totalAmount, UmsMember
+//    currentMember, boolean hasCoupon) {
 //        BigDecimal zeroAmount = new BigDecimal(0);
 //        //判断用户是否有这么多积分
 //        if (useIntegration.compareTo(currentMember.getIntegration()) > 0) {
@@ -584,7 +618,8 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
 //        }
 //        //根据积分使用规则判断是否可用
 //        //是否可与优惠券共用
-//        UmsIntegrationConsumeSetting integrationConsumeSetting = integrationConsumeSettingMapper.selectByPrimaryKey(1L);
+//        UmsIntegrationConsumeSetting integrationConsumeSetting = integrationConsumeSettingMapper.selectByPrimaryKey
+//        (1L);
 //        if (hasCoupon && integrationConsumeSetting.getCouponStatus().equals(0)) {
 //            //不可与优惠券共用
 //            return zeroAmount;
@@ -594,8 +629,10 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
 //            return zeroAmount;
 //        }
 //        //是否超过订单抵用最高百分比
-//        BigDecimal integrationAmount = new BigDecimal(useIntegration).divide(new BigDecimal(integrationConsumeSetting.getUseUnit()), 2, RoundingMode.HALF_EVEN);
-//        BigDecimal maxPercent = new BigDecimal(integrationConsumeSetting.getMaxPercentPerOrder()).divide(new BigDecimal(100), 2, RoundingMode.HALF_EVEN);
+//        BigDecimal integrationAmount = new BigDecimal(useIntegration).divide(new BigDecimal
+//        (integrationConsumeSetting.getUseUnit()), 2, RoundingMode.HALF_EVEN);
+//        BigDecimal maxPercent = new BigDecimal(integrationConsumeSetting.getMaxPercentPerOrder()).divide(new
+//        BigDecimal(100), 2, RoundingMode.HALF_EVEN);
 //        if (integrationAmount.compareTo(totalAmount.multiply(maxPercent)) > 0) {
 //            return zeroAmount;
 //        }
@@ -605,7 +642,7 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
     /**
      * 对优惠券优惠进行处理
      *
-     * @param orderItemList       order_item列表
+     * @param orderItemList order_item列表
      * @param userCouponDTO 可用优惠券详情
      */
     private void handleCouponAmount(List<OmsOrderItem> orderItemList, UserCouponDTO userCouponDTO) {
@@ -632,7 +669,8 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
         BigDecimal totalAmount = calcTotalAmount(orderItemList);
         for (OmsOrderItem orderItem : orderItemList) {
             //(商品价格/可用商品总价)*优惠券面额
-            BigDecimal couponAmount = orderItem.getGoodsPrice().divide(totalAmount, 3, RoundingMode.HALF_EVEN).multiply(BigDecimal.valueOf(coupon.getAmount()));
+            BigDecimal couponAmount =
+                    orderItem.getGoodsPrice().divide(totalAmount, 3, RoundingMode.HALF_EVEN).multiply(BigDecimal.valueOf(coupon.getAmount()));
             orderItem.setCouponAmount(couponAmount);
         }
     }
@@ -644,11 +682,13 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
      * @param orderItemList       下单商品
      * @param type                使用关系类型:0->相关分类;1->指定商品
      */
-    private List<OmsOrderItem> getCouponOrderItemByRelation(UserCouponDTO couponHistoryDetail, List<OmsOrderItem> orderItemList, int type) {
+    private List<OmsOrderItem> getCouponOrderItemByRelation(UserCouponDTO couponHistoryDetail,
+                                                            List<OmsOrderItem> orderItemList, int type) {
         List<OmsOrderItem> result = new ArrayList<>();
         if (type == 0) {
             List<Long> categoryIdList = new ArrayList<>();
-//            for (SmsCouponProductCategoryRelation productCategoryRelation : couponHistoryDetail.getCategoryRelationList()) {
+//            for (SmsCouponProductCategoryRelation productCategoryRelation : couponHistoryDetail
+//            .getCategoryRelationList()) {
 //                categoryIdList.add(productCategoryRelation.getProductCategoryId());
 //            }
             for (OmsOrderItem orderItem : orderItemList) {
@@ -718,7 +758,7 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
      */
     private boolean hasStock(List<CartPromotionItemDTO> cartPromotionItemList) {
         for (CartPromotionItemDTO cartPromotionItem : cartPromotionItemList) {
-            if (cartPromotionItem.getRealStock()==null||cartPromotionItem.getRealStock() <= 0) {
+            if (cartPromotionItem.getRealStock() == null || cartPromotionItem.getRealStock() <= 0) {
                 return false;
             }
         }
@@ -729,13 +769,15 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
      * 计算购物车中商品的价格
      */
     private CalcAmountDTO calcCartAmount(List<OmsCartItemDTO> cartPromotionItemList) {
-       CalcAmountDTO calcAmount = new CalcAmountDTO();
+        CalcAmountDTO calcAmount = new CalcAmountDTO();
         calcAmount.setFreightAmount(new BigDecimal(0));
         BigDecimal totalAmount = new BigDecimal("0");
         BigDecimal promotionAmount = new BigDecimal("0");
         for (OmsCartItemDTO cartPromotionItem : cartPromotionItemList) {
-            totalAmount = totalAmount.add(cartPromotionItem.getPrice().multiply(new BigDecimal(cartPromotionItem.getQuantity())));
-//            promotionAmount = promotionAmount.add(cartPromotionItem.getReduceAmount().multiply(new BigDecimal(cartPromotionItem.getQuantity())));
+            totalAmount =
+                    totalAmount.add(cartPromotionItem.getPrice().multiply(new BigDecimal(cartPromotionItem.getQuantity())));
+//            promotionAmount = promotionAmount.add(cartPromotionItem.getReduceAmount().multiply(new BigDecimal
+//            (cartPromotionItem.getQuantity())));
         }
         calcAmount.setTotalAmount(totalAmount);
         calcAmount.setPromotionAmount(promotionAmount);
@@ -744,48 +786,42 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
     }
 
     @Override
-    public Map<String,Object> getOrderQuantity(Long merchantId){
-        Map<String,Object> map = this.baseMapper.getOrderQuantity(merchantId);
-        if (map.get("orderCount").toString().equals("0")){
-            map.put("amount",0);
+    public Map<String, Object> getOrderQuantity(Long merchantId) {
+        Map<String, Object> map = this.baseMapper.getOrderQuantity(merchantId);
+        if (map.get("orderCount").toString().equals("0")) {
+            map.put("amount", 0);
         }
         return map;
     }
+
     @Override
-    public Pagination<OmsOrderDTO> getMerchantOrderPaging(OrderPagingParam param){
+    public Pagination<OmsOrderDTO> getMerchantOrderPaging(OrderPagingParam param) {
         Long userId = SessionContextHolder.getId();
         List<Long> merchants = this.merchantService.getMerchantIdsByUserId(userId);
-        if (!StringUtils.nonEmpty(merchants)){
+        if (ObjectUtils.isEmpty(merchants)) {
             return null;
         }
         Page<OmsOrder> page = this.lambdaQuery()
-                .in(StringUtils.nonEmpty(param.getStatus()),OmsOrder :: getStatus,param.getStatuses())
-                .in(OmsOrder::getMerchantId,merchants)
-                .orderByDesc(OmsOrder :: getCreateTime)
-                .page(PagingUtils.convert(param.getPaging()));
-        Pagination<OmsOrderDTO> pagination = PagingUtils.convert(page, OrderCopier.INSTANCE::copying);
-        pagination.getRecords().forEach(item ->{
-           item.setGoodsInfo(this.omsOrderItemService.getOrderItemByOrderId(item.getId()));
+                .in(StringUtils.notEmpty(param.getStatus()), OmsOrder::getStatus, param.getStatuses())
+                .in(OmsOrder::getMerchantId, merchants)
+                .orderByDesc(OmsOrder::getCreateTime)
+                .page(DatabaseContextHolder.page(param.getPaging()));
+        Pagination<OmsOrderDTO> pagination = DatabaseContextHolder.pagination(page, OrderCopier.INSTANCE::copying);
+        pagination.getRecords().forEach(item -> {
+            item.setGoodsInfo(this.omsOrderItemService.getOrderItemByOrderId(item.getId()));
         });
         return pagination;
     }
 
     @Override
     public void orderVerification(Long orderId, Long merchantId) {
-        if(orderId == null){
-            throw new ResourceUnavailableException("订单不存在");
-        }
+        AssertUtils.available(orderId, "订单不存在");
         OmsOrder omsOrder = baseMapper.selectById(orderId);
-        if(omsOrder == null){
-            throw new ResourceUnavailableException("订单不存在");
-        }
-        if(omsOrder.getMerchantId() == null || !omsOrder.getMerchantId().equals(merchantId)){
-            throw new ResourceUnavailableException("该订单商品不属于此商家");
-        }
+        AssertUtils.available(omsOrder, "订单不存在");
+        AssertUtils.available(omsOrder.getMerchantId() != null && omsOrder.getMerchantId().equals(merchantId),
+                "该订单商品不属于此商家");
         Integer status = omsOrder.getStatus();
-        if(status != 1){
-            throw new ResourceUnavailableException("该订单不可用");
-        }
+        AssertUtils.available(status == 1, "该订单不可用");
         orderHandleService.handleOrder(omsOrder);
     }
 

+ 16 - 15
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/PlatformProfitRatioServiceImpl.java

@@ -1,5 +1,9 @@
 package com.chelvc.cloud.vehicle.server.service.impl;
 
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import java.util.List;
+
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -23,14 +27,10 @@ import org.springframework.context.annotation.Lazy;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.util.CollectionUtils;
 
-import java.math.BigDecimal;
-import java.time.LocalDateTime;
-import java.util.List;
-
 @RequiredArgsConstructor(onConstructor = @__({@Autowired, @Lazy}))
 @DubboService(interfaceClass = com.chelvc.cloud.vehicle.api.service.PlatformProfitRatioService.class)
 public class PlatformProfitRatioServiceImpl extends ServiceImpl<PlatformProfitRatioMapper, PlatformProfitRatio>
-        implements PlatformProfitRatioService,  com.chelvc.cloud.vehicle.api.service.PlatformProfitRatioService{
+        implements PlatformProfitRatioService, com.chelvc.cloud.vehicle.api.service.PlatformProfitRatioService {
 
     private final ProfitRatioConfigService profitRatioConfigService;
 
@@ -44,7 +44,7 @@ public class PlatformProfitRatioServiceImpl extends ServiceImpl<PlatformProfitRa
             return;
         }
         List<ProfitRatioConfig> profitRatioConfigs = profitRatioConfigService.queryListByType(1);
-        if(CollectionUtils.isEmpty(profitRatioConfigs)){
+        if (CollectionUtils.isEmpty(profitRatioConfigs)) {
             return;
         }
         int pageNum = 1;
@@ -57,13 +57,13 @@ public class PlatformProfitRatioServiceImpl extends ServiceImpl<PlatformProfitRa
             Pagination<PlatformProfitRatioDTO> platformProfitRatioDTOPagination =
                     queryPageList(null, new Integer(pageNum).longValue(), new Integer(pageSize).longValue());
             List<PlatformProfitRatioDTO> records = platformProfitRatioDTOPagination.getRecords();
-            if(!CollectionUtils.isEmpty(records)){
-                for(PlatformProfitRatioDTO dto : records){
+            if (!CollectionUtils.isEmpty(records)) {
+                for (PlatformProfitRatioDTO dto : records) {
                     Long userId = dto.getUserId();
                     BigDecimal amount = omsOrderService.queryAmountByLastMonth(userId);
-                    for(ProfitRatioConfig config : profitRatioConfigs){
+                    for (ProfitRatioConfig config : profitRatioConfigs) {
                         int num = config.getNum();
-                        if(amount.compareTo(new BigDecimal(num)) > -1){
+                        if (amount.compareTo(new BigDecimal(num)) > -1) {
                             baseMapper.updateRatio(dto.getId(), config.getRatio(), LocalDateTime.now(), amount);
                             break;
                         }
@@ -79,7 +79,7 @@ public class PlatformProfitRatioServiceImpl extends ServiceImpl<PlatformProfitRa
         LambdaQueryWrapper<PlatformProfitRatio> wrapper = Wrappers.lambdaQuery();
         wrapper.eq(PlatformProfitRatio::getUserId, merchantId);
         PlatformProfitRatio platformProfitRatio = baseMapper.selectOne(wrapper);
-        if(platformProfitRatio != null){
+        if (platformProfitRatio != null) {
             return platformProfitRatio.getRatio();
         }
         return init(merchantId);
@@ -91,10 +91,11 @@ public class PlatformProfitRatioServiceImpl extends ServiceImpl<PlatformProfitRa
     }
 
     @Override
-    public Pagination<PlatformProfitRatioDTO> queryPageList(QueryPlatformProfitRatioParam param, Long pageNum, Long pageSize) {
+    public Pagination<PlatformProfitRatioDTO> queryPageList(QueryPlatformProfitRatioParam param, Long pageNum,
+                                                            Long pageSize) {
         Page<PlatformProfitRatioDTO> page = new Page<>(pageNum, pageSize);
         QueryWrapper<PlatformProfitRatioDTO> wrapper = Wrappers.query();
-        if(param != null){
+        if (param != null) {
             wrapper.eq(param.getUserId() != null, "t.user_id", param.getUserId());
         }
         wrapper.orderByAsc("t.create_time");
@@ -103,7 +104,7 @@ public class PlatformProfitRatioServiceImpl extends ServiceImpl<PlatformProfitRa
                 .records(result.getRecords()).build();
     }
 
-    public int init(Long userId){
+    public int init(Long userId) {
         ProfitRatioConfig config = profitRatioConfigService.queryByTypeAndLeast(1);
         PlatformProfitRatio ratio = new PlatformProfitRatio();
         ratio.setUserId(userId);
@@ -123,7 +124,7 @@ public class PlatformProfitRatioServiceImpl extends ServiceImpl<PlatformProfitRa
         LambdaQueryWrapper<PlatformProfitRatio> wrapper = Wrappers.lambdaQuery();
         wrapper.eq(PlatformProfitRatio::getUserId, userId);
         PlatformProfitRatio platformProfitRatio = baseMapper.selectOne(wrapper);
-        if(platformProfitRatio == null){
+        if (platformProfitRatio == null) {
             init(userId);
             return;
         }

+ 5 - 4
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/ProfitRatioConfigServiceImpl.java

@@ -13,8 +13,10 @@ import com.chelvc.cloud.vehicle.api.param.QueryProfitRatioConfigParam;
 import com.chelvc.cloud.vehicle.server.dao.ProfitRatioConfigMapper;
 import com.chelvc.cloud.vehicle.server.entity.ProfitRatioConfig;
 import com.chelvc.cloud.vehicle.server.service.ProfitRatioConfigService;
-import com.chelvc.framework.base.exception.ResourceUnavailableException;
+import com.chelvc.framework.common.exception.ResourceUnavailableException;
 import com.chelvc.framework.common.model.Pagination;
+import com.chelvc.framework.common.model.Paging;
+import com.chelvc.framework.database.context.DatabaseContextHolder;
 import lombok.RequiredArgsConstructor;
 import org.apache.dubbo.config.annotation.DubboService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -76,13 +78,12 @@ public class ProfitRatioConfigServiceImpl extends ServiceImpl<ProfitRatioConfigM
     }
 
     @Override
-    public Pagination<ProfitRatioConfigDTO> queryPageList(QueryProfitRatioConfigParam param, Long pageNum, Long pageSize) {
-        Page<ProfitRatioConfigDTO> page = new Page<>(pageNum, pageSize);
+    public Pagination<ProfitRatioConfigDTO> queryPageList(QueryProfitRatioConfigParam param, Paging paging) {
         QueryWrapper<ProfitRatioConfig> wrapper = Wrappers.query();
         wrapper.eq(param.getType() != null, "type", param.getType());
         wrapper.eq(param.getStatus() != null, "status", param.getStatus());
         wrapper.orderByAsc("ratio");
-        IPage<ProfitRatioConfigDTO> result = baseMapper.queryPageList(page, wrapper);
+        IPage<ProfitRatioConfigDTO> result = baseMapper.queryPageList(DatabaseContextHolder.page(paging), wrapper);
         return Pagination.<ProfitRatioConfigDTO>builder().total(result.getTotal()).pages(result.getPages())
                 .records(result.getRecords()).build();
     }

+ 36 - 29
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/ReservationServiceImpl.java

@@ -1,8 +1,13 @@
 package com.chelvc.cloud.vehicle.server.service.impl;
 
+import java.util.Collections;
+import java.util.List;
+import java.util.stream.Collectors;
+
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.chelvc.cloud.uc.api.dto.EmployeeDTO;
+import com.chelvc.cloud.uc.api.model.Scope;
 import com.chelvc.cloud.uc.api.service.EmployeeService;
 import com.chelvc.cloud.vehicle.api.constant.ReserveStatus;
 import com.chelvc.cloud.vehicle.api.dto.MerchantDTO;
@@ -17,18 +22,15 @@ import com.chelvc.cloud.vehicle.server.service.MerchantService;
 import com.chelvc.cloud.vehicle.server.service.ReservationService;
 import com.chelvc.framework.base.context.SessionContextHolder;
 import com.chelvc.framework.common.model.Pagination;
+import com.chelvc.framework.common.util.ObjectUtils;
 import com.chelvc.framework.common.util.StringUtils;
-import com.chelvc.framework.database.util.PagingUtils;
+import com.chelvc.framework.database.context.DatabaseContextHolder;
 import lombok.NonNull;
 import lombok.RequiredArgsConstructor;
 import org.apache.dubbo.config.annotation.DubboService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.util.CollectionUtils;
 
-import java.util.Collections;
-import java.util.List;
-import java.util.stream.Collectors;
-
 /**
  * 预约记录业务操作实现
  *
@@ -43,6 +45,7 @@ public class ReservationServiceImpl extends ServiceImpl<ReservationMapper, Reser
     private final MerchantService merchantService;
 
     private final EmployeeService employeeService;
+
     @Override
     public void addReservation(@NonNull Long merchantId, @NonNull ReservationModifyParam param) {
         Reservation reservation = ReservationCopier.INSTANCE.copying(param);
@@ -70,43 +73,47 @@ public class ReservationServiceImpl extends ServiceImpl<ReservationMapper, Reser
     }
 
     @Override
-    public void deleteReservation(Long id){
+    public void deleteReservation(Long id) {
         this.baseMapper.deleteById(id);
     }
+
     @Override
-    public Pagination<ReservationDTO> getReservationPaging(ReservationPagingParam param){
+    public Pagination<ReservationDTO> getReservationPaging(ReservationPagingParam param) {
         Long userId = SessionContextHolder.getId();
-        if (this.employeeService.isAdmin(userId)){
+        Scope scope = StringUtils.ifEmpty(SessionContextHolder.getScope(), Scope::parse);
+        if (scope == Scope.ADMIN) {
             Page<Reservation> page = this.lambdaQuery()
-                    .eq(StringUtils.nonEmpty(param.getStatus()),Reservation :: getStatus,param.getStatus())
-                    .orderByDesc(Reservation :: getAppointTime)
-                    .page(PagingUtils.convert(param.getPaging()));
-            Pagination<ReservationDTO> pagination = PagingUtils.convert(page, ReservationCopier.INSTANCE::copying);
-            pagination.getRecords().forEach(item ->{
-                EmployeeDTO employeeDTO = this.employeeService.getEmployee(item.getUserId());
-                if (employeeDTO != null){
-                    item.setUsername(employeeDTO.getUsername());
-                }
+                    .eq(StringUtils.notEmpty(param.getStatus()), Reservation::getStatus, param.getStatus())
+                    .orderByDesc(Reservation::getAppointTime)
+                    .page(DatabaseContextHolder.page(param.getPaging()));
+            Pagination<ReservationDTO> pagination = DatabaseContextHolder.pagination(page,
+                    ReservationCopier.INSTANCE::copying);
+            pagination.getRecords().forEach(item -> {
+//                EmployeeDTO employeeDTO = this.employeeService.getEmployee(item.getUserId());
+//                if (employeeDTO != null) {
+//                    item.setUsername(employeeDTO.getUsername());
+//                }
                 MerchantDTO merchantDTO = this.merchantService.getMerchantById(item.getMerchantId());
                 item.setMerchant(merchantDTO);
             });
             return pagination;
-        }else{
+        } else {
             List<Long> merchants = this.merchantService.getMerchantIdsByUserId(userId);
-            if (!StringUtils.nonEmpty(merchants)){
+            if (ObjectUtils.isEmpty(merchants)) {
                 return null;
             }
             Page<Reservation> page = this.lambdaQuery()
-                    .eq(StringUtils.nonEmpty(param.getStatus()),Reservation :: getStatus,param.getStatus())
-                    .in(Reservation :: getMerchantId,merchants)
-                    .orderByDesc(Reservation :: getAppointTime)
-                    .page(PagingUtils.convert(param.getPaging()));
-            Pagination<ReservationDTO> pagination = PagingUtils.convert(page, ReservationCopier.INSTANCE::copying);
-            pagination.getRecords().forEach(item ->{
-                EmployeeDTO employeeDTO = this.employeeService.getEmployee(item.getUserId());
-                if (employeeDTO != null){
-                    item.setUsername(employeeDTO.getUsername());
-                }
+                    .eq(StringUtils.notEmpty(param.getStatus()), Reservation::getStatus, param.getStatus())
+                    .in(Reservation::getMerchantId, merchants)
+                    .orderByDesc(Reservation::getAppointTime)
+                    .page(DatabaseContextHolder.page(param.getPaging()));
+            Pagination<ReservationDTO> pagination = DatabaseContextHolder.pagination(page,
+                    ReservationCopier.INSTANCE::copying);
+            pagination.getRecords().forEach(item -> {
+//                EmployeeDTO employeeDTO = this.employeeService.getEmployee(item.getUserId());
+//                if (employeeDTO != null) {
+//                    item.setUsername(employeeDTO.getUsername());
+//                }
                 MerchantDTO merchantDTO = this.merchantService.getMerchantById(item.getMerchantId());
                 item.setMerchant(merchantDTO);
             });

+ 25 - 22
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/UserCouponServiceImpl.java

@@ -1,5 +1,13 @@
 package com.chelvc.cloud.vehicle.server.service.impl;
 
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
+
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -7,7 +15,6 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.chelvc.cloud.vehicle.api.constant.CouponClaimType;
 import com.chelvc.cloud.vehicle.api.constant.CouponType;
-import com.chelvc.cloud.vehicle.api.constant.PromotionStatus;
 import com.chelvc.cloud.vehicle.api.constant.UserCouponStatus;
 import com.chelvc.cloud.vehicle.api.dto.UserCouponDTO;
 import com.chelvc.cloud.vehicle.api.param.UserCouponModifyParam;
@@ -22,22 +29,18 @@ import com.chelvc.cloud.vehicle.server.entity.UserCoupon;
 import com.chelvc.cloud.vehicle.server.service.CouponService;
 import com.chelvc.cloud.vehicle.server.service.UserCouponService;
 import com.chelvc.framework.base.context.SessionContextHolder;
-import com.chelvc.framework.base.exception.ResourceUnavailableException;
-import com.chelvc.framework.base.util.ResourceUtils;
+import com.chelvc.framework.common.exception.ResourceUnavailableException;
 import com.chelvc.framework.common.model.Pagination;
 import com.chelvc.framework.common.model.Paging;
-import com.chelvc.framework.common.util.BeanCopyUtil;
-import com.chelvc.framework.database.util.PagingUtils;
+import com.chelvc.framework.common.util.AssertUtils;
+import com.chelvc.framework.common.util.ObjectUtils;
+import com.chelvc.framework.database.context.DatabaseContextHolder;
 import lombok.NonNull;
 import lombok.RequiredArgsConstructor;
 import org.apache.dubbo.config.annotation.DubboService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.util.CollectionUtils;
 
-import java.math.BigDecimal;
-import java.util.*;
-import java.util.stream.Collectors;
-
 /**
  * 优惠券领取业务操作实现
  *
@@ -102,7 +105,7 @@ public class UserCouponServiceImpl extends ServiceImpl<UserCouponMapper, UserCou
 
     @Override
     public void updateUserCoupon(@NonNull Long id, @NonNull UserCouponModifyParam param) {
-        UserCoupon userCoupon = ResourceUtils.required(this.getById(id), "优惠券领取记录不存在");
+        UserCoupon userCoupon = AssertUtils.available(this.getById(id), "优惠券领取记录不存在");
         UserCouponCopier.INSTANCE.copying(param, userCoupon);
         this.updateById(userCoupon);
     }
@@ -119,7 +122,7 @@ public class UserCouponServiceImpl extends ServiceImpl<UserCouponMapper, UserCou
                 .eq(Objects.nonNull(param.getType()), UserCoupon::getType, param.getType().name())
                 .eq(UserCouponStatus.USED.equals(param.getStatus()), UserCoupon::getUsed, 1)
                 .eq(UserCouponStatus.UNUSED.equals(param.getStatus()), UserCoupon::getUsed, 0)
-                .orderByDesc(UserCoupon::getId).page(PagingUtils.convert(param.getPaging()));
+                .orderByDesc(UserCoupon::getId).page(DatabaseContextHolder.page(param.getPaging()));
         List<UserCoupon> records = page.getRecords();
         if (CollectionUtils.isEmpty(records)) {
             return Pagination.empty();
@@ -127,12 +130,12 @@ public class UserCouponServiceImpl extends ServiceImpl<UserCouponMapper, UserCou
 
         // 构建优惠券领取记录信息
         List<UserCouponDTO> userCoupons = records.stream().map(this::convert).collect(Collectors.toList());
-        return PagingUtils.convert(page, userCoupons);
+        return DatabaseContextHolder.pagination(page, userCoupons);
     }
 
     @Override
     public Long claimCoupon(@NonNull Long couponId) {
-        Coupon coupon = ResourceUtils.required(couponService.getById(couponId), "优惠券不存在");
+        Coupon coupon = AssertUtils.available(couponService.getById(couponId), "优惠券不存在");
         if (!CouponClaimType.FREE.equals(coupon.getClaimType())) {
             throw new ResourceUnavailableException("当前优惠券不允许免费领取");
         }
@@ -170,10 +173,10 @@ public class UserCouponServiceImpl extends ServiceImpl<UserCouponMapper, UserCou
     public Pagination<UserCouponDTO> selectUserCouponListByUserId(Long userId, Paging paging) {
         Page<UserCoupon> page = this.lambdaQuery()
                 .eq(UserCoupon::getUserId, userId)
-                .orderByAsc(UserCoupon::getCreateTime).page(PagingUtils.convert(paging));
+                .orderByAsc(UserCoupon::getCreateTime).page(DatabaseContextHolder.page(paging));
         List<UserCoupon> userCoupons = page.getRecords();
-        List<UserCouponDTO> copy = BeanCopyUtil.copy(userCoupons, UserCouponDTO.class);
-        return PagingUtils.convert(page, copy);
+        List<UserCouponDTO> copy = ObjectUtils.copying(userCoupons, UserCouponDTO.class);
+        return DatabaseContextHolder.pagination(page, copy);
     }
 
     /**
@@ -217,7 +220,7 @@ public class UserCouponServiceImpl extends ServiceImpl<UserCouponMapper, UserCou
     }
 
     @Override
-    public UserCoupon getUserCouponInfo(Long couponId,Long userId){
+    public UserCoupon getUserCouponInfo(Long couponId, Long userId) {
         LambdaQueryWrapper<UserCoupon> lwq = Wrappers.lambdaQuery();
         lwq.eq(UserCoupon::getUserId, userId);
         lwq.eq(UserCoupon::getCouponId, couponId);
@@ -225,11 +228,11 @@ public class UserCouponServiceImpl extends ServiceImpl<UserCouponMapper, UserCou
     }
 
     @Override
-    public void updateUserCouponUserd(UserCoupon userCoupon,Long couponId,Long userId){
+    public void updateUserCouponUserd(UserCoupon userCoupon, Long couponId, Long userId) {
         LambdaQueryWrapper<UserCoupon> lwq = Wrappers.lambdaQuery();
         lwq.eq(UserCoupon::getUserId, userId);
         lwq.eq(UserCoupon::getCouponId, couponId);
-        this.baseMapper.update(userCoupon,lwq);
+        this.baseMapper.update(userCoupon, lwq);
     }
 
     @Override
@@ -238,10 +241,10 @@ public class UserCouponServiceImpl extends ServiceImpl<UserCouponMapper, UserCou
         lwq.eq(UserCoupon::getUserId, userId);
         lwq.eq(UserCoupon::getFlag, 0);
         List<UserCouponDTO> userCouponList = UserCouponCopier.INSTANCE.copying(baseMapper.selectList(lwq));
-        if (userCouponList != null && userCouponList.size()>0){
-            userCouponList.forEach(item ->{
+        if (userCouponList != null && userCouponList.size() > 0) {
+            userCouponList.forEach(item -> {
                 item.setCouponDTO(CouponCopier.INSTANCE.copying(this.couponService.getById(item.getCouponId())));
-                if (CouponType.REDUCE.equals(item.getCouponDTO().getType())){
+                if (CouponType.REDUCE.equals(item.getCouponDTO().getType())) {
                     int comparison = amount.compareTo(new BigDecimal(item.getCouponDTO().getConsumeThreshold()));
                     if (comparison == 0) {
                         item.setDisplay(true);

+ 3 - 2
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/UserInviteServiceImpl.java

@@ -17,7 +17,7 @@ import com.chelvc.cloud.vehicle.server.entity.ProfitRatioConfig;
 import com.chelvc.cloud.vehicle.server.entity.UserInvite;
 import com.chelvc.cloud.vehicle.server.entity.UserProfitRatio;
 import com.chelvc.cloud.vehicle.server.service.MerchantService;
-import com.chelvc.framework.base.exception.ResourceUnavailableException;
+import com.chelvc.framework.common.exception.ResourceUnavailableException;
 import com.chelvc.framework.common.model.Paging;
 import lombok.RequiredArgsConstructor;
 import org.apache.dubbo.config.annotation.DubboReference;
@@ -127,7 +127,8 @@ public class UserInviteServiceImpl extends ServiceImpl<UserInviteMapper, UserInv
         Map<Long, UserDTO> map = new HashMap<>();
         if(param.getType() == null || param.getType() == 1){
             List<Long> ids = records.stream().filter(e -> e.getSourceType() == 1).map(TeamDetailsDTO::getInviteUserId).collect(Collectors.toList());
-            map = userService.queryUserByIds(ids);
+            List<UserDTO> users = this.userService.listUsers(ids);
+            map = users.stream().collect(Collectors.toMap(UserDTO::getId, user -> user));
         }
         for(TeamDetailsDTO detailsDTO : records){
             Integer sourceType = detailsDTO.getSourceType();

+ 5 - 2
vehicle-server/src/main/resources/application-dev.yml

@@ -21,5 +21,8 @@ nacos:
     server-addr: 47.108.128.78:6848
 
 location:
-  tencent:
-    key: VPKBZ-CR3CG-R23QE-QK2IY-LNXKZ-GCB34
+  caching:
+    enabled: true
+  clients:
+    - key: VPKBZ-CR3CG-R23QE-QK2IY-LNXKZ-GCB34
+      channel: TENCENT

+ 8 - 1
vehicle-server/src/main/resources/application-pre.yml

@@ -18,4 +18,11 @@ dubbo:
 
 nacos:
   config:
-    server-addr: 127.0.0.1:6848
+    server-addr: 127.0.0.1:6848
+
+location:
+  caching:
+    enabled: true
+  clients:
+    - key: VPKBZ-CR3CG-R23QE-QK2IY-LNXKZ-GCB34
+      channel: TENCENT

+ 8 - 1
vehicle-server/src/main/resources/application-prod.yml

@@ -18,4 +18,11 @@ dubbo:
 
 nacos:
   config:
-    server-addr: 127.0.0.1:6848
+    server-addr: 127.0.0.1:6848
+
+location:
+  caching:
+    enabled: true
+  clients:
+    - key: VPKBZ-CR3CG-R23QE-QK2IY-LNXKZ-GCB34
+      channel: TENCENT

+ 8 - 1
vehicle-server/src/main/resources/application-test.yml

@@ -18,4 +18,11 @@ dubbo:
 
 nacos:
   config:
-    server-addr: 127.0.0.1:6848
+    server-addr: 127.0.0.1:6848
+
+location:
+  caching:
+    enabled: true
+  clients:
+    - key: VPKBZ-CR3CG-R23QE-QK2IY-LNXKZ-GCB34
+      channel: TENCENT