Commit 6a819da0b6cdd4b9f3eb8c67c519e2a6eb8498c6

Authored by YunaiV
1 parent 482a84a6

分佣:增加用户分销统计 API mock

... ... @@ -16,11 +16,11 @@
16 16 <module>yudao-module-member</module>
17 17 <module>yudao-module-system</module>
18 18 <module>yudao-module-infra</module>
19   -<!-- <module>yudao-module-pay</module>-->
20   -<!-- <module>yudao-module-bpm</module>-->
  19 + <!-- <module>yudao-module-bpm</module>-->
21 20 <!-- <module>yudao-module-report</module>-->
22 21 <!-- <module>yudao-module-mp</module>-->
23   -<!-- <module>yudao-module-mall</module>-->
  22 + <module>yudao-module-pay</module>
  23 + <module>yudao-module-mall</module>
24 24 <!-- 示例项目 -->
25 25 <module>yudao-example</module>
26 26 </modules>
... ...
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/app/combination/AppCombinationRecordController.java
1 1 package cn.iocoder.yudao.module.promotion.controller.app.combination;
2 2  
3 3 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
4   -import cn.iocoder.yudao.framework.common.util.date.DateUtils;
  4 +import cn.iocoder.yudao.framework.common.util.date.LocalDateTimeUtils;
5 5 import cn.iocoder.yudao.module.promotion.controller.app.combination.vo.record.AppCombinationRecordDetailRespVO;
6 6 import cn.iocoder.yudao.module.promotion.controller.app.combination.vo.record.AppCombinationRecordRespVO;
7 7 import cn.iocoder.yudao.module.promotion.controller.app.combination.vo.record.AppCombinationRecordSummaryRespVO;
... ... @@ -16,8 +16,8 @@ import org.springframework.web.bind.annotation.RestController;
16 16  
17 17 import javax.validation.constraints.Max;
18 18 import java.time.Duration;
  19 +import java.time.LocalDateTime;
19 20 import java.util.ArrayList;
20   -import java.util.Date;
21 21 import java.util.List;
22 22  
23 23 import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
... ... @@ -58,7 +58,7 @@ public class AppCombinationRecordController {
58 58 record.setId((long) i);
59 59 record.setNickname("用户" + i);
60 60 record.setAvatar("头像" + i);
61   - record.setExpireTime(new Date());
  61 + record.setExpireTime(LocalDateTime.now());
62 62 record.setUserSize(10);
63 63 record.setUserCount(i);
64 64 record.setPicUrl("https://static.iocoder.cn/mall/a79f5d2ea6bf0c3c11b2127332dfe2df.jpg");
... ... @@ -79,7 +79,7 @@ public class AppCombinationRecordController {
79 79 headRecord.setId(1L);
80 80 headRecord.setNickname("用户" + 1);
81 81 headRecord.setAvatar("头像" + 1);
82   - headRecord.setExpireTime(DateUtils.addTime(Duration.ofDays(1)));
  82 + headRecord.setExpireTime(LocalDateTimeUtils.addTime(Duration.ofDays(1)));
83 83 headRecord.setUserSize(10);
84 84 headRecord.setUserCount(3);
85 85 headRecord.setStatus(1);
... ... @@ -94,7 +94,7 @@ public class AppCombinationRecordController {
94 94 record.setId((long) i);
95 95 record.setNickname("用户" + i);
96 96 record.setAvatar("头像" + i);
97   - record.setExpireTime(new Date());
  97 + record.setExpireTime(LocalDateTime.now());
98 98 record.setUserSize(10);
99 99 record.setUserCount(i);
100 100 record.setStatus(1);
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/brokerage/AppBrokerageUserController.java 0 → 100644
  1 +package cn.iocoder.yudao.module.member.controller.app.brokerage;
  2 +
  3 +import cn.iocoder.yudao.framework.common.pojo.CommonResult;
  4 +import cn.iocoder.yudao.framework.security.core.annotations.PreAuthenticated;
  5 +import cn.iocoder.yudao.module.member.controller.app.brokerage.vo.AppBrokerageUserSummaryRespVO;
  6 +import io.swagger.v3.oas.annotations.Operation;
  7 +import io.swagger.v3.oas.annotations.tags.Tag;
  8 +import lombok.extern.slf4j.Slf4j;
  9 +import org.springframework.validation.annotation.Validated;
  10 +import org.springframework.web.bind.annotation.GetMapping;
  11 +import org.springframework.web.bind.annotation.RequestMapping;
  12 +import org.springframework.web.bind.annotation.RestController;
  13 +
  14 +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
  15 +
  16 +@Tag(name = "用户 APP - 分销用户")
  17 +@RestController
  18 +@RequestMapping("/member/brokerage-user")
  19 +@Validated
  20 +@Slf4j
  21 +public class AppBrokerageUserController {
  22 +
  23 + // TODO 芋艿:临时 mock =>
  24 + @GetMapping("/get-summary")
  25 + @Operation(summary = "获得个人分销统计")
  26 + @PreAuthenticated
  27 + public CommonResult<AppBrokerageUserSummaryRespVO> getBrokerageUserSummary() {
  28 + AppBrokerageUserSummaryRespVO respVO = new AppBrokerageUserSummaryRespVO()
  29 + .setYesterdayBrokeragePrice(1)
  30 + .setBrokeragePrice(2)
  31 + .setFrozenBrokeragePrice(3)
  32 + .setWithdrawBrokeragePrice(4);
  33 + return success(respVO);
  34 + }
  35 +
  36 +}
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/brokerage/vo/AppBrokerageUserSummaryRespVO.java 0 → 100644
  1 +package cn.iocoder.yudao.module.member.controller.app.brokerage.vo;
  2 +
  3 +import io.swagger.v3.oas.annotations.media.Schema;
  4 +import lombok.Data;
  5 +
  6 +@Schema(description = "用户 App - 个人分销统计 Response VO")
  7 +@Data
  8 +public class AppBrokerageUserSummaryRespVO {
  9 +
  10 + @Schema(description = "昨天的佣金,单位:分", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
  11 + private Integer yesterdayBrokeragePrice;
  12 +
  13 + @Schema(description = "提现的佣金,单位:分", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
  14 + private Integer withdrawBrokeragePrice;
  15 +
  16 + @Schema(description = "可用的佣金,单位:分", requiredMode = Schema.RequiredMode.REQUIRED, example = "2408")
  17 + private Integer brokeragePrice;
  18 +
  19 + @Schema(description = "冻结的佣金,单位:分", requiredMode = Schema.RequiredMode.REQUIRED, example = "234")
  20 + private Integer frozenBrokeragePrice;
  21 +
  22 +}
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/user/AppMemberUserController.java
... ... @@ -39,7 +39,9 @@ public class AppMemberUserController {
39 39 public CommonResult<AppMemberUserInfoRespVO> getUserInfo() {
40 40 MemberUserDO user = userService.getUser(getLoginUserId());
41 41 MemberLevelDO level = levelService.getLevel(user.getLevelId());
42   - return success(MemberUserConvert.INSTANCE.convert(user, level));
  42 + return success(MemberUserConvert.INSTANCE.convert(user, level)
  43 + .setBrokerageEnabled(true) // TODO @疯狂:这里我先写死,后面改成 db 返回;
  44 + );
43 45 }
44 46  
45 47 @PutMapping("/update")
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/user/vo/AppMemberUserInfoRespVO.java
... ... @@ -29,6 +29,9 @@ public class AppMemberUserInfoRespVO {
29 29 @Schema(description = "用户等级")
30 30 private Level level;
31 31  
  32 + @Schema(description = "是否成为推广员", requiredMode = Schema.RequiredMode.REQUIRED, example = "true")
  33 + private Boolean brokerageEnabled;
  34 +
32 35 @Schema(description = "用户 App - 会员等级")
33 36 @Data
34 37 public static class Level {
... ...
yudao-server/pom.xml
... ... @@ -41,24 +41,24 @@
41 41 <artifactId>yudao-spring-boot-starter-biz-error-code</artifactId>
42 42 </dependency>
43 43  
44   - <!-- 数据报表 -->
  44 + <!-- 数据报表。默认注释,保证编译速度 -->
45 45 <!-- <dependency>-->
46 46 <!-- <groupId>cn.iocoder.boot</groupId>-->
47 47 <!-- <artifactId>yudao-module-report-biz</artifactId>-->
48 48 <!-- <version>${revision}</version>-->
49 49 <!-- </dependency>-->
50   - <!-- 工作流 -->
  50 + <!-- 工作流。默认注释,保证编译速度 -->
51 51 <!-- <dependency>-->
52 52 <!-- <groupId>cn.iocoder.boot</groupId>-->
53 53 <!-- <artifactId>yudao-module-bpm-biz</artifactId>-->
54 54 <!-- <version>${revision}</version>-->
55 55 <!-- </dependency>-->
56 56 <!-- 支付服务。默认注释,保证编译速度 -->
57   -<!-- <dependency>-->
58   -<!-- <groupId>cn.iocoder.boot</groupId>-->
59   -<!-- <artifactId>yudao-module-pay-biz</artifactId>-->
60   -<!-- <version>${revision}</version>-->
61   -<!-- </dependency>-->
  57 + <dependency>
  58 + <groupId>cn.iocoder.boot</groupId>
  59 + <artifactId>yudao-module-pay-biz</artifactId>
  60 + <version>${revision}</version>
  61 + </dependency>
62 62  
63 63 <!-- 微信公众号模块。默认注释,保证编译速度 -->
64 64 <!-- <dependency>-->
... ... @@ -68,21 +68,21 @@
68 68 <!-- </dependency>-->
69 69  
70 70 <!-- 商城相关模块。默认注释,保证编译速度 -->
71   -<!-- <dependency>-->
72   -<!-- <groupId>cn.iocoder.boot</groupId>-->
73   -<!-- <artifactId>yudao-module-promotion-biz</artifactId>-->
74   -<!-- <version>${revision}</version>-->
75   -<!-- </dependency>-->
76   -<!-- <dependency>-->
77   -<!-- <groupId>cn.iocoder.boot</groupId>-->
78   -<!-- <artifactId>yudao-module-product-biz</artifactId>-->
79   -<!-- <version>${revision}</version>-->
80   -<!-- </dependency>-->
81   -<!-- <dependency>-->
82   -<!-- <groupId>cn.iocoder.boot</groupId>-->
83   -<!-- <artifactId>yudao-module-trade-biz</artifactId>-->
84   -<!-- <version>${revision}</version>-->
85   -<!-- </dependency>-->
  71 + <dependency>
  72 + <groupId>cn.iocoder.boot</groupId>
  73 + <artifactId>yudao-module-promotion-biz</artifactId>
  74 + <version>${revision}</version>
  75 + </dependency>
  76 + <dependency>
  77 + <groupId>cn.iocoder.boot</groupId>
  78 + <artifactId>yudao-module-product-biz</artifactId>
  79 + <version>${revision}</version>
  80 + </dependency>
  81 + <dependency>
  82 + <groupId>cn.iocoder.boot</groupId>
  83 + <artifactId>yudao-module-trade-biz</artifactId>
  84 + <version>${revision}</version>
  85 + </dependency>
86 86  
87 87 <!-- spring boot 配置所需依赖 -->
88 88 <dependency>
... ...