更新:单点登录后,为sysuser获取角色。

This commit is contained in:
chenyanchang
2026-05-25 23:54:47 +08:00
parent 5f25093991
commit f198ddfd55
2 changed files with 17 additions and 5 deletions

View File

@@ -163,14 +163,11 @@ public class SysLoginController
SysUser user = SecurityUtils.getLoginUser().getUser();
// 角色集合
Set<String> roles = permissionService.getRolePermission(user);
// List<SysRole> sysRole = permissionService.getSysRolePermission(user);
// user.setRoles(sysRole);
// 权限集合
Set<String> permissions = permissionService.getMenuPermission(user);
AjaxResult ajax = AjaxResult.success();
ajax.put("user", user);
ajax.put("roles", roles);
// ajax.put("sysRole", sysRole);
ajax.put("permissions", permissions);
return ajax;
}

View File

@@ -6,6 +6,7 @@ import com.ruoyi.cms.service.impl.AppUserServiceImpl;
import com.ruoyi.cms.util.StringUtil;
import com.ruoyi.common.constant.Constants;
import com.ruoyi.common.core.domain.entity.AppUser;
import com.ruoyi.common.core.domain.entity.SysRole;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.domain.model.LoginSiteUser;
import com.ruoyi.common.core.domain.model.LoginUser;
@@ -18,6 +19,7 @@ import com.ruoyi.framework.manager.AsyncManager;
import com.ruoyi.framework.manager.factory.AsyncFactory;
import com.ruoyi.system.domain.SysUserRole;
import com.ruoyi.system.mapper.SysUserRoleMapper;
import com.ruoyi.system.service.impl.SysRoleServiceImpl;
import com.ruoyi.system.service.impl.SysUserServiceImpl;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.ObjectUtils;
@@ -63,6 +65,9 @@ public class SsoService {
@Autowired
private SysUserRoleMapper sysUserRoleMapper;
@Autowired
private SysRoleServiceImpl sysRoleService;
//一体机pc个人企业
@Value("${lc_web_auth.appId}")
String webAppId;
@@ -249,6 +254,11 @@ public class SsoService {
if (sysUser == null) {
sysUser = saveSysUser(userJson, appUser.getUserId());
}
//设置角色
List<SysRole> roles = sysRoleService.selectRolesByUserId(sysUser.getUserId());
if (sysUser != null) {
sysUser.setRoles(roles);
}
//用户存在生成本系统用户的token
String token = loginSysUser(sysUser, userJson.getString("userName"));
JSONObject backJson = new JSONObject();
@@ -330,10 +340,15 @@ public class SsoService {
} else {
sysUser = sysUserService.selectUserById(userJson.getLong("userId"));
}
if (sysUser == null) {
sysUser = saveSysUser(userJson, appUserId);
}
//设置角色
List<SysRole> roles = sysRoleService.selectRolesByUserId(sysUser.getUserId());
if (sysUser != null) {
sysUser.setRoles(roles);
}
//用户存在生成本系统用户的token
String token = loginSysUser(sysUser, userJson.getString("userName"));
JSONObject backJson = new JSONObject();