소스 검색

密码校验

785834757 1 년 전
부모
커밋
065795eeb8
1개의 변경된 파일과 10개의 추가작업 그리고 0개의 파일을 삭제
  1. 10 0
      authentication/src/main/java/com/jzg/controller/AuthController.java

+ 10 - 0
authentication/src/main/java/com/jzg/controller/AuthController.java

@@ -49,6 +49,7 @@ import java.io.IOException;
 import java.util.List;
 import java.util.Objects;
 import java.util.concurrent.TimeUnit;
+import java.util.regex.Pattern;
 
 
 /**
@@ -147,11 +148,20 @@ public class AuthController extends BaseController {
                 .eq(SysUser::getUsername, userName)
                 .or()
                 .eq(SysUser::getMobile, userName));
+
+        //检验密码
+        String PASSWORD_PATTERN = "^(?=.*[A-Za-z])(?=.*\\d)[A-Za-z\\d]{8,20}$";
+        Pattern pattern = Pattern.compile(PASSWORD_PATTERN);
+        if(!pattern.matcher(modifyPassWordFormVo.getNewPassWord()).matches()){
+            throw new SystemException("密码格式错误");
+        }
+
         //如果旧密码一致更改密码
         if(!PasswordUtils.encode(modifyPassWordFormVo.getOldPassWord(),sysUser.getSalt()).equals(sysUser.getPassword()))
         {
             throw new SystemException("旧密码错误");
         }
+
         sysUser.setPassword(PasswordUtils.encode(modifyPassWordFormVo.getNewPassWord(),sysUser.getSalt()));
         return sysUserService.updateById(sysUser) ? HttpResult.ok("密码修改成功") : HttpResult.error("密码修改失败");
     }