不同页面要求的数据权限不同,该如何设计?

需求是这样:
查看权限有如下4种
1)A部门人员可以看A部门数据
2)A部门人员可以看A部门,A部门子节点数据
3)A部门人员可以看A部门,A部门子节点,A部门直接父节点一直到根节点
4)A部门人员可以看本用户数据

数据修改(或删除)权限有3种
1)A部门人员可以修改本用户数据
2)A部门人员可以修改A部门数据
3)A部门人员可以修改A部门数据,A部门子节点数据

不同的页面功能,查看,修改权限不同,没有修改权限就不展示修改删除按钮,并在修改,删除时判断
比如:页面1要求查看权限按第3,修改权限按第3
页面2要求查看权限按第2,修改权限按第2
页面3要求查看权限按第2,修改权限按第3
这种需求开发时应该如何设计呢?

阅读 2.2k
3 个回答

这种权限都得特定设计, 把用户的权限保存好, 操作时判断. 应该没有通用的.

新手上路,请多包涵

一般可以参考这种去衍生:
1.用户表-》用户角色关联表
2.权限表-》权限角色关联表
3.角色表
衍生的业务表:比如组织表,用户扩展表,角色组表,如果更复杂的,租户情况,再加个应用表,应用用户关联表等等。看具体需求

一般的来说就像楼上说的有用户表,角色表,角色权限表。
你的需求我理解的是一个部门之内的数据本部门都可以查看(不论级别),一个部门内,修改权限只能修改本层级及比自己级别小的。不同部门我猜是能看?
角色表这,一个部门内的角色要设计角色等级大小。然后页面每展示一次数据都要知道当前数据所属部门所属角色层级,这个不管你是在页面上本来就有的可选择的,还是找一次后端返一次。知道后和当前角色的比较。有的页面就是和部门绑定的,有的页面是多个部门共享,多个部门共享的页面,差不多就要判断当前数据的所属和当前角色了,我理解的大概是这样

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题