From ae086bc3ad6f785e6368b84e57a7e199c675779b Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期三, 02 四月 2025 11:42:28 +0800
Subject: [PATCH] 代码提交

---
 ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPermissionService.java |   46 ++++++++++++++++++++--------------------------
 1 files changed, 20 insertions(+), 26 deletions(-)

diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPermissionService.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPermissionService.java
index 402f25b..becdc61 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPermissionService.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPermissionService.java
@@ -3,7 +3,9 @@
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
+
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 import com.ruoyi.common.core.domain.entity.SysRole;
 import com.ruoyi.common.core.domain.entity.SysUser;
@@ -12,34 +14,33 @@
 
 /**
  * 鐢ㄦ埛鏉冮檺澶勭悊
- * 
+ *
  * @author ruoyi
  */
 @Component
-public class SysPermissionService
-{
+public class SysPermissionService {
     @Autowired
     private ISysRoleService roleService;
 
     @Autowired
     private ISysMenuService menuService;
 
+    @Value("${isAdmin}")
+    private List<Long> isAdmin;
+
     /**
      * 鑾峰彇瑙掕壊鏁版嵁鏉冮檺
-     * 
+     *
      * @param user 鐢ㄦ埛淇℃伅
      * @return 瑙掕壊鏉冮檺淇℃伅
      */
-    public Set<String> getRolePermission(SysUser user)
-    {
+    public Set<String> getRolePermission(SysUser user) {
         Set<String> roles = new HashSet<String>();
         // 绠$悊鍛樻嫢鏈夋墍鏈夋潈闄�
-        if (user.isAdmin())
-        {
+//        if (user.isAdmin())
+        if (user.getUserId() != null && isAdmin.contains(user.getUserId())) {
             roles.add("admin");
-        }
-        else
-        {
+        } else {
             roles.addAll(roleService.selectRolePermissionByUserId(user.getUserId()));
         }
         return roles;
@@ -47,33 +48,26 @@
 
     /**
      * 鑾峰彇鑿滃崟鏁版嵁鏉冮檺
-     * 
+     *
      * @param user 鐢ㄦ埛淇℃伅
      * @return 鑿滃崟鏉冮檺淇℃伅
      */
-    public Set<String> getMenuPermission(SysUser user)
-    {
+    public Set<String> getMenuPermission(SysUser user) {
         Set<String> perms = new HashSet<String>();
         // 绠$悊鍛樻嫢鏈夋墍鏈夋潈闄�
-        if (user.isAdmin())
-        {
+//        if (user.isAdmin()) {
+        if (user.getUserId() != null && isAdmin.contains(user.getUserId())) {
             perms.add("*:*:*");
-        }
-        else
-        {
+        } else {
             List<SysRole> roles = user.getRoles();
-            if (!roles.isEmpty() && roles.size() > 1)
-            {
+            if (!roles.isEmpty() && roles.size() > 1) {
                 // 澶氳鑹茶缃畃ermissions灞炴�э紝浠ヤ究鏁版嵁鏉冮檺鍖归厤鏉冮檺
-                for (SysRole role : roles)
-                {
+                for (SysRole role : roles) {
                     Set<String> rolePerms = menuService.selectMenuPermsByRoleId(role.getRoleId());
                     role.setPermissions(rolePerms);
                     perms.addAll(rolePerms);
                 }
-            }
-            else
-            {
+            } else {
                 perms.addAll(menuService.selectMenuPermsByUserId(user.getUserId()));
             }
         }

--
Gitblit v1.9.3