# 如何设置用户只能看到所属部门的数据
本文主要介绍,如何通过权限去设置各部门用户只能查看本部门的数据,比如财务部用户只能查看财务部的数据,销售部用户只能查看销售部的数据。
# 设置思路
设置用户只能查看本部门的数据,需要遵循如下几个要点:
- 确定业务表中,由哪个字段限定数据范围。例如:一张销售明细表,【门店区域】字段,标识了每一条销售数据是属于哪个销售区域的。那【门店区域】为
华中
的数据,只能由华中
区域范围的用户可见 - 确定部门表中,有字段标识当前登录用户数据范围。例如:通过用户部门表中的【所属区域】字段,是能确定当前登录用户所在区域是
华中
还是华南
- 业务表与部门表中的区域关联了同一张维表。例如【行政区划】表,这样业务表中的【门店区域】字段与部门表中的【所属区域】就可以对应上
通过以上几点结合,我们就可以在项目设置>数据范围处引用数据范围维表,设置数据范围,最后在权限模块下为用户或用户组分配权限,达到用户所在部门的【所属区域】字段为华中
,则只能看到销售明细表中【门店区域】为华中的数据。具体步骤可参考设置方法。
# 设置方法
我们以湖北分公司这个部门为例,限定其部门的用户只能查看湖北省的数据。通过上面的思路分析,操作步骤如下:
- 检查业务表中的数据范围字段:业务表中存在
区域编码
字段,关联了行政区划(父子)
表 - 设置部门数据范围:在权限>部门模块中的所属地属性设置本部门的数据范围为
湖北省
,若没有所需属性可添加新属性。 所属地属性在部门表中的存储格式为行政区划,即当前结果存储为420000
,此时,业务表与部门表的范围就有了一致性 - 引入数据范围维表:根据需要引入可以限制数据范围的维表,如:
行政区划(父子)
,设置好其代号为XZQH
、简要描述为行政区划
- 设置常用数据范围:在常用数据范围处添加数据范围。具体属性设置如下
- 名称:该数据范围的名称,如
当前用户行政区划
- 用户组:可使用该数据范围的用户组,如
领导组
- 数据范围:设置想要限制的数据范围,如设置表达式
行政区划 = DEPT_PROPERTY('districtId')
- 名称:该数据范围的名称,如
- 设置默认数据范围:在默认数据范围的下拉框处选择相应的数据范围即可。如
当前用户行政区划
- 权限分配:给用户或者用户组分配权限时,选择我们设置好的数据范围
数据范围小贴士
DEPT_PROPERTY('districtId')
用于获取当前用户所在部门的所属地,详情可查看DEPT_PROPERTY文档。- 在项目设置处添加的常用数据范围只是预设置,还需要在权限处为用户或用户组去设置数据范围才能生效。
0条评论
评论