Commit c5e85f3bfb11eaab7df067872cf07106ff7fc685

Authored by YunaiV
1 parent 4257cad4

code review:签到配置

Showing 13 changed files with 134 additions and 136 deletions
sql/mysql/ruoyi-vue-pro.sql
... ... @@ -1640,11 +1640,11 @@ INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_i
1640 1640 INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2276, '积分设置查询', 'member:point:config:get', 3, 1, 2275, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-06-10 02:07:44', '', '2023-06-10 02:07:44', b'0');
1641 1641 INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2277, '积分设置创建', 'member:point:config:save', 3, 2, 2275, '', '', '', '', 0, b'1', b'1', b'1', '', '2023-06-10 02:07:44', '1', '2023-06-27 20:32:31', b'0');
1642 1642 INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2281, '签到配置', '', 2, 2, 2300, 'sign-in-config', '', 'member/signin/config/index', 'SignInConfig', 0, b'1', b'1', b'1', '', '2023-06-10 03:26:12', '1', '2023-07-02 15:04:15', b'0');
1643   -INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2282, '积分签到规则查询', 'member:point:sign-in-config:query', 3, 1, 2281, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-06-10 03:26:12', '', '2023-06-10 03:26:12', b'0');
1644   -INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2283, '积分签到规则创建', 'member:point:sign-in-config:create', 3, 2, 2281, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-06-10 03:26:12', '', '2023-06-10 03:26:12', b'0');
1645   -INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2284, '积分签到规则更新', 'member:point:sign-in-config:update', 3, 3, 2281, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-06-10 03:26:12', '', '2023-06-10 03:26:12', b'0');
1646   -INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2285, '积分签到规则删除', 'member:point:sign-in-config:delete', 3, 4, 2281, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-06-10 03:26:12', '', '2023-06-10 03:26:12', b'0');
1647   -INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2286, '积分签到规则获取', 'member:point:sign-in-config:get', 3, 5, 2281, '', '', '', '', 0, b'1', b'1', b'1', '', '2023-06-10 03:26:12', '1', '2023-08-19 09:48:32', b'0');
  1643 +INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2282, '签到规则查询', 'member:point:sign-in-config:query', 3, 1, 2281, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-06-10 03:26:12', '', '2023-06-10 03:26:12', b'0');
  1644 +INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2283, '签到规则创建', 'member:point:sign-in-config:create', 3, 2, 2281, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-06-10 03:26:12', '', '2023-06-10 03:26:12', b'0');
  1645 +INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2284, '签到规则更新', 'member:point:sign-in-config:update', 3, 3, 2281, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-06-10 03:26:12', '', '2023-06-10 03:26:12', b'0');
  1646 +INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2285, '签到规则删除', 'member:point:sign-in-config:delete', 3, 4, 2281, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-06-10 03:26:12', '', '2023-06-10 03:26:12', b'0');
  1647 +INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2286, '签到规则获取', 'member:point:sign-in-config:get', 3, 5, 2281, '', '', '', '', 0, b'1', b'1', b'1', '', '2023-06-10 03:26:12', '1', '2023-08-19 09:48:32', b'0');
1648 1648 INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2287, '积分记录', '', 2, 1, 2299, 'record', '', 'member/point/record/index', 'PointRecord', 0, b'1', b'1', b'1', '', '2023-06-10 04:18:50', '1', '2023-06-27 22:51:07', b'0');
1649 1649 INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2288, '用户积分记录查询', 'member:point:record:query', 3, 1, 2287, '', '', '', NULL, 0, b'1', b'1', b'1', '', '2023-06-10 04:18:50', '', '2023-06-10 04:18:50', b'0');
1650 1650 INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2293, '签到记录', '', 2, 3, 2300, 'sign-in-record', '', 'member/signin/record/index', 'SignInRecord', 0, b'1', b'1', b'1', '', '2023-06-10 04:48:22', '1', '2023-07-02 15:04:10', b'0');
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/signin/MemberSignInConfigController.java
... ... @@ -20,7 +20,7 @@ import java.util.List;
20 20  
21 21 import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
22 22  
23   -@Tag(name = "管理后台 - 积分签到规则")
  23 +@Tag(name = "管理后台 - 签到规则")
24 24 @RestController
25 25 @RequestMapping("/member/point/sign-in-config")
26 26 @Validated
... ... @@ -30,14 +30,14 @@ public class MemberSignInConfigController {
30 30 private MemberSignInConfigService signInConfigService;
31 31  
32 32 @PostMapping("/create")
33   - @Operation(summary = "创建积分签到规则")
  33 + @Operation(summary = "创建签到规则")
34 34 @PreAuthorize("@ss.hasPermission('point:sign-in-config:create')")
35 35 public CommonResult<Long> createSignInConfig(@Valid @RequestBody MemberSignInConfigCreateReqVO createReqVO) {
36 36 return success(signInConfigService.createSignInConfig(createReqVO));
37 37 }
38 38  
39 39 @PutMapping("/update")
40   - @Operation(summary = "更新积分签到规则")
  40 + @Operation(summary = "更新签到规则")
41 41 @PreAuthorize("@ss.hasPermission('point:sign-in-config:update')")
42 42 public CommonResult<Boolean> updateSignInConfig(@Valid @RequestBody MemberSignInConfigUpdateReqVO updateReqVO) {
43 43 signInConfigService.updateSignInConfig(updateReqVO);
... ... @@ -45,7 +45,7 @@ public class MemberSignInConfigController {
45 45 }
46 46  
47 47 @DeleteMapping("/delete")
48   - @Operation(summary = "删除积分签到规则")
  48 + @Operation(summary = "删除签到规则")
49 49 @Parameter(name = "id", description = "编号", required = true)
50 50 @PreAuthorize("@ss.hasPermission('point:sign-in-config:delete')")
51 51 public CommonResult<Boolean> deleteSignInConfig(@RequestParam("id") Long id) {
... ... @@ -54,7 +54,7 @@ public class MemberSignInConfigController {
54 54 }
55 55  
56 56 @GetMapping("/get")
57   - @Operation(summary = "获得积分签到规则")
  57 + @Operation(summary = "获得签到规则")
58 58 @Parameter(name = "id", description = "编号", required = true, example = "1024")
59 59 @PreAuthorize("@ss.hasPermission('point:sign-in-config:query')")
60 60 public CommonResult<MemberSignInConfigRespVO> getSignInConfig(@RequestParam("id") Long id) {
... ... @@ -63,7 +63,7 @@ public class MemberSignInConfigController {
63 63 }
64 64  
65 65 @GetMapping("/list")
66   - @Operation(summary = "获得积分签到规则分页")
  66 + @Operation(summary = "获得签到规则列表")
67 67 @PreAuthorize("@ss.hasPermission('point:sign-in-config:query')")
68 68 public CommonResult<List<MemberSignInConfigRespVO>> getSignInConfigList() {
69 69 List<MemberSignInConfigDO> pageResult = signInConfigService.getSignInConfigList();
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/signin/vo/config/MemberSignInConfigBaseVO.java
1 1 package cn.iocoder.yudao.module.member.controller.admin.signin.vo.config;
2 2  
  3 +import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
  4 +import cn.iocoder.yudao.framework.common.validation.InEnum;
3 5 import io.swagger.v3.oas.annotations.media.Schema;
4 6 import lombok.Data;
5 7  
6 8 import javax.validation.constraints.NotNull;
7 9  
8 10 /**
9   - * 积分签到规则 Base VO,提供给添加、修改、详细的子 VO 使用
  11 + * 签到规则 Base VO,提供给添加、修改、详细的子 VO 使用
10 12 * 如果子 VO 存在差异的字段,请不要添加到这里,影响 Swagger 文档生成
11 13 */
12 14 @Data
13 15 public class MemberSignInConfigBaseVO {
14   -
  16 +
15 17 @Schema(description = "签到第 x 天", requiredMode = Schema.RequiredMode.REQUIRED, example = "7")
16 18 @NotNull(message = "签到天数不能为空")
17 19 private Integer day;
... ... @@ -20,8 +22,9 @@ public class MemberSignInConfigBaseVO {
20 22 @NotNull(message = "奖励积分不能为空")
21 23 private Integer point;
22 24  
23   - @NotNull
24   - @Schema(description = "是否启用", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
25   - private Boolean enable;
  25 + @Schema(description = "状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
  26 + @NotNull(message = "状态不能为空")
  27 + @InEnum(CommonStatusEnum.class)
  28 + private Integer status;
26 29  
27 30 }
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/signin/vo/config/MemberSignInConfigCreateReqVO.java
... ... @@ -3,7 +3,7 @@ package cn.iocoder.yudao.module.member.controller.admin.signin.vo.config;
3 3 import lombok.*;
4 4 import io.swagger.v3.oas.annotations.media.Schema;
5 5  
6   -@Schema(description = "管理后台 - 积分签到规则创建 Request VO")
  6 +@Schema(description = "管理后台 - 签到规则创建 Request VO")
7 7 @Data
8 8 @EqualsAndHashCode(callSuper = true)
9 9 @ToString(callSuper = true)
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/signin/vo/config/MemberSignInConfigRespVO.java
... ... @@ -4,7 +4,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
4 4 import lombok.*;
5 5 import java.time.LocalDateTime;
6 6  
7   -@Schema(description = "管理后台 - 积分签到规则 Response VO")
  7 +@Schema(description = "管理后台 - 签到规则 Response VO")
8 8 @Data
9 9 @EqualsAndHashCode(callSuper = true)
10 10 @ToString(callSuper = true)
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/signin/vo/config/MemberSignInConfigUpdateReqVO.java
... ... @@ -5,7 +5,7 @@ import lombok.*;
5 5  
6 6 import javax.validation.constraints.*;
7 7  
8   -@Schema(description = "管理后台 - 积分签到规则更新 Request VO")
  8 +@Schema(description = "管理后台 - 签到规则更新 Request VO")
9 9 @Data
10 10 @EqualsAndHashCode(callSuper = true)
11 11 @ToString(callSuper = true)
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/convert/signin/MemberSignInConfigConvert.java
... ... @@ -10,7 +10,7 @@ import org.mapstruct.factory.Mappers;
10 10 import java.util.List;
11 11  
12 12 /**
13   - * 积分签到规则 Convert
  13 + * 签到规则 Convert
14 14 *
15 15 * @author QingX
16 16 */
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/signin/MemberSignInConfigDO.java
1 1 package cn.iocoder.yudao.module.member.dal.dataobject.signin;
2 2  
  3 +import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
3 4 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
4 5 import com.baomidou.mybatisplus.annotation.KeySequence;
5 6 import com.baomidou.mybatisplus.annotation.TableId;
... ... @@ -7,7 +8,7 @@ import com.baomidou.mybatisplus.annotation.TableName;
7 8 import lombok.*;
8 9  
9 10 /**
10   - * 积分签到规则 DO
  11 + * 签到规则 DO
11 12 *
12 13 * @author QingX
13 14 */
... ... @@ -27,7 +28,7 @@ public class MemberSignInConfigDO extends BaseDO {
27 28 @TableId
28 29 private Long id;
29 30 /**
30   - * 签到第x天
  31 + * 签到第 x 天
31 32 */
32 33 private Integer day;
33 34 /**
... ... @@ -36,8 +37,10 @@ public class MemberSignInConfigDO extends BaseDO {
36 37 private Integer point;
37 38  
38 39 /**
39   - * 是否启用
  40 + * 状态
  41 + *
  42 + * 枚举 {@link CommonStatusEnum}
40 43 */
41   - private Boolean enable;
  44 + private Integer status;
42 45  
43 46 }
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/signin/MemberSignInConfigMapper.java
... ... @@ -5,7 +5,7 @@ import cn.iocoder.yudao.module.member.dal.dataobject.signin.MemberSignInConfigDO
5 5 import org.apache.ibatis.annotations.Mapper;
6 6  
7 7 /**
8   - * 积分签到规则 Mapper
  8 + * 签到规则 Mapper
9 9 *
10 10 * @author QingX
11 11 */
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/signin/MemberSignInConfigService.java
... ... @@ -8,14 +8,14 @@ import javax.validation.Valid;
8 8 import java.util.List;
9 9  
10 10 /**
11   - * 积分签到规则 Service 接口
  11 + * 签到规则 Service 接口
12 12 *
13 13 * @author QingX
14 14 */
15 15 public interface MemberSignInConfigService {
16 16  
17 17 /**
18   - * 创建积分签到规则
  18 + * 创建签到规则
19 19 *
20 20 * @param createReqVO 创建信息
21 21 * @return 编号
... ... @@ -23,31 +23,31 @@ public interface MemberSignInConfigService {
23 23 Long createSignInConfig(@Valid MemberSignInConfigCreateReqVO createReqVO);
24 24  
25 25 /**
26   - * 更新积分签到规则
  26 + * 更新签到规则
27 27 *
28 28 * @param updateReqVO 更新信息
29 29 */
30 30 void updateSignInConfig(@Valid MemberSignInConfigUpdateReqVO updateReqVO);
31 31  
32 32 /**
33   - * 删除积分签到规则
  33 + * 删除签到规则
34 34 *
35 35 * @param id 编号
36 36 */
37 37 void deleteSignInConfig(Long id);
38 38  
39 39 /**
40   - * 获得积分签到规则
  40 + * 获得签到规则
41 41 *
42 42 * @param id 编号
43   - * @return 积分签到规则
  43 + * @return 签到规则
44 44 */
45 45 MemberSignInConfigDO getSignInConfig(Long id);
46 46  
47 47 /**
48   - * 获得积分签到规则分页
  48 + * 获得签到规则分页
49 49 *
50   - * @return 积分签到规则分页
  50 + * @return 签到规则分页
51 51 */
52 52 List<MemberSignInConfigDO> getSignInConfigList();
53 53  
... ...
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/signin/MemberSignInConfigServiceImpl.java
... ... @@ -17,7 +17,7 @@ import static cn.iocoder.yudao.module.member.enums.ErrorCodeConstants.SIGN_IN_CO
17 17 import static cn.iocoder.yudao.module.member.enums.ErrorCodeConstants.SIGN_IN_CONFIG_NOT_EXISTS;
18 18  
19 19 /**
20   - * 积分签到规则 Service 实现类
  20 + * 签到规则 Service 实现类
21 21 *
22 22 * @author QingX
23 23 */
... ... @@ -73,13 +73,13 @@ public class MemberSignInConfigServiceImpl implements MemberSignInConfigService
73 73 * @param id 编号,只有更新的时候会传递
74 74 */
75 75 private void validateSignInConfigDayDuplicate(Integer day, Long id) {
76   - MemberSignInConfigDO configDO = signInConfigMapper.selectByDay(day);
77   - // 1. 新增时,configDO 非空,则说明重复
78   - if (id == null && configDO != null) {
  76 + MemberSignInConfigDO config = signInConfigMapper.selectByDay(day);
  77 + // 1. 新增时,config 非空,则说明重复
  78 + if (id == null && config != null) {
79 79 throw exception(SIGN_IN_CONFIG_EXISTS);
80 80 }
81   - // 2. 更新时,如果 configDO 非空,且 id 不相等,则说明重复
82   - if (id != null && configDO != null && !configDO.getId().equals(id)) {
  81 + // 2. 更新时,如果 config 非空,且 id 不相等,则说明重复
  82 + if (id != null && config != null && !config.getId().equals(id)) {
83 83 throw exception(SIGN_IN_CONFIG_EXISTS);
84 84 }
85 85 }
... ...
yudao-module-member/yudao-module-member-biz/src/test/java/cn/iocoder/yudao/module/member/service/auth/MemberAuthServiceTest.java
... ... @@ -5,16 +5,13 @@ import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
5 5 import cn.iocoder.yudao.framework.common.util.collection.ArrayUtils;
6 6 import cn.iocoder.yudao.framework.redis.config.YudaoRedisAutoConfiguration;
7 7 import cn.iocoder.yudao.framework.test.core.ut.BaseDbAndRedisUnitTest;
8   -import cn.iocoder.yudao.module.member.controller.app.user.vo.AppMemberUserResetPasswordReqVO;
9   -import cn.iocoder.yudao.module.member.controller.app.user.vo.AppMemberUserUpdatePasswordReqVO;
10 8 import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO;
11 9 import cn.iocoder.yudao.module.member.dal.mysql.user.MemberUserMapper;
12 10 import cn.iocoder.yudao.module.member.service.user.MemberUserService;
13   -import cn.iocoder.yudao.module.system.api.oauth2.OAuth2TokenApi;
14 11 import cn.iocoder.yudao.module.system.api.logger.LoginLogApi;
  12 +import cn.iocoder.yudao.module.system.api.oauth2.OAuth2TokenApi;
15 13 import cn.iocoder.yudao.module.system.api.sms.SmsCodeApi;
16 14 import cn.iocoder.yudao.module.system.api.social.SocialUserApi;
17   -import org.junit.jupiter.api.Test;
18 15 import org.springframework.boot.test.mock.mockito.MockBean;
19 16 import org.springframework.context.annotation.Import;
20 17 import org.springframework.security.crypto.password.PasswordEncoder;
... ... @@ -23,11 +20,8 @@ import javax.annotation.Resource;
23 20 import java.util.function.Consumer;
24 21  
25 22 import static cn.hutool.core.util.RandomUtil.randomEle;
26   -import static cn.hutool.core.util.RandomUtil.randomNumbers;
27 23 import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.randomPojo;
28 24 import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.randomString;
29   -import static org.junit.jupiter.api.Assertions.assertEquals;
30   -import static org.mockito.Mockito.when;
31 25  
32 26 // TODO @芋艿:单测的 review,等逻辑都达成一致后
33 27 /**
... ... @@ -61,55 +55,56 @@ public class MemberAuthServiceTest extends BaseDbAndRedisUnitTest {
61 55 @Resource
62 56 private MemberUserMapper memberUserMapper;
63 57  
64   - @Test
65   - public void testUpdatePassword_success(){
66   - // 准备参数
67   - MemberUserDO userDO = randomUserDO();
68   - memberUserMapper.insert(userDO);
69   -
70   - // 新密码
71   - String newPassword = randomString();
72   -
73   - // 请求实体
74   - AppMemberUserUpdatePasswordReqVO reqVO = AppMemberUserUpdatePasswordReqVO.builder()
75   - .oldPassword(userDO.getPassword())
76   - .password(newPassword)
77   - .build();
78   -
79   - // 测试桩
80   - // 这两个相等是为了返回ture这个结果
81   - when(passwordEncoder.matches(reqVO.getOldPassword(),reqVO.getOldPassword())).thenReturn(true);
82   - when(passwordEncoder.encode(newPassword)).thenReturn(newPassword);
83   -
84   - // 更新用户密码
85   - authService.updatePassword(userDO.getId(), reqVO);
86   - assertEquals(memberUserMapper.selectById(userDO.getId()).getPassword(),newPassword);
87   - }
88   -
89   - @Test
90   - public void testResetPassword_success(){
91   - // 准备参数
92   - MemberUserDO userDO = randomUserDO();
93   - memberUserMapper.insert(userDO);
94   -
95   - // 随机密码
96   - String password = randomNumbers(11);
97   - // 随机验证码
98   - String code = randomNumbers(4);
99   -
100   - // mock
101   - when(passwordEncoder.encode(password)).thenReturn(password);
102   -
103   - // 更新用户密码
104   - AppMemberUserResetPasswordReqVO reqVO = new AppMemberUserResetPasswordReqVO();
105   - reqVO.setMobile(userDO.getMobile());
106   - reqVO.setPassword(password);
107   - reqVO.setCode(code);
108   -
109   - authService.resetPassword(reqVO);
110   - assertEquals(memberUserMapper.selectById(userDO.getId()).getPassword(),password);
111   - }
112   -
  58 + // TODO 芋艿:后续重构这个单测
  59 +// @Test
  60 +// public void testUpdatePassword_success(){
  61 +// // 准备参数
  62 +// MemberUserDO userDO = randomUserDO();
  63 +// memberUserMapper.insert(userDO);
  64 +//
  65 +// // 新密码
  66 +// String newPassword = randomString();
  67 +//
  68 +// // 请求实体
  69 +// AppMemberUserUpdatePasswordReqVO reqVO = AppMemberUserUpdatePasswordReqVO.builder()
  70 +// .oldPassword(userDO.getPassword())
  71 +// .password(newPassword)
  72 +// .build();
  73 +//
  74 +// // 测试桩
  75 +// // 这两个相等是为了返回ture这个结果
  76 +// when(passwordEncoder.matches(reqVO.getOldPassword(),reqVO.getOldPassword())).thenReturn(true);
  77 +// when(passwordEncoder.encode(newPassword)).thenReturn(newPassword);
  78 +//
  79 +// // 更新用户密码
  80 +// authService.updatePassword(userDO.getId(), reqVO);
  81 +// assertEquals(memberUserMapper.selectById(userDO.getId()).getPassword(),newPassword);
  82 +// }
  83 +
  84 + // TODO 芋艿:后续重构这个单测
  85 +// @Test
  86 +// public void testResetPassword_success(){
  87 +// // 准备参数
  88 +// MemberUserDO userDO = randomUserDO();
  89 +// memberUserMapper.insert(userDO);
  90 +//
  91 +// // 随机密码
  92 +// String password = randomNumbers(11);
  93 +// // 随机验证码
  94 +// String code = randomNumbers(4);
  95 +//
  96 +// // mock
  97 +// when(passwordEncoder.encode(password)).thenReturn(password);
  98 +//
  99 +// // 更新用户密码
  100 +// AppMemberUserResetPasswordReqVO reqVO = new AppMemberUserResetPasswordReqVO();
  101 +// reqVO.setMobile(userDO.getMobile());
  102 +// reqVO.setPassword(password);
  103 +// reqVO.setCode(code);
  104 +//
  105 +// authService.resetPassword(reqVO);
  106 +// assertEquals(memberUserMapper.selectById(userDO.getId()).getPassword(),password);
  107 +// }
113 108  
114 109 // ========== 随机对象 ==========
115 110  
... ...
yudao-module-member/yudao-module-member-biz/src/test/java/cn/iocoder/yudao/module/member/service/user/MemberUserServiceImplTest.java
... ... @@ -18,15 +18,12 @@ import org.springframework.data.redis.core.StringRedisTemplate;
18 18 import org.springframework.security.crypto.password.PasswordEncoder;
19 19  
20 20 import javax.annotation.Resource;
21   -import java.io.ByteArrayInputStream;
22 21 import java.util.function.Consumer;
23 22  
24   -import static cn.hutool.core.util.RandomUtil.*;
  23 +import static cn.hutool.core.util.RandomUtil.randomEle;
  24 +import static cn.hutool.core.util.RandomUtil.randomNumbers;
25 25 import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.randomPojo;
26   -import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.randomString;
27 26 import static org.junit.jupiter.api.Assertions.assertEquals;
28   -import static org.mockito.Mockito.eq;
29   -import static org.mockito.Mockito.when;
30 27  
31 28 // TODO @芋艿:单测的 review,等逻辑都达成一致后
32 29 /**
... ... @@ -57,41 +54,42 @@ public class MemberUserServiceImplTest extends BaseDbAndRedisUnitTest {
57 54 @MockBean
58 55 private FileApi fileApi;
59 56  
60   - @Test
61   - public void testUpdateNickName_success(){
62   - // mock 数据
63   - MemberUserDO userDO = randomUserDO();
64   - userMapper.insert(userDO);
65   -
66   - // 随机昵称
67   - String newNickName = randomString();
68   -
69   - // 调用接口修改昵称
70   - memberUserService.updateUser(userDO.getId(),newNickName);
71   - // 查询新修改后的昵称
72   - String nickname = memberUserService.getUser(userDO.getId()).getNickname();
73   - // 断言
74   - assertEquals(newNickName,nickname);
75   - }
76   -
77   - @Test
78   - public void testUpdateAvatar_success() throws Exception {
79   - // mock 数据
80   - MemberUserDO dbUser = randomUserDO();
81   - userMapper.insert(dbUser);
82   -
83   - // 准备参数
84   - Long userId = dbUser.getId();
85   - byte[] avatarFileBytes = randomBytes(10);
86   - ByteArrayInputStream avatarFile = new ByteArrayInputStream(avatarFileBytes);
87   - // mock 方法
88   - String avatar = randomString();
89   - when(fileApi.createFile(eq(avatarFileBytes))).thenReturn(avatar);
90   - // 调用
91   - String str = memberUserService.updateUserAvatar(userId, avatarFile);
92   - // 断言
93   - assertEquals(avatar, str);
94   - }
  57 + // TODO 芋艿:后续重构这个单测
  58 +// @Test
  59 +// public void testUpdateNickName_success(){
  60 +// // mock 数据
  61 +// MemberUserDO userDO = randomUserDO();
  62 +// userMapper.insert(userDO);
  63 +//
  64 +// // 随机昵称
  65 +// String newNickName = randomString();
  66 +//
  67 +// // 调用接口修改昵称
  68 +// memberUserService.updateUser(userDO.getId(),newNickName);
  69 +// // 查询新修改后的昵称
  70 +// String nickname = memberUserService.getUser(userDO.getId()).getNickname();
  71 +// // 断言
  72 +// assertEquals(newNickName,nickname);
  73 +// }
  74 +//
  75 +// @Test
  76 +// public void testUpdateAvatar_success() throws Exception {
  77 +// // mock 数据
  78 +// MemberUserDO dbUser = randomUserDO();
  79 +// userMapper.insert(dbUser);
  80 +//
  81 +// // 准备参数
  82 +// Long userId = dbUser.getId();
  83 +// byte[] avatarFileBytes = randomBytes(10);
  84 +// ByteArrayInputStream avatarFile = new ByteArrayInputStream(avatarFileBytes);
  85 +// // mock 方法
  86 +// String avatar = randomString();
  87 +// when(fileApi.createFile(eq(avatarFileBytes))).thenReturn(avatar);
  88 +// // 调用
  89 +// String str = memberUserService.updateUserAvatar(userId, avatarFile);
  90 +// // 断言
  91 +// assertEquals(avatar, str);
  92 +// }
95 93  
96 94 @Test
97 95 public void updateMobile_success(){
... ... @@ -117,7 +115,6 @@ public class MemberUserServiceImplTest extends BaseDbAndRedisUnitTest {
117 115 AppMemberUserUpdateMobileReqVO reqVO = new AppMemberUserUpdateMobileReqVO();
118 116 reqVO.setMobile(newMobile);
119 117 reqVO.setCode(newCode);
120   - reqVO.setOldMobile(oldMobile);
121 118 reqVO.setOldCode(oldCode);
122 119 memberUserService.updateUserMobile(userDO.getId(),reqVO);
123 120  
... ...