wenhongquan 3 years ago
parent
commit
d0d4f9bb62

+ 12 - 1
ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/PermissionService.java

@@ -1,6 +1,8 @@
 package com.ruoyi.framework.web.service;
 
 import java.util.Set;
+
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 import com.ruoyi.common.core.domain.entity.SysRole;
@@ -26,6 +28,9 @@ public class PermissionService
 
     private static final String PERMISSION_DELIMETER = ",";
 
+    @Autowired
+    private SysPermissionService permissionService;
+
     /**
      * 验证用户是否具备某权限
      * 
@@ -39,10 +44,16 @@ public class PermissionService
             return false;
         }
         LoginUser loginUser = SecurityUtils.getLoginUser();
-        if (StringUtils.isNull(loginUser) || CollectionUtils.isEmpty(loginUser.getPermissions()))
+        if (StringUtils.isNull(loginUser) )
         {
             return false;
         }
+        if(CollectionUtils.isEmpty(loginUser.getPermissions())){
+            loginUser.setPermissions(permissionService.getMenuPermission(loginUser.getUser()));
+        }
+        if(CollectionUtils.isEmpty(loginUser.getPermissions())){
+            return false;
+        }
         return hasPermissions(loginUser.getPermissions(), permission);
     }