Browse Source

短信服务修改

wwl 4 years ago
parent
commit
1e7762017c

+ 0 - 50
hzgzpt-admin/src/main/java/com/miaxis/app/controller/sms/SmsController.java

@@ -1,50 +0,0 @@
-package com.miaxis.app.controller.sms;
-
-import com.miaxis.app.sms.ISmsService;
-import com.miaxis.common.constant.Constants;
-import com.miaxis.common.core.domain.Response;
-import com.miaxis.common.core.domain.entity.SysUser;
-import com.miaxis.common.utils.SecurityUtils;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiImplicitParam;
-import io.swagger.annotations.ApiImplicitParams;
-import io.swagger.annotations.ApiOperation;
-import lombok.AllArgsConstructor;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-/**
- * @Author wwl
- * @Date 2020/12/23
- * @Version 1.0
- */
-@RestController
-@RequestMapping(Constants.OPEN_PREFIX+"/sms")
-@Api(tags={"【短信服务】Controller"})
-@AllArgsConstructor
-public class SmsController {
-    private final ISmsService smsService;
-
-
-    /**
-     * 获取短信验证码
-     * @return
-     */
-    @ApiOperation("获取短信验证码")
-    @ApiImplicitParams({
-            @ApiImplicitParam(name = "type",value = "login:用户登录验证码、modify:修改手机验证码" ,dataType = "String",required = true),
-            @ApiImplicitParam(name = "phone", value = "手机号码", required = true, dataType = "String")
-    })
-    @PostMapping(value = "/sendVerificationCode")
-    public Response sendVerificationCode(String type,String phone){
-        //获取当前用户
-        SysUser user = SecurityUtils.getLoginUser().getUser();
-
-        return smsService.sendVerificationCode(user,type,phone);
-    }
-
-
-
-
-}

+ 5 - 0
hzgzpt-common/src/main/java/com/miaxis/common/constant/SmsTemplateConstants.java

@@ -9,6 +9,11 @@ package com.miaxis.common.constant;
  */
 public class SmsTemplateConstants {
 
+    /**
+     * 短信模板类型(可拓展)
+     */
+    public static final String[] smsTemplateType = {"login","modify"};
+
     /**
      * 登录短信模板
      */

+ 1 - 2
hzgzpt-service-app/src/main/java/com/miaxis/app/sms/ISmsService.java

@@ -13,10 +13,9 @@ public interface ISmsService {
 
     /**
      * 发送短信验证码
-     * @param user
      * @param type
      * @param phone
      * @return
      */
-    Response sendVerificationCode(SysUser user, String type, String phone);
+    Response sendVerificationCode(String type, String phone);
 }

+ 14 - 8
hzgzpt-service-app/src/main/java/com/miaxis/app/sms/impl/SmsServiceImpl.java

@@ -13,12 +13,11 @@ import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Service;
 
 import java.net.URLEncoder;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Random;
+import java.util.*;
 import java.util.concurrent.TimeUnit;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
+import java.util.stream.Collectors;
 
 /**
  * 短信服务层接口实现
@@ -46,16 +45,26 @@ public class SmsServiceImpl implements ISmsService {
 
     /**
      * 发送短信验证码
-     * @param user
      * @param type
      * @param phone
      * @return
      */
     @Override
-    public Response sendVerificationCode(SysUser user, String type, String phone) {
+    public Response sendVerificationCode(String type, String phone) {
         //字符编码
         String charset = "UTF-8";
 
+        //type验证
+        List<String> collect = Arrays.stream(SmsTemplateConstants.smsTemplateType)
+                .parallel()
+                .filter(str -> str.equals(type))
+                .collect(Collectors.toList());
+        System.out.println(collect);
+        if (collect.size()==0){
+            return Response.error(500,"参数{type}类型错误");
+        }
+
+
         //手机号格式验证
         if(phone.length() != 11){
             return Response.error(500,"手机格式错误");
@@ -83,9 +92,6 @@ public class SmsServiceImpl implements ISmsService {
                 smsTemplateStr = SmsTemplateConstants.login;
             }
             if (type.equals("modify")){
-                if (user.getPhonenumber().equals(phone)){
-                    return Response.error(500,"该手机号与当前绑定的手机号相同");
-                }
                 map.put("keyPrefix",Constants.SMS_MODIFY_CODE);
                 map.put("verificationCount",Constants.SMS_MODIFY_CODE_COUNT);
                 smsTemplateStr = SmsTemplateConstants.modify;