更新角色数据权限
2021-06-18 17:35:19 14 举报
更新角色数据权限
作者其他创作
大纲/内容
判断是否修改数据显示状态为无的用户权限
1.1 判断菜单ID是否存在1.2 判断传入的数据用户ID是否有效1.3 判断传入的授权ID是否有效1.4 判断传入的数据部门ID是否有效
存在新增部门数据时: 9.1 保存 角色数据部门权限 数据--RoleDataPermissionDept 9.2 当角色管理员用户ID列表无值,此步没有;\t有值时:9.2.1 保存 用户数据部门权限 数据--UserDataPermissionDept\t 9.2.2 确定 角色授权处的用户为领导时,添加 角色编辑数据授权时新生成的全部门权限。 存在减少的部门数据时: 9.3 删除 角色数据部门权限 数据--RoleDataPermissionDept 9.4 删除 用户数据部门权限 数据--UserDataPermissionDept
判断是否修改数据显示状态为默认的用户权限
11.1 获取 该角色菜单下 所有自定义状态用户(dataCtrlStatus=3) 的菜单级权限 --UserPermission 11.2 遍历11.1集合\ta. 获取角色菜单下 所有用户权限--RoleDataPermission\tb. 获取角色菜单下 所有自定义授权--RolePermission\tc. 获取角色菜单下 该用户的所有用户授权数据权限--UserDataPermission\td. 获取角色菜单下 该用户的所有自定义授权--UserPermission\t11.2.1 判断 如果a+b=0 将该用户数据权限添加在A集合\t\t c+d=0 将该用户数据权限添加在B集合 11.3 如果A有值,将A中用户数据权限的dataShowStatus 更新为0(未授权,前端显示空) 11.4 如果B有值,将B中用户数据权限的dataShowStatus 更新为1(未勾选中数据权限中任意人员,前端显示【无】)
存在新增自定义数据时: 8.1 保存角色自定义数据权限--RolePermission 8.2 当角色管理员用户ID列表无值,此步没有;有值时:保存 用户权限 数据--UserPermission 存在减少的自定义数据时: 8.3 移除角色自定义数据权限--RolePermission 8.4 移除人员自定义数据权限--UserPermission
清空角色菜单数据权限范围树缓存(客户 + 商品)
当角色数据权限发生改变时,对应人员的授权信息的data_show_status进行更新
处理角色客户模型部门数据变更(商品模型同理,只是type: 0=客户, 1= 商品)
存在新增客户数据时: 7.1 保存 角色数据权限 数据--RoleDataPermission 7.2 当角色管理员用户ID列表无值,此步没有;有值时:保存 用户数据权限 数据--UserDataPermission 存在减少的客户数据时: 7.3 删除 角色数据权限 数据--RoleDataPermission 7.4 删除 用户数据权限 数据--UserDataPermission
5.1 获取 该角色菜单下所有用户的菜单级权限+ dataShowStatus=2 (用户在基础数据的关系模型内,未修改数据授权前的前端显示【默认】)--UserPermission5.2 遍历5.1结果集并判断 拥有此权限的用户 是否在新增的客户或者商品数据权限中,都不在的情况下更新此用户权限数据data_show_status=1(1:未勾选中数据权限中任意人员,前端显示【无】)
获取该角色的管理员集合
6.1 获取 该角色菜单下所有用户的菜单级权限+ dataCtrlStatus=1( 1:用户不在基础数据的关系模型内,未修改数据授权前的前端显示【无】)6.2 遍历6.1结果集并判断 拥有此权限的用户 存在于 新增的客户或者商品数据权限中,更新此用户权限数据data_show_status=2 (2:用户在基础数据的关系模型内,未修改数据授权前的前端显示【默认】)
4.1 获取 该角色菜单下所有用户的菜单级权限--UserPermission 4.2 判断4.1不为空执行以下 4.3 判断前台是否 未勾选 任一部门或者人员 是--4.1中所有用户菜单权限变更为 dataShowStatus 更新为0(未授权,前端显示空) 否--不操作,继续向下4.4 4.4 获取旧角色菜单数据权限列表,部门列表,自定义授权码。 4.5 判断 前台是否 勾选 任一部门或者人员 否--不操作,4号步骤结束 是--继续4.6 4.6 判断有新的数据权限 且 历史角色菜单没配置任何数据(4.4无任何数据 ) 否--4号步骤结束 是-- 4.6.1 获取普通角色数据授权(4.1结果集过滤dataCtrlStatus !=4)不为空 则设置普通角色data_show_status为1【无权限】 --4.6.2 获取角色管理员的数据授权(4.1结果集过滤dataCtrlStatus =4)不为空 则设置角色管理员data_show_status为3【自定义】
对比获取角色菜单下原来与现在的客户,商品,自定义数据权限,对比各组数据,求出各组增加的和减少的数据权限
处理角色客户模型数据变更(商品模型同理,只是type: 0=客户, 1= 商品)
结束
任一失败
校验参数
处理角色自定义模型数据变更
角色菜单上的数据权限有增加,会影响【无】、【默认】状态下的用户数据权限,进行重新计算处理
开始
3.1 获取角色原客户模型数据权限--RoleDataPermission 3.2 获取角色新客户模型数据权限--接口入参 range(type) 3.3 获取角色原商品模型数据权限--RoleDataPermission 3.4 获取角色新商品模型数据权限--接口入参 range(type) 3.5 获取角色原自定义数据权限--RolePermission 3.6 获取角色新自定义数据权限--接口入参 authority 3.7 获取角色原客户模型部门数据权限--RoleDataPermissionDept 3.8 获取角色新客户模型部门数据权限--接口入参 RangeDepts(type) 3.9 获取角色原商品模型部门数据权限--RoleDataPermissionDept 3.10 获取角色新商品模型部门数据权限--接口入参RangeDepts(type)
0 条评论
下一页