Jelajahi Sumber

用户密码判断是否符合要求

gao.qiang 2 tahun lalu
induk
melakukan
908bc72091

+ 9 - 0
hazard-admin/src/main/java/com/ozs/web/controller/system/SysUserController.java

@@ -53,6 +53,7 @@ import com.ozs.system.service.ISysUserService;
 @RequestMapping("/system/user")
 @Slf4j
 public class SysUserController extends BaseController {
+    public static final String PW_PATTERN = "^(?![A-Za-z0-9]+$)(?![a-z0-9\\W]+$)(?![A-Za-z\\W]+$)(?![A-Z0-9\\W]+$)[a-zA-Z0-9\\W]{8,20}$";
     @Autowired
     private ISysUserService userService;
 
@@ -181,6 +182,10 @@ public class SysUserController extends BaseController {
     @Log(title = "用户管理", businessType = BusinessType.INSERT)
     @PostMapping("/add")
     public AjaxResult add(@Validated @RequestBody SysUser user) {
+        boolean matches = user.getPassword().matches(PW_PATTERN);
+        if (!matches){
+            return  error("您的密码太简单!需要包含大小英文、数字、特殊字符、并且长度8-20");
+        }
         if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(user))) {
             return error("新增用户'" + user.getUserName() + "'失败,登录账号已存在");
         } else if (StringUtils.isNotEmpty(user.getPhoneNum())
@@ -199,6 +204,10 @@ public class SysUserController extends BaseController {
     @Log(title = "用户管理", businessType = BusinessType.UPDATE)
     @RequestMapping(value ="/edit",method = RequestMethod.PUT)
     public AjaxResult edit(@Validated @RequestBody SysUser user) {
+        boolean matches = user.getPassword().matches(PW_PATTERN);
+        if (!matches){
+            return  error("您的密码太简单!需要包含大小英文、数字、特殊字符、并且长度8-20");
+        }
         userService.checkUserAllowed(user);
         userService.checkUserDataScope(user.getId());
         if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(user))) {