0
点赞
收藏
分享

微信扫一扫

若依框架 --- 使用数据权限功能


一、作用说明 

若依设计了数据权限功能,分为:

全部数据权限
自定数据权限
部门数据权限
部门及以下数据权限
仅本人数据权限

若依数据权限的实现
主要在: DataScopeAspect 类里,通过AOP+注解的方式实现。

数据权限过滤注解
主要在@interface DataScope中实现。

二、操作步骤

1. 需要数据权限的表设计字段:
dept_id :big int类型
create_user_id :bigint类型
2. 在需要数据权限的方法上加注解
部门数据权限注解

@DataScope(deptAlias = "d")
public List<...> select(...)
{
return mapper.select(...);
}

部门及用户权限注解

@DataScope(deptAlias = "d", userAlias = "u")
public List<...> select(...)
{
return mapper.select(...);
}

3. 在mybatis的 xml 中加过滤标签

<select id="select" parameterType="..." resultMap="...Result">
<include refid="select...Vo"/>
<!-- 数据范围过滤 -->
${params.dataScope}
</select>

注意SQL中关联 sys_dept 时别名要用 d,关联sys_user表时别名要用 u。

4. 实体类注意事项

实体类必须从 BaseEntity 继承,组合的SQL会放在BaseEntity对象的params属性中,所以过滤标签可以通过${params.dataScope}来引用组合的SQL语句。

举报

相关推荐

0 条评论