首页 > 代码库 > 权限管理逻辑
权限管理逻辑
1.检查选中模块所属的角色是存在的
2.绑定模块:
创建授权列表
1. 绑定本模块,加入授权列表中
2.父模块绑定
2.1 判断是否存在父级
如果存在父级 : 获取父模块信息, 判断父模块是否被授权,如果没有被授权加入授权列表。
如果是第二级之后, 存在多个父模块的情况, 拿到本模块的treePath,即父模块的id,判断父模块是否被授权,进行批量查询(in 关键字),如果没有被授权加入授权列表。
3.子模块绑定
3.1 如果不存在父级,则直接开始此模块。
建立子模块的treePath :
1. 如果该模块的treePath为空, 子模块treePath为该模块的id。
2. 如果该模块的treePath不为空, 子模块的treePath为 该模块的treePath+该模块的id。
根据建立的treePath进行批量查询是否存在子模块:
1. 如果不存在, 在t_permission中批量添加授权列表,结束绑定模块。
2. 如果存在, 根据上面所建立的treePath查询子级模块的信息。
对查询到的子模块判断是否已经授权, 如果没有授权, 加入授权列表中。
这里为了方便,提高效率,直接将所查询到的子模块全部解绑,
再往t_permission中批量添加授权列表,结束绑定模块。
3.解绑模块:
1.解绑本模块
2.解绑所属的子模块
建立子模块的treePath :
1. 如果该模块的treePath为空, 子模块treePath为该模块的id。
2. 如果该模块的treePath不为空, 子模块的treePath为 该模块的treePath+该模块的id。
根据建立的treePath进行批量查询是否存在子模块:
如果存在,根据上面所建立的treePath查询子级模块的信息。
对子模块判断是否存在
1.如果不存在, 结束解绑模块。
2.如果存在,将所有子模块解绑,结束解绑模块。
关于 treePath:
String 类型 ,根级 为 Null,之后的级别,一父级id组成的 ,1,2, 形式的字符串
权限管理逻辑
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。