模板内容权限控制(决策系统),$fr_userposition,$fr_authority,$fr_username,GETUSERDEPARTMENTS()
1. 问题描述
不同用户登陆系统后,访问相同的模板,所看到的数据是不同,样式不同等。如:访问报表A,中央的账号登陆系统,看到的是全国的数据,而省级用户登陆系统,看到的是该省的数据,依次往下类推。
2. 实现原理
用户认证后会将报表三个固定的默认参数$fr_username、$fr_authority、$fr_userposition保存在session中,同一报表环境下模板中就可以直接以参数的形式获取到对应的值,然后在模板里面进行筛选判断就可以显示不同数据及样式。
参数$fr_username显示登录用户名,$fr_authority显示管理员角色(SUPERROLE)或者自定义角色名,$fr_userposition显示部门角色,格式如:{"departments":"销售","jobTitle":"销售经理"},部门角色是以部门和职务组成的数组,如果想直接获取部门进行设置权限,则可直接使用函数=GETUSERDEPARTMENTS()返回部门,如果想直接获取职务进行设置权限,则可直接使用函数=GETUSERJOBTITLES()返回职务。
注:$fr_username、$fr_authority、$fr_userposition是我们报表默认的参数,所以调用时大小写必须保持一致。
获取以上参数即可对模板进行权限控制,控制方法可参考文档模板内容的权限控制中参数的控制和模板控制。
返回顶部