code review:分销逻辑

This commit is contained in:
YunaiV 2023-09-19 22:16:25 +08:00
parent 581f9d4101
commit 8cfb738db3
7 changed files with 10 additions and 5 deletions

View File

@ -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);

View File

@ -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;
}

View File

@ -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;
}

View File

@ -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);
}

View File

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

View File

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

View File

@ -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);