Commit b4612262b31973659044efd04e8c01679e6c1cfa

Authored by YunaiV
1 parent e59f4340

✨ MEMBER:修改密码时,发送验证码无需传递 mobile,通过 user 查询

yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/user/AppMemberUserController.java
@@ -60,14 +60,14 @@ public class AppMemberUserController { @@ -60,14 +60,14 @@ public class AppMemberUserController {
60 @PutMapping("/update-password") 60 @PutMapping("/update-password")
61 @Operation(summary = "修改用户密码", description = "用户修改密码时使用") 61 @Operation(summary = "修改用户密码", description = "用户修改密码时使用")
62 @PreAuthenticated 62 @PreAuthenticated
63 - public CommonResult<Boolean> updatePassword(@RequestBody @Valid AppMemberUserUpdatePasswordReqVO reqVO) { 63 + public CommonResult<Boolean> updateUserPassword(@RequestBody @Valid AppMemberUserUpdatePasswordReqVO reqVO) {
64 userService.updateUserPassword(getLoginUserId(), reqVO); 64 userService.updateUserPassword(getLoginUserId(), reqVO);
65 return success(true); 65 return success(true);
66 } 66 }
67 67
68 @PutMapping("/reset-password") 68 @PutMapping("/reset-password")
69 @Operation(summary = "重置密码", description = "用户忘记密码时使用") 69 @Operation(summary = "重置密码", description = "用户忘记密码时使用")
70 - public CommonResult<Boolean> resetPassword(@RequestBody @Valid AppMemberUserResetPasswordReqVO reqVO) { 70 + public CommonResult<Boolean> resetUserPassword(@RequestBody @Valid AppMemberUserResetPasswordReqVO reqVO) {
71 userService.resetUserPassword(reqVO); 71 userService.resetUserPassword(reqVO);
72 return success(true); 72 return success(true);
73 } 73 }
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/auth/MemberAuthServiceImpl.java
@@ -214,11 +214,17 @@ public class MemberAuthServiceImpl implements MemberAuthService { @@ -214,11 +214,17 @@ public class MemberAuthServiceImpl implements MemberAuthService {
214 } 214 }
215 // 情况 2:如果是重置密码场景,需要校验手机号是存在的 215 // 情况 2:如果是重置密码场景,需要校验手机号是存在的
216 if (Objects.equals(reqVO.getScene(), SmsSceneEnum.MEMBER_RESET_PASSWORD.getScene())) { 216 if (Objects.equals(reqVO.getScene(), SmsSceneEnum.MEMBER_RESET_PASSWORD.getScene())) {
217 - MemberUserDO user= userService.getUserByMobile(reqVO.getMobile()); 217 + MemberUserDO user = userService.getUserByMobile(reqVO.getMobile());
218 if (user == null) { 218 if (user == null) {
219 throw exception(USER_MOBILE_NOT_EXISTS); 219 throw exception(USER_MOBILE_NOT_EXISTS);
220 } 220 }
221 } 221 }
  222 + // 情况 3:如果是修改密码场景,需要查询手机号,无需前端传递
  223 + if (Objects.equals(reqVO.getScene(), SmsSceneEnum.MEMBER_UPDATE_PASSWORD.getScene())) {
  224 + MemberUserDO user = userService.getUser(userId);
  225 + // TODO 芋艿:后续 member user 手机非强绑定,这块需要做下调整;
  226 + reqVO.setMobile(user.getMobile());
  227 + }
222 228
223 // 执行发送 229 // 执行发送
224 smsCodeApi.sendSmsCode(AuthConvert.INSTANCE.convert(reqVO).setCreateIp(getClientIP())); 230 smsCodeApi.sendSmsCode(AuthConvert.INSTANCE.convert(reqVO).setCreateIp(getClientIP()));
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/enums/sms/SmsSceneEnum.java
@@ -18,7 +18,7 @@ public enum SmsSceneEnum implements IntArrayValuable { @@ -18,7 +18,7 @@ public enum SmsSceneEnum implements IntArrayValuable {
18 18
19 MEMBER_LOGIN(1, "user-sms-login", "会员用户 - 手机号登陆"), 19 MEMBER_LOGIN(1, "user-sms-login", "会员用户 - 手机号登陆"),
20 MEMBER_UPDATE_MOBILE(2, "user-update-mobile", "会员用户 - 修改手机"), 20 MEMBER_UPDATE_MOBILE(2, "user-update-mobile", "会员用户 - 修改手机"),
21 - MEMBER_UPDATE_PASSWORD(3, "user-update-mobile", "会员用户 - 修改密码"), 21 + MEMBER_UPDATE_PASSWORD(3, "user-update-password", "会员用户 - 修改密码"),
22 MEMBER_RESET_PASSWORD(4, "user-reset-password", "会员用户 - 忘记密码"), 22 MEMBER_RESET_PASSWORD(4, "user-reset-password", "会员用户 - 忘记密码"),
23 23
24 ADMIN_MEMBER_LOGIN(21, "admin-sms-login", "后台用户 - 手机号登录"); 24 ADMIN_MEMBER_LOGIN(21, "admin-sms-login", "后台用户 - 手机号登录");