|
@@ -4,16 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.diagbot.client.AuthServiceClient;
|
|
import com.diagbot.client.AuthServiceClient;
|
|
-import com.diagbot.dto.BasDeptInfoDTO;
|
|
|
|
-import com.diagbot.dto.BasHospitalInfoDTO;
|
|
|
|
-import com.diagbot.dto.JwtDTO;
|
|
|
|
-import com.diagbot.dto.LoginDTO;
|
|
|
|
-import com.diagbot.dto.SysRoleDTO;
|
|
|
|
-import com.diagbot.dto.SysUserDeptDTO;
|
|
|
|
-import com.diagbot.dto.SysUserPermissionDTO;
|
|
|
|
-import com.diagbot.dto.SysUserQueryDTO;
|
|
|
|
-import com.diagbot.dto.SysUserRoleDTO;
|
|
|
|
-import com.diagbot.dto.UserLoginDTO;
|
|
|
|
|
|
+import com.diagbot.dto.*;
|
|
import com.diagbot.entity.BasHospitalInfo;
|
|
import com.diagbot.entity.BasHospitalInfo;
|
|
import com.diagbot.entity.JWT;
|
|
import com.diagbot.entity.JWT;
|
|
import com.diagbot.entity.JwtStore;
|
|
import com.diagbot.entity.JwtStore;
|
|
@@ -90,6 +81,8 @@ public class SysUserFacade extends SysUserServiceImpl {
|
|
private SysUserHospitalFacade sysUserHospitalFacade;
|
|
private SysUserHospitalFacade sysUserHospitalFacade;
|
|
@Autowired
|
|
@Autowired
|
|
private SysUserRoleFacade sysUserRoleFacade;
|
|
private SysUserRoleFacade sysUserRoleFacade;
|
|
|
|
+ @Autowired
|
|
|
|
+ private SysDictionaryFacade sysDictionaryFacade;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 获取jwt
|
|
* 获取jwt
|
|
@@ -152,10 +145,20 @@ public class SysUserFacade extends SysUserServiceImpl {
|
|
/***
|
|
/***
|
|
* 未加密密码复杂度判断
|
|
* 未加密密码复杂度判断
|
|
*/
|
|
*/
|
|
-/* Boolean passwordRegular = passwordRegular(password);
|
|
|
|
- if(!passwordRegular){
|
|
|
|
- data.setPasswordComplexity("密码复杂度过低,请及时修改密码");
|
|
|
|
- }*/
|
|
|
|
|
|
+ //获取用户医院id
|
|
|
|
+// String hospitalID = SysUserUtils.getCurrentHospitalID();
|
|
|
|
+// Long id = user.getId();
|
|
|
|
+// QueryWrapper<SysUserHospital> UserHospitalQueryWrapper = new QueryWrapper<>();
|
|
|
|
+// UserHospitalQueryWrapper
|
|
|
|
+// .eq("user_id", id)
|
|
|
|
+// .eq("is_deleted", IsDeleteEnum.N.getKey());
|
|
|
|
+// SysUserHospital userHospital = sysUserHospitalFacade.getOne(UserHospitalQueryWrapper, false);
|
|
|
|
+// Long hospitalId = userHospital.getHospitalId();
|
|
|
|
+// String idStr = String.valueOf(hospitalId);
|
|
|
|
+// Boolean passwordRegular = passwordRegular(password,idStr);
|
|
|
|
+// if(!passwordRegular){
|
|
|
|
+// data.setPasswordComplexity("密码复杂度过低,请及时修改密码");
|
|
|
|
+// }
|
|
return data;
|
|
return data;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -264,10 +267,6 @@ public class SysUserFacade extends SysUserServiceImpl {
|
|
throw new CommonException(CommonErrorCode.PARAM_IS_NULL,
|
|
throw new CommonException(CommonErrorCode.PARAM_IS_NULL,
|
|
"原密码和新密码不能相同");
|
|
"原密码和新密码不能相同");
|
|
}
|
|
}
|
|
-/* Boolean regularBoolean = passwordRegular(modifyPassword);
|
|
|
|
- if(!regularBoolean){
|
|
|
|
- throw new CommonException(CommonErrorCode.PARAM_IS_ERROR, "请输入正确格式的新密码");
|
|
|
|
- }*/
|
|
|
|
String userId = SysUserUtils.getCurrentPrincipleID();
|
|
String userId = SysUserUtils.getCurrentPrincipleID();
|
|
SysUser user = this.getOne(new QueryWrapper<SysUser>()
|
|
SysUser user = this.getOne(new QueryWrapper<SysUser>()
|
|
.eq("is_deleted", IsDeleteEnum.N.getKey())
|
|
.eq("is_deleted", IsDeleteEnum.N.getKey())
|
|
@@ -276,13 +275,16 @@ public class SysUserFacade extends SysUserServiceImpl {
|
|
if (null == user) {
|
|
if (null == user) {
|
|
throw new CommonException(ServiceErrorCode.USER_NOT_FOUND);
|
|
throw new CommonException(ServiceErrorCode.USER_NOT_FOUND);
|
|
}
|
|
}
|
|
-
|
|
|
|
PasswordEncoder passwordEncoder
|
|
PasswordEncoder passwordEncoder
|
|
= PasswordEncoderFactories.createDelegatingPasswordEncoder();
|
|
= PasswordEncoderFactories.createDelegatingPasswordEncoder();
|
|
if (!passwordEncoder.matches(password, user.getPassword())) {
|
|
if (!passwordEncoder.matches(password, user.getPassword())) {
|
|
throw new CommonException(CommonErrorCode.PARAM_IS_ERROR, "原密码错误");
|
|
throw new CommonException(CommonErrorCode.PARAM_IS_ERROR, "原密码错误");
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+// String hospitalID = SysUserUtils.getCurrentHospitalID();
|
|
|
|
+// Boolean regularBoolean = passwordRegular(modifyPassword,hospitalID);
|
|
|
|
+// if(!regularBoolean){
|
|
|
|
+// throw new CommonException(CommonErrorCode.PARAM_IS_ERROR, "请输入正确格式的新密码");
|
|
|
|
+// }
|
|
String entryPassword = passwordEncoder.encode(modifyPassword);
|
|
String entryPassword = passwordEncoder.encode(modifyPassword);
|
|
user.setPassword(entryPassword);
|
|
user.setPassword(entryPassword);
|
|
user.setGmtModified(DateUtil.now());
|
|
user.setGmtModified(DateUtil.now());
|
|
@@ -292,13 +294,21 @@ public class SysUserFacade extends SysUserServiceImpl {
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
- * 未加密密文正则表达式 至少8个字符,至少1个大写字母,1个小写字母,1个数字和1个特殊字符:
|
|
|
|
|
|
+ * 未加密密文正则表达式 至少8个字符,1个大写字母,1个小写字母,1个数字和1个特殊字符:
|
|
* @param password
|
|
* @param password
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
- public Boolean passwordRegular(String password){
|
|
|
|
- String regex="^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)(?=.*[$@$!%*?&])[A-Za-z\\d$@$!%*?&]{8,}";
|
|
|
|
- boolean check=password.matches(regex);
|
|
|
|
|
|
+ public Boolean passwordRegular(String password,String hospitalId){
|
|
|
|
+ //获取字点表中存储的正则表达式 "^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)(?=.*[$@$!%*?&])[A-Za-z\\d$@$!%*?&]{8,}"
|
|
|
|
+ boolean check=true;
|
|
|
|
+ Map<String, Map<String, String>> dictionaryWithKey = sysDictionaryFacade.getDictionaryWithKey();
|
|
|
|
+ if(dictionaryWithKey!=null){
|
|
|
|
+ Map<String, String> stringStringMap = dictionaryWithKey.get("30");
|
|
|
|
+ if(stringStringMap!=null) {
|
|
|
|
+ String regular = stringStringMap.get(hospitalId);
|
|
|
|
+ check = password.matches(regular);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
return check;
|
|
return check;
|
|
}
|
|
}
|
|
/**
|
|
/**
|