Selaa lähdekoodia

code review:分销逻辑

YunaiV 1 vuosi sitten
vanhempi
commit
8cfb738db3

+ 1 - 0
yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/query/LambdaQueryWrapperX.java

@@ -100,6 +100,7 @@ public class LambdaQueryWrapperX<T> extends LambdaQueryWrapper<T> {
         return betweenIfPresent(column, val1, val2);
     }
 
+    // TODO @疯狂:这个是 mysql 独有的,不好做成通用的哈。如果多层级,有没可能先查询一个层级,再查询一个层级;形成 set 后,直接去 in?
     public LambdaQueryWrapperX<T> findInSetIfPresent(SFunction<T, ?> column, Object val) {
         if (val != null) {
             return (LambdaQueryWrapperX<T>) super.apply("FIND_IN_SET({0}, " + columnToString(column) + ")", val);

+ 1 - 1
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/brokerage/record/vo/BrokerageRecordPageReqVO.java

@@ -30,7 +30,7 @@ public class BrokerageRecordPageReqVO extends PageParam {
     @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
     private LocalDateTime[] createTime;
 
-    @Schema(description = "用户类型")
+    @Schema(description = "用户类型", example = "1")
     private Integer sourceUserLevel;
 
 }

+ 3 - 2
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/brokerage/user/vo/BrokerageUserPageReqVO.java

@@ -20,17 +20,18 @@ public class BrokerageUserPageReqVO extends PageParam {
     @Schema(description = "推广员编号", example = "4587")
     private Long bindUserId;
 
-    @Schema(description = "推广资格")
+    @Schema(description = "推广资格", example = "true")
     private Boolean brokerageEnabled;
 
     @Schema(description = "创建时间")
     @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
     private LocalDateTime[] createTime;
 
-    @Schema(description = "用户等级")
+    @Schema(description = "用户等级", example = "1") // 注意,这了不是用户的会员等级,而是过滤推广的层级
     private Integer level;
 
     @Schema(description = "绑定时间")
     @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
     private LocalDateTime[] bindUserTime;
+
 }

+ 2 - 1
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/convert/order/TradeOrderConvert.java

@@ -299,6 +299,7 @@ public interface TradeOrderConvert {
             @Mapping(target = "userId", source = "userId"),
             @Mapping(target = "payPrice", source = "tradeOrderDO.payPrice"),
     })
-    TradeAfterOrderCreateReqBO convert(Long userId, AppTradeOrderCreateReqVO createReqVO, TradeOrderDO tradeOrderDO, TradeOrderItemDO orderItem);
+    TradeAfterOrderCreateReqBO convert(Long userId, AppTradeOrderCreateReqVO createReqVO,
+                                       TradeOrderDO tradeOrderDO, TradeOrderItemDO orderItem);
 
 }

+ 1 - 0
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/dal/mysql/brokerage/record/BrokerageRecordMapper.java

@@ -56,4 +56,5 @@ public interface BrokerageRecordMapper extends BaseMapperX<BrokerageRecordDO> {
     UserBrokerageSummaryBO selectCountAndSumPriceByUserIdAndBizTypeAndStatus(@Param("userId") Long userId,
                                                                              @Param("bizType") Integer bizType,
                                                                              @Param("status") Integer status);
+
 }

+ 0 - 1
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/brokerage/user/BrokerageUserService.java

@@ -112,7 +112,6 @@ public interface BrokerageUserService {
         return bindBrokerageUser(userId, bindUserId, isNewUser);
     }
 
-
     /**
      * 【会员】绑定推广员
      *

+ 2 - 0
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/brokerage/user/BrokerageUserServiceImpl.java

@@ -67,6 +67,7 @@ public class BrokerageUserServiceImpl implements BrokerageUserService {
         }
 
         // 绑定关系未发生变化
+        // TODO @疯狂:这个放到“情况一”之前,貌似也没关系?
         if (Objects.equals(brokerageUser.getBindUserId(), bindUserId)) {
             return;
         }
@@ -250,6 +251,7 @@ public class BrokerageUserServiceImpl implements BrokerageUserService {
         }
     }
 
+    // TODO @芋艿:这个层级,要微信讨论下;
     private List<Integer> buildUserQueryLevels(Long bindUserId, Integer level) {
         List<Integer> levels = new ArrayList<>(2);