From 071f15347e9d0f9332b6daea79bb0983515a217e Mon Sep 17 00:00:00 2001 From: lele0521 Date: Mon, 4 Dec 2023 16:05:17 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=96=B0=E5=A2=9E=E4=BC=9A=E5=91=98?= =?UTF-8?q?=E7=BB=91=E5=AE=9A=E6=89=8B=E6=9C=BA=E5=8F=B7=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../passport/MemberBuyerController.java | 22 +++++++++++++++++++ .../sms/impl/SmsUtilAliImplService.java | 1 + .../entity/enums/VerificationEnums.java | 4 +++- 3 files changed, 26 insertions(+), 1 deletion(-) diff --git a/buyer-api/src/main/java/cn/lili/controller/passport/MemberBuyerController.java b/buyer-api/src/main/java/cn/lili/controller/passport/MemberBuyerController.java index a04b60c9a..38f06a147 100644 --- a/buyer-api/src/main/java/cn/lili/controller/passport/MemberBuyerController.java +++ b/buyer-api/src/main/java/cn/lili/controller/passport/MemberBuyerController.java @@ -154,6 +154,28 @@ public class MemberBuyerController { } } + @ApiOperation(value = "绑定手机号") + @ApiImplicitParams({ + @ApiImplicitParam(name = "username", value = "用户名", required = true, paramType = "query"), + @ApiImplicitParam(name = "mobile", value = "手机号", required = true, paramType = "query"), + @ApiImplicitParam(name = "code", value = "验证码", required = true, paramType = "query"), + }) + @PostMapping("/bindMobile") + public ResultMessage bindMobile(@NotNull(message = "用户名不能为空") @RequestParam String username, + @NotNull(message = "手机号为空") @RequestParam String mobile, + @NotNull(message = "验证码为空") @RequestParam String code, + @RequestHeader String uuid) { + if (smsUtil.verifyCode(mobile, VerificationEnums.BIND_MOBILE, uuid, code)) { + Member member = memberService.findByUsername(username); + if (member == null) { + throw new ServiceException(ResultCode.USER_NOT_EXIST); + } + return ResultUtil.data(memberService.changeMobile(member.getId(), mobile)); + } else { + throw new ServiceException(ResultCode.VERIFICATION_SMS_CHECKED_ERROR); + } + } + @ApiOperation(value = "注册用户") @ApiImplicitParams({ @ApiImplicitParam(name = "username", value = "用户名", required = true, paramType = "query"), diff --git a/framework/src/main/java/cn/lili/modules/sms/impl/SmsUtilAliImplService.java b/framework/src/main/java/cn/lili/modules/sms/impl/SmsUtilAliImplService.java index 65fe31baf..20eb1b95f 100644 --- a/framework/src/main/java/cn/lili/modules/sms/impl/SmsUtilAliImplService.java +++ b/framework/src/main/java/cn/lili/modules/sms/impl/SmsUtilAliImplService.java @@ -82,6 +82,7 @@ public class SmsUtilAliImplService implements SmsUtil { break; } //注册 + case BIND_MOBILE: case REGISTER: { templateCode = smsTemplateProperties.getREGISTER(); break; diff --git a/framework/src/main/java/cn/lili/modules/verification/entity/enums/VerificationEnums.java b/framework/src/main/java/cn/lili/modules/verification/entity/enums/VerificationEnums.java index 48b6b92b6..fd3d617e5 100644 --- a/framework/src/main/java/cn/lili/modules/verification/entity/enums/VerificationEnums.java +++ b/framework/src/main/java/cn/lili/modules/verification/entity/enums/VerificationEnums.java @@ -15,12 +15,14 @@ public enum VerificationEnums { * 找回用户 * 修改密码 * 支付钱包密码 + * 绑定手机号 */ LOGIN, REGISTER, FIND_USER, UPDATE_PASSWORD, - WALLET_PASSWORD; + WALLET_PASSWORD, + BIND_MOBILE; }