From 287f1acbc66374aeaca590c57790403d992054c1 Mon Sep 17 00:00:00 2001
From: 李宇 <986321569@qq.com>
Date: Mon, 25 Jan 2021 12:44:23 +0800
Subject: [PATCH] 修改用户限制密码复杂度
---
src/main/java/com/nanometer/smartlab/controller/UserMngController.java | 26 ++++++++++++++++++++++----
1 files changed, 22 insertions(+), 4 deletions(-)
diff --git a/src/main/java/com/nanometer/smartlab/controller/UserMngController.java b/src/main/java/com/nanometer/smartlab/controller/UserMngController.java
index 9ef8dc1..fe55ece 100644
--- a/src/main/java/com/nanometer/smartlab/controller/UserMngController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/UserMngController.java
@@ -10,6 +10,7 @@
import com.nanometer.smartlab.entity.enumtype.Waster;
import com.nanometer.smartlab.service.BaseMetaService;
import com.nanometer.smartlab.service.BaseRoleService;
+import com.nanometer.smartlab.service.SysProjectService;
import com.nanometer.smartlab.service.SysUserService;
import com.nanometer.smartlab.util.Constants;
import com.nanometer.smartlab.util.FacesUtils;
@@ -51,6 +52,8 @@
private BaseMetaService baseMetaService;
@Resource
private BaseRoleService baseRoleService;
+ @Resource
+ private SysProjectService sysProjectService;
private LazyDataModel<SysUser> dataModel;
private SysUser sysUser;
@@ -235,10 +238,20 @@
if(valuesList.get(12).equals(SeeFlag.LEADING.getText())){
sysUser.setSeeFlag(SeeFlag.LEADING);
}
- if(valuesList.size()==14){
- sysUser.setMemo(valuesList.get(13));
- }else {
- sysUser.setMemo("");
+
+
+ if (valuesList.size() > 13 && !valuesList.get(13).replace(" ","").isEmpty()){
+ String[] projects = valuesList.get(13).split(",");
+ for (String project : projects) {
+ //不存再就直接推出
+ if (!sysProjectService.isExistProject(project)) {
+ throw new Exception("课题组不存在,(" + i + "行)");
+ }
+ }
+ //都存在就设置
+ sysUser.setProject(valuesList.get(13).replace(" ",""));
+ }else{
+ sysUser.setProject(null);
}
sysUser.setValidFlag(ValidFlag.VALID);
@@ -438,6 +451,11 @@
if(sysUser.getPassword()==null || sysUser.getPassword().equals("")){
sysUser.setPassword(this.editPasswor);
}else {
+ String PW_PATTERN = "(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*[~!@#$%^&*_.]).{8,}";
+ if (!sysUser.getPassword().matches(PW_PATTERN)){
+ FacesUtils.warn("密码必须8位以上,并且包含大小写字母、数字、特殊符号三种以上");
+ return;
+ }
sysUser.setPassword(MD5Utils.encode(sysUser.getPassword()));
}
this.sysUserService.updateSysUser(sysUser);
--
Gitblit v1.9.2