From c00a73b74e67dbeb508865c3da4ed8d57c8631db Mon Sep 17 00:00:00 2001
From: zhanzhiqin <895896009@qq.com>
Date: 星期三, 20 四月 2022 14:16:12 +0800
Subject: [PATCH] fix   admin LIST

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/security/PermissionConfig.java |   26 ++++++++++++++++++--------
 1 files changed, 18 insertions(+), 8 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/security/PermissionConfig.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/security/PermissionConfig.java
index ac82153..9e37e48 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/security/PermissionConfig.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/security/PermissionConfig.java
@@ -1,5 +1,7 @@
 package com.sandu.ximon.admin.security;
 
+import com.sandu.common.security.LoginUserInfo;
+import com.sandu.ximon.dao.enums.AdministratorEnums;
 import org.springframework.security.core.GrantedAuthority;
 import org.springframework.stereotype.Service;
 
@@ -12,14 +14,22 @@
  * @date 2021/8/27 18:28
  * 鏉冮檺鎺у埗
  */
-@Service(value = "p")
+@Service(value = "el")
 public class PermissionConfig {
 
-//    public Boolean check(String... permissions) {
-//
-//        // 鑾峰彇褰撳墠鐢ㄦ埛鐨勬墍鏈夋潈闄�
-//        List<String> elPermissions = SecurityUtils.getUserDetails().getAuthorities().stream().map(GrantedAuthority::getAuthority).collect(Collectors.toList());
-//        // 鍒ゆ柇褰撳墠鐢ㄦ埛鐨勬墍鏈夋潈闄愭槸鍚﹀寘鍚帴鍙d笂瀹氫箟鐨勬潈闄�
-//        return elPermissions.contains("admin") || Arrays.stream(permissions).anyMatch(elPermissions::contains);
-//    }
+    public Boolean check(String... permissions) {
+        LoginUserInfo loginUserInfo = SecurityUtils.getUserDetails();
+        if (loginUserInfo == null || loginUserInfo.getPermission() == null) {
+            return false;
+        }
+//        // 瀹㈡埛娌℃湁鏉冮檺绠$悊
+//        if(AdministratorEnums.CUSTOMER.getCode().equals(loginUserInfo.getAdministratorType())){
+//            return true;
+//        }
+        String[] split = loginUserInfo.getPermission().split(",");
+        // 鑾峰彇褰撳墠鐢ㄦ埛鐨勬墍鏈夋潈闄�
+        List<String> elPermissions = Arrays.stream(split).collect(Collectors.toList());
+        // 鍒ゆ柇褰撳墠鐢ㄦ埛鐨勬墍鏈夋潈闄愭槸鍚﹀寘鍚帴鍙d笂瀹氫箟鐨勬潈闄�
+        return elPermissions.contains("admin") || Arrays.stream(permissions).anyMatch(elPermissions::contains);
+    }
 }

--
Gitblit v1.9.3