多权限后台中如何判断返回数据范围

最近在做一个后台项目, 首页上显示的内容是根据当前登录的用户来展示的
比如

  • 普通员工展示自己的业绩统计
  • 部门主管展示自己管理的部门的业绩统计
  • 老板查看整个公司的业绩统计

老板、部门主管和员工是在一个表里存的
正常来说使用角色控制就好, 但是项目要求角色是管理员随便自定义的,也就是说 通过角色名之类的东西做判断就已经没辙了。
求教各位大佬 这种情况应该怎么设计? 我在百度上连搜索的关键词都不知道是什么

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
最佳答案

肯定跟角色没关啊,角色是可以随时增删的,,,这个应该是跟权限相关的,角色起到一个【权限组合】的作用,,,

3年前 评论
largezhou (作者) 3年前
porygonCN (楼主) 3年前
porygonCN (楼主) 3年前
讨论数量: 8
sane

可以试下用户的上下级以及角色超级管理员区分数据权限

3年前 评论
jcc123

这不应该是角色的问题,而是数据过滤的问题。

类似于品牌和门店的关系,我登录用户可以管理一个门店也可以管理多个门店。

比如在报表页面,我只能看到我管理的门店的数据。

这时就不是权限的问题,而是数据过滤的问题。

需要将用户与管理的门店进行关联。

所以转化你的问题,应该这样搞。

将用户与组织结构做一个关联

根据组织结构为条件过滤数据

3年前 评论
porygonCN (楼主) 3年前
jcc123 (作者) 3年前
panda-sir

这跟角色没啥关系 这是数据权限 要将角色和数据关联 比如你的业绩表里需要有用户ID 部门ID 根据当前登录用户的角色查询对应数据权限的维度和范围 再查询对应的业绩

3年前 评论

对于同一个接口,就是数据过滤问题。

3年前 评论
porygonCN

我个人能想到的解决方案是:

  • 预设好一些角色 这些角色不可修改
  • 每个user都要有且仅有其中一个角色
  • 通过这个预设角色来进行数据过滤

但是不知道这么做是不是常规解决方案

3年前 评论

肯定跟角色没关啊,角色是可以随时增删的,,,这个应该是跟权限相关的,角色起到一个【权限组合】的作用,,,

3年前 评论
largezhou (作者) 3年前
porygonCN (楼主) 3年前
porygonCN (楼主) 3年前

引入角色的数据权限的概念 然后做好封装就好

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!