Explorar el Código

update 优化 权限获取 增加用户登录了但是查询的loginId是别人的场景

疯狂的狮子Li hace 1 año
padre
commit
d1889c42a3

+ 2 - 2
ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/service/SaPermissionImpl.java

@@ -28,7 +28,7 @@ public class SaPermissionImpl implements StpInterface {
     @Override
     public List<String> getPermissionList(Object loginId, String loginType) {
         LoginUser loginUser = LoginHelper.getLoginUser();
-        if (ObjectUtil.isNull(loginUser)) {
+        if (ObjectUtil.isNull(loginUser) || !loginUser.getLoginId().equals(loginId)) {
             List<String> list = StringUtils.splitList(loginId.toString(), ":");
             return new ArrayList<>(permissionService.getMenuPermission(Long.parseLong(list.get(1))));
         }
@@ -46,7 +46,7 @@ public class SaPermissionImpl implements StpInterface {
     @Override
     public List<String> getRoleList(Object loginId, String loginType) {
         LoginUser loginUser = LoginHelper.getLoginUser();
-        if (ObjectUtil.isNull(loginUser)) {
+        if (ObjectUtil.isNull(loginUser) || !loginUser.getLoginId().equals(loginId)) {
             List<String> list = StringUtils.splitList(loginId.toString(), ":");
             return new ArrayList<>(permissionService.getRolePermission(Long.parseLong(list.get(1))));
         }