From 56d1596d35e5de788c09f7a14e33a720a932c76e Mon Sep 17 00:00:00 2001 From: liding <756868258@qq.com> Date: 星期四, 15 五月 2025 16:01:15 +0800 Subject: [PATCH] 采购合同号 --- src/main/java/com/ruoyi/framework/security/service/SysPermissionService.java | 24 +++++++++++++++++++++++- 1 files changed, 23 insertions(+), 1 deletions(-) diff --git a/src/main/java/com/ruoyi/framework/security/service/SysPermissionService.java b/src/main/java/com/ruoyi/framework/security/service/SysPermissionService.java index 021e9a5..ca3fb91 100644 --- a/src/main/java/com/ruoyi/framework/security/service/SysPermissionService.java +++ b/src/main/java/com/ruoyi/framework/security/service/SysPermissionService.java @@ -1,9 +1,14 @@ package com.ruoyi.framework.security.service; import java.util.HashSet; +import java.util.List; import java.util.Set; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; +import org.springframework.util.CollectionUtils; +import com.ruoyi.common.constant.UserConstants; +import com.ruoyi.common.utils.StringUtils; +import com.ruoyi.project.system.domain.SysRole; import com.ruoyi.project.system.domain.SysUser; import com.ruoyi.project.system.service.ISysMenuService; import com.ruoyi.project.system.service.ISysRoleService; @@ -59,7 +64,24 @@ } else { - perms.addAll(menuService.selectMenuPermsByUserId(user.getUserId())); + List<SysRole> roles = user.getRoles(); + if (!CollectionUtils.isEmpty(roles)) + { + // 璁剧疆permissions灞炴�э紝浠ヤ究鏁版嵁鏉冮檺鍖归厤鏉冮檺 + for (SysRole role : roles) + { + if (StringUtils.equals(role.getStatus(), UserConstants.ROLE_NORMAL) && !role.isAdmin()) + { + Set<String> rolePerms = menuService.selectMenuPermsByRoleId(role.getRoleId()); + role.setPermissions(rolePerms); + perms.addAll(rolePerms); + } + } + } + else + { + perms.addAll(menuService.selectMenuPermsByUserId(user.getUserId())); + } } return perms; } -- Gitblit v1.9.3