mirror of
https://gitee.com/dromara/RuoYi-Cloud-Plus.git
synced 2025-09-01 18:26:17 +00:00
update 优化 数据权限支持通过菜单标识符获取数据所有权
This commit is contained in:
@@ -30,4 +30,12 @@ public @interface DataColumn {
|
|||||||
*/
|
*/
|
||||||
String[] value() default "dept_id";
|
String[] value() default "dept_id";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 权限标识符 用于通过菜单权限标识符来获取数据权限
|
||||||
|
* 拥有此标识符的角色 将不会拼接此角色的数据过滤sql
|
||||||
|
*
|
||||||
|
* @return 权限标识符
|
||||||
|
*/
|
||||||
|
String permission() default "";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -158,6 +158,12 @@ public class PlusDataPermissionHandler {
|
|||||||
)) {
|
)) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
// 包含权限标识符 这直接跳过
|
||||||
|
if (StringUtils.isNotBlank(dataColumn.permission()) &&
|
||||||
|
CollUtil.contains(user.getMenuPermission(), dataColumn.permission())
|
||||||
|
) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
// 设置注解变量 key 为表达式变量 value 为变量值
|
// 设置注解变量 key 为表达式变量 value 为变量值
|
||||||
for (int i = 0; i < dataColumn.key().length; i++) {
|
for (int i = 0; i < dataColumn.key().length; i++) {
|
||||||
context.setVariable(dataColumn.key()[i], dataColumn.value()[i]);
|
context.setVariable(dataColumn.key()[i], dataColumn.value()[i]);
|
||||||
|
Reference in New Issue
Block a user