Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
cocktail-party-server
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
cocktail-party
cocktail-party-server
Commits
5fad997d
提交
5fad997d
authored
9月 21, 2024
作者:
RuoYi
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
修复角色禁用权限不失效问题(IAA8ZX)
上级
22a795d0
隐藏空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
15 行增加
和
7 行删除
+15
-7
UserConstants.java
...rc/main/java/com/ruoyi/common/constant/UserConstants.java
+3
-0
DataScopeAspect.java
...ain/java/com/ruoyi/framework/aspectj/DataScopeAspect.java
+4
-4
SysPermissionService.java
...com/ruoyi/framework/web/service/SysPermissionService.java
+8
-3
没有找到文件。
ruoyi-common/src/main/java/com/ruoyi/common/constant/UserConstants.java
浏览文件 @
5fad997d
...
...
@@ -21,6 +21,9 @@ public class UserConstants
/** 用户封禁状态 */
public
static
final
String
USER_DISABLE
=
"1"
;
/** 角色正常状态 */
public
static
final
String
ROLE_NORMAL
=
"0"
;
/** 角色封禁状态 */
public
static
final
String
ROLE_DISABLE
=
"1"
;
...
...
ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/DataScopeAspect.java
浏览文件 @
5fad997d
...
...
@@ -7,6 +7,7 @@ import org.aspectj.lang.annotation.Aspect;
import
org.aspectj.lang.annotation.Before
;
import
org.springframework.stereotype.Component
;
import
com.ruoyi.common.annotation.DataScope
;
import
com.ruoyi.common.constant.UserConstants
;
import
com.ruoyi.common.core.domain.BaseEntity
;
import
com.ruoyi.common.core.domain.entity.SysRole
;
import
com.ruoyi.common.core.domain.entity.SysUser
;
...
...
@@ -73,8 +74,7 @@ public class DataScopeAspect
if
(
StringUtils
.
isNotNull
(
currentUser
)
&&
!
currentUser
.
isAdmin
())
{
String
permission
=
StringUtils
.
defaultIfEmpty
(
controllerDataScope
.
permission
(),
PermissionContextHolder
.
getContext
());
dataScopeFilter
(
joinPoint
,
currentUser
,
controllerDataScope
.
deptAlias
(),
controllerDataScope
.
userAlias
(),
permission
);
dataScopeFilter
(
joinPoint
,
currentUser
,
controllerDataScope
.
deptAlias
(),
controllerDataScope
.
userAlias
(),
permission
);
}
}
}
...
...
@@ -94,7 +94,7 @@ public class DataScopeAspect
List
<
String
>
conditions
=
new
ArrayList
<
String
>();
List
<
String
>
scopeCustomIds
=
new
ArrayList
<
String
>();
user
.
getRoles
().
forEach
(
role
->
{
if
(
DATA_SCOPE_CUSTOM
.
equals
(
role
.
getDataScope
())
&&
StringUtils
.
containsAny
(
role
.
getPermissions
(),
Convert
.
toStrArray
(
permission
)))
if
(
DATA_SCOPE_CUSTOM
.
equals
(
role
.
getDataScope
())
&&
StringUtils
.
equals
(
role
.
getStatus
(),
UserConstants
.
ROLE_NORMAL
)
&&
StringUtils
.
containsAny
(
role
.
getPermissions
(),
Convert
.
toStrArray
(
permission
)))
{
scopeCustomIds
.
add
(
Convert
.
toStr
(
role
.
getRoleId
()));
}
...
...
@@ -103,7 +103,7 @@ public class DataScopeAspect
for
(
SysRole
role
:
user
.
getRoles
())
{
String
dataScope
=
role
.
getDataScope
();
if
(
conditions
.
contains
(
dataScope
))
if
(
conditions
.
contains
(
dataScope
)
||
StringUtils
.
equals
(
role
.
getStatus
(),
UserConstants
.
ROLE_DISABLE
)
)
{
continue
;
}
...
...
ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPermissionService.java
浏览文件 @
5fad997d
...
...
@@ -6,8 +6,10 @@ import java.util.Set;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
org.springframework.util.CollectionUtils
;
import
com.ruoyi.common.constant.UserConstants
;
import
com.ruoyi.common.core.domain.entity.SysRole
;
import
com.ruoyi.common.core.domain.entity.SysUser
;
import
com.ruoyi.common.utils.StringUtils
;
import
com.ruoyi.system.service.ISysMenuService
;
import
com.ruoyi.system.service.ISysRoleService
;
...
...
@@ -68,9 +70,12 @@ public class SysPermissionService
// 多角色设置permissions属性,以便数据权限匹配权限
for
(
SysRole
role
:
roles
)
{
Set
<
String
>
rolePerms
=
menuService
.
selectMenuPermsByRoleId
(
role
.
getRoleId
());
role
.
setPermissions
(
rolePerms
);
perms
.
addAll
(
rolePerms
);
if
(
StringUtils
.
equals
(
role
.
getStatus
(),
UserConstants
.
ROLE_NORMAL
))
{
Set
<
String
>
rolePerms
=
menuService
.
selectMenuPermsByRoleId
(
role
.
getRoleId
());
role
.
setPermissions
(
rolePerms
);
perms
.
addAll
(
rolePerms
);
}
}
}
else
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论