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

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

一、作用说明


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

若依数据权限

全部自定数据权限

部门数据权限

部门及以下数据权限

仅本人数据权限


若依数据权限的实现


主要在: 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语句。

目录
相关文章
|
4月前
|
前端开发 数据安全/隐私保护
若依框架---权限控制角色设计
若依框架---权限控制角色设计
890 0
|
4月前
|
SQL
若依框架---角色与权限
若依框架---角色与权限
286 0
|
4月前
|
NoSQL Redis 数据安全/隐私保护
若依框架----token权限控制逻辑
若依框架----token权限控制逻辑
448 0
|
4月前
|
Java 数据库
若依框架---模板生成
若依框架---模板生成
138 0
|
前端开发
jeecgboot数据权限用法
jeecgboot数据权限用法
1081 0
jeecgboot数据权限用法
支付系统---微信支付14----创建案例项目---介绍,第二步引入Swagger,接口文档和测试页面生成工具,定义统一结果的目的是让结果变得更加规范,以上就是谷粒项目的几个过程
支付系统---微信支付14----创建案例项目---介绍,第二步引入Swagger,接口文档和测试页面生成工具,定义统一结果的目的是让结果变得更加规范,以上就是谷粒项目的几个过程
|
4月前
|
JavaScript 前端开发
若依 自定义实现导入功能
若依 自定义实现导入功能
87 1
|
4月前
|
数据处理 数据库 开发者
Django中的自定义管理命令:扩展管理功能的途径
【4月更文挑战第15天】Django教程:介绍如何创建和使用自定义管理命令以扩展框架功能。在应用的`management/commands`目录下创建Python文件,继承`BaseCommand`,实现`handle`方法。示例代码展示了如何定义参数和执行逻辑。自定义命令适用于批量数据处理、定期任务、项目初始化和自定义迁移操作。注意文件位置、命令安全性和稳定性。自定义管理命令能提升开发和维护效率。
|
4月前
|
SQL 前端开发 数据安全/隐私保护
若依框架---权限管理设计
若依框架---权限管理设计
408 0
|
4月前
|
缓存 前端开发 JavaScript
若依框架中的权限控制逻辑 ---- 菜单
若依框架中的权限控制逻辑 ---- 菜单
409 0