Bläddra i källkod

fix 手机号重置密码先进行校验

18339543638 3 år sedan
förälder
incheckning
98179a92c2

+ 18 - 0
nb-service/app-assistant/src/main/java/com/nb/app/assistant/controller/CaptchaController.java

@@ -1,12 +1,16 @@
 package com.nb.app.assistant.controller;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.nb.app.assistant.controller.vo.CaptureVo;
 import com.nb.app.assistant.controller.vo.ResetCaptchaVo;
 import com.nb.app.assistant.controller.vo.ResetPswVo;
+import com.nb.app.assistant.entity.AssistantUserEntity;
 import com.nb.app.assistant.enums.CaptchaEnum;
+import com.nb.app.assistant.service.LocalAssistantUserService;
 import com.nb.app.assistant.sms.SmsHelper;
 import com.nb.app.assistant.utils.CaptchaUtil;
 import com.nb.app.assistant.utils.ResetPswUtil;
+import com.nb.core.exception.CustomException;
 import com.nb.core.result.R;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -17,6 +21,8 @@ import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import javax.validation.constraints.NotNull;
+
 /**
  * @author lifang
  * @version 1.0.0
@@ -34,9 +40,21 @@ public class CaptchaController {
     private final ResetPswUtil resetPswUtil;
 
     private final SmsHelper smsHelper;
+
+    private final LocalAssistantUserService assistantUserService;
     @PostMapping("/create")
     @ApiOperation("获取短信验证码")
     public R<String> capture(@RequestBody @Validated CaptureVo vo){
+       CaptchaEnum type = vo.getType();
+       if(CaptchaEnum.FORGET_PSW.equals(type)){
+           //判断手机号账户是否存在
+           AssistantUserEntity user = assistantUserService.getOne(new QueryWrapper<AssistantUserEntity>()
+                   .lambda()
+                   .eq(AssistantUserEntity::getPhone, vo.getPhone()));
+           if(user==null){
+               throw new CustomException("该手机号尚未注册");
+           }
+       }
         String code = captchaUtil.getCode(vo.getType(), vo.getPhone());
         smsHelper.sendVerifyCode(vo.getPhone(),code);
         return R.success(code);