diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/PersonnelController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/PersonnelController.java index 2b41b1f..08e000b 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/PersonnelController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/PersonnelController.java @@ -158,6 +158,11 @@ public class PersonnelController extends CoreBaseController { user.setOrganizeCode(userOrganize.getOrganizeCode()); user.setUserLoginLastDateTime(TimeTool.getNowTime(true)); user.setUserInfoId(info.getId()); + if (CommonEnumUtil.USER_ACCOUNT_TYPE.valueOfEnum(user.getUserAccountType()) != null){ + user.setUserAccountType(CommonEnumUtil.USER_ACCOUNT_TYPE.valueOfEnum(user.getUserAccountType()).getValue()); + }else{ + user.setUserAccountType(CommonEnumUtil.USER_ACCOUNT_TYPE.SYSTEM.getValue()); + } //松下需要创建的新用户 第一次登陆系统就要重置密码 // user.setUserPasswordLastModifyTime(TimeTool.getNowTime(true)); refreshSysUserPassword(user); @@ -264,11 +269,13 @@ public class PersonnelController extends CoreBaseController { sysUser.setUserEmpNo(userInfo.getUserEmpNo()); sysUser.setAuthPlatform(user.getAuthPlatform()); - if (StringUtils.isBlank(user.getUserAccountType()) || CommonEnumUtil.USER_ACCOUNT_TYPE.valueOfEnum(user.getUserAccountType()) == null) { - sysUser.setUserAccountType(String.valueOf(CommonEnumUtil.USER_ACCOUNT_TYPE.SYSTEM.getValue())); - } else { - sysUser.setUserAccountType(user.getUserAccountType()); - } +// if (StringUtils.isBlank(user.getUserAccountType()) || CommonEnumUtil.USER_ACCOUNT_TYPE.valueOfEnum(user.getUserAccountType()) == null) { +// sysUser.setUserAccountType(String.valueOf(CommonEnumUtil.USER_ACCOUNT_TYPE.SYSTEM.getValue())); +// } else { +// sysUser.setUserAccountType(user.getUserAccountType()); +// } + + sysUser.setUserAccountType(user.getUserAccountType()); // 关系 刷新 refreshRef(sysUser, userInfo, model); @@ -307,6 +314,7 @@ public class PersonnelController extends CoreBaseController { user.setDepartmentNameRdd(userDepartment.getName()); user.setOrganizeId(userOrganize.getId()); user.setOrganizeNameRdd(userOrganize.getName()); + user.setUserAccountType(user.getUserAccountType()); // 关系 刷新 refreshRef(user, null, model); @@ -770,6 +778,7 @@ public class PersonnelController extends CoreBaseController { user.setUserEmail(model.getUserEmail()); user.setUserPhone(model.getUserPhone()); user.setLanguageCode(model.getUserLanguageCode()); + user.setUserAccountType(model.getUserAccountType()); if (!StringUtils.isAnyBlank(model.getUserLoginPassword())) { // 使用新密码 user.setUserLoginPassword(EncryptTool.hexMD5(model.getUserLoginPassword())); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysEnumController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysEnumController.java index 033a32c..88230c6 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysEnumController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysEnumController.java @@ -115,6 +115,18 @@ public class SysEnumController extends CoreBaseController { } /** + * 用户账号类型 + * + * @return 处理结果 + */ + @GetMapping("/user-account-type") + @ApiOperation(value = "用户账号类型", notes = "用户账号类型") + public ResultBean getUserAccountType() { + return new ResultBean(true, "操作成功", + LocaleUtils.getEnumLocaleResValuesToList(CommonEnumUtil.USER_ACCOUNT_TYPE.values())); + } + + /** * 日志等级 * * @return 处理结果 diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysUserSavePasswordService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysUserSavePasswordService.java index 479097a..844c99d 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysUserSavePasswordService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysUserSavePasswordService.java @@ -147,6 +147,7 @@ public class SysUserSavePasswordService extends CrudService imp user.setUserLoginPassword(newPwd); userPasswordUtil.checkPasswordSave(user); + //当前方法是不需要session,是在登陆前弹窗修改密码 //如果是首次登录修改密码,则设置登录次数为1 if(null == user.getUserLoginNum() || user.getUserLoginNum() == 0){ userService.updateUserLoginNum(user.getId(),1); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/util/SysUserPasswordUtil.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/util/SysUserPasswordUtil.java index 3ff0371..d998526 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/util/SysUserPasswordUtil.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/util/SysUserPasswordUtil.java @@ -113,6 +113,25 @@ public class SysUserPasswordUtil { .build(); } + /** + * 登录时校验的密码安全策略 + * @param user + */ + public void checkPasswordLogin(SysUser user) { + /* 密码 长度校验 */ + checkPasswordLength(user.getUserLoginPassword()); + /* 密码 大写字母校验 */ + checkPasswordUppercaseEnglish(user.getUserLoginPassword()); + /* 密码 小写字母校验 */ + checkPasswordlowerEnglish(user.getUserLoginPassword()); + /* 密码 数字校验 */ + checkPasswordNumber(user.getUserLoginPassword()); + /* 密码 特殊字符校验 */ + checkPasswordSpecial(user.getUserLoginPassword()); + /* 密码 密码正则校验 */ + checkPasswordRepeat(user.getUserLoginPassword()); + } + /******************************************** 用户保存密码检查 ********************************************/ public void checkPasswordSave(SysUser user) { @@ -414,7 +433,7 @@ public class SysUserPasswordUtil { try { int isLoginCheckPassword = RedisCacheTool.getSysConfigIntVal(CommonConstWords.CONFIG_LOGIN_CHECK_PASSWORD,CommonConstWords.CONFIG_LOGIN_CHECK_PASSWORD_DEFAULT); if (CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue() == isLoginCheckPassword){ - checkPasswordSave(user); + checkPasswordLogin(user); } result = ResultBean.success(); } catch (Exception e) {