From 1ae369855ba448bc2562ebbbe59a89e42b8c53b0 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期二, 19 十月 2021 17:23:14 +0800
Subject: [PATCH] update 优化 多账号体系用户行为监听逻辑

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SaInterfaceImpl.java |   29 ++++++++++++++++++++++-------
 1 files changed, 22 insertions(+), 7 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SaInterfaceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SaInterfaceImpl.java
index ccbd3b3..5dc66f2 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SaInterfaceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SaInterfaceImpl.java
@@ -2,6 +2,8 @@
 
 import cn.dev33.satoken.stp.StpInterface;
 import com.ruoyi.common.core.domain.entity.SysUser;
+import com.ruoyi.common.enums.UserType;
+import com.ruoyi.common.utils.LoginUtils;
 import com.ruoyi.system.service.ISysUserService;
 import com.ruoyi.system.service.SysPermissionService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -21,16 +23,29 @@
 
     @Override
     public List<String> getPermissionList(Object loginId, String loginType) {
-        SysUser user = iSysUserService.getById(loginId.toString());
-        Set<String> menuPermission = sysPermissionService.getMenuPermission(user);
-        //閲囩敤鐨勬槸鐢ㄦ埛閲岃嚜甯︾殑鏉冮檺锛屽疄鐜颁竴娆℃�ц闂畆eids,杩涜鍒ゆ柇鏄惁鍙互璁块棶
-        return new ArrayList<>(menuPermission);
+        UserType userType = LoginUtils.getUserType(loginId);
+        if (userType == UserType.SYS_USER) {
+            Long userId = LoginUtils.getUserId();
+            SysUser user = iSysUserService.getById(userId);
+            Set<String> menuPermission = sysPermissionService.getMenuPermission(user);
+            return new ArrayList<>(menuPermission);
+        } else if (userType == UserType.APP_USER) {
+            // app绔潈闄愯繑鍥� 鑷鏍规嵁涓氬姟缂栧啓
+        }
+        return new ArrayList<>();
     }
 
     @Override
     public List<String> getRoleList(Object loginId, String loginType) {
-        SysUser user = iSysUserService.getById(loginId.toString());
-        Set<String> rolePermission = sysPermissionService.getRolePermission(user);
-        return new ArrayList<>(rolePermission);
+        UserType userType = LoginUtils.getUserType(loginId);
+        if (userType == UserType.SYS_USER) {
+            Long userId = LoginUtils.getUserId();
+            SysUser user = iSysUserService.getById(userId);
+            Set<String> rolePermission = sysPermissionService.getRolePermission(user);
+            return new ArrayList<>(rolePermission);
+        } else if (userType == UserType.APP_USER) {
+            // app绔潈闄愯繑鍥� 鑷鏍规嵁涓氬姟缂栧啓
+        }
+        return new ArrayList<>();
     }
 }

--
Gitblit v1.9.3