|
|
|
@ -110,8 +110,6 @@ public class LoginRestController {
|
|
|
|
|
// 如果验证成功, 则清除锁定信息
|
|
|
|
|
UserTokenUtil.clearLockAccount(form.getUsername());
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 如果不是超级管理员
|
|
|
|
|
if(!StringUtils.equals(UserUtil.SUPER_ADMIN, user.getUsername())){
|
|
|
|
|
// 账号锁定验证
|
|
|
|
@ -121,12 +119,25 @@ public class LoginRestController {
|
|
|
|
|
throw new TokenException(TokenMsg.EXCEPTION_LOGIN_ACCOUNT_LOCKED);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 租户启用验证
|
|
|
|
|
// 验证租户是否生效
|
|
|
|
|
TenantModel tenant = TenantUtil.getTenant(user.getTenantId());
|
|
|
|
|
if(tenant == null){
|
|
|
|
|
// 租户未启用,请联系管理员
|
|
|
|
|
throw new TokenException(TokenMsg.EXCEPTION_LOGIN_TENANT_NOT_USABLE);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 检测用户是否有角色
|
|
|
|
|
List<String> roleModelList = UserUtil.getUserRolesByUserId(user.getId());
|
|
|
|
|
if(CollUtil.isEmpty(roleModelList)){
|
|
|
|
|
// 用户暂无角色,请设置后登录
|
|
|
|
|
throw new TokenException(TokenMsg.EXCEPTION_USER_ROLE_NOT_NULL);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 检测用户是否有角色菜单
|
|
|
|
|
List<MenuModel> menuModelList = UserUtil.getMenuListByUserId(user.getId());
|
|
|
|
|
if(CollUtil.isEmpty(menuModelList)){
|
|
|
|
|
// 用户暂无角色菜单,请设置后登录
|
|
|
|
|
throw new TokenException(TokenMsg.EXCEPTION_USER_MENU_NOT_NULL);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 失败次数超过 验证次数阈值 开启验证码验证
|
|
|
|
@ -135,20 +146,6 @@ public class LoginRestController {
|
|
|
|
|
CaptchaUtil.delCaptcha(form.getUuid());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 检测用户是否有角色
|
|
|
|
|
List<String> roleModelList = UserUtil.getUserRolesByUserId(user.getId());
|
|
|
|
|
if(CollUtil.isEmpty(roleModelList)){
|
|
|
|
|
// 用户暂无角色,请设置后登录
|
|
|
|
|
throw new TokenException(TokenMsg.EXCEPTION_USER_ROLE_NOT_NULL);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 检测用户是否有角色菜单
|
|
|
|
|
List<MenuModel> menuModelList = UserUtil.getMenuListByUserId(user.getId());
|
|
|
|
|
if(CollUtil.isEmpty(menuModelList)){
|
|
|
|
|
// 用户暂无角色菜单,请设置后登录
|
|
|
|
|
throw new TokenException(TokenMsg.EXCEPTION_USER_MENU_NOT_NULL);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//生成token,并保存到Redis
|
|
|
|
|
ResultVo<UserTokenUtil.TokenRet> resultVo = UserTokenUtil.createToken(user);
|
|
|
|
|
if(resultVo.isSuccess()){
|
|
|
|
|