您好,只有最新版本的6.X支持在线编辑修改,如果想创建/编辑文档,请移步到 *最新版本*

用户仪表板权限查询

  • 文档创建者:用户风
  • 历史版本:6
  • 最近更新:Carly 于 2022-08-02
  • 1. 概述

    1.1 版本

    FineBI 版本
    5.1

    1.2 功能描述

    根据用户查询有哪些权限,权限是哪个赋予的

    1.3 注意事项

    1)本文以内置 FineDB 数据库为例,外接数据库的SQL语句请自行修改。

    2)用户需在 BI 平台中先创建 FineDB 数据库的数据连接,详情请参见:FineDB 数据库简介

    2. 方式一:直接使用 SQL 语句进行查询

    2.1创建服务器数据集

    进入数据准备>业务包,点击添加表-SQL数据集

    1612323109(1).png

    按照上图图表步骤进行操作,

    语句如下:

    SELECT*FROM (select

    u.ID 用户ID,

    u.USERNAME 用户名,

    u.REALNAME 姓名,

    rc.id 角色ID,

    rc.NAME 角色 ,

    rd.id 部门ID,

    d.NAME 部门

    from FINE_USER u

    left join FINE_USER_ROLE_MIDDLE rm on u.id=rm.userId 

    left join FINE_CUSTOM_ROLE rc on rm.ROLETYPE=2 and rm.ROLEID=rc.id

    left join FINE_DEP_ROLE rd on rm.ROLETYPE=1 and rm.ROLEID=rd.id

    left join FINE_DEPARTMENT d on d.id=rd.DEPARTMENTID

    left join FINE_POST p on p.id=rd.POSTID

    where 1=1

    ${if(len(用户) == 0,"","and u.ID ='"+用户+"' ") }) A

    JOIN (

    select

    F.roleid,

    case when f.AUTHORITYTYPE='1' then '查看权限'

    when f.AUTHORITYTYPE='2' then '授权权限'

    when f.AUTHORITYTYPE='3' then '编辑权限'

    when f.AUTHORITYTYPE='4' then '数据连接管理权限'

    when f.AUTHORITYTYPE='101' then 'FineReport 模板认证权限'

    when f.AUTHORITYTYPE='102' then 'FineReport 模板查看权限'

    when f.AUTHORITYTYPE='103' then 'FineReport 模板填报权限'

    when f.AUTHORITYTYPE='201' then '业务包使用权限'

    when f.AUTHORITYTYPE='202' then '业务包管理权限'

    when f.AUTHORITYTYPE='203' then 'BI报表导出权限'

    when f.AUTHORITYTYPE='204' then 'BI仪表板分享权限'

    when f.AUTHORITYTYPE='205' then 'BI模板认证权限'

    when f.AUTHORITYTYPE='206' then 'BI模板查看权限'

    when f.AUTHORITYTYPE='207' then 'BI模板导出权限'

    when f.AUTHORITYTYPE='208' then 'BI仪表板分享角色控制权限'

    when f.AUTHORITYTYPE='209' then 'BI仪表板分享功能权限'

    when f.AUTHORITYTYPE='210' then 'BI仪表板公共链接功能权限' end 权限类型,

    case when f.ROLETYPE='1' then '部门'

    when f.ROLETYPE='2' then '角色'

    when f.ROLETYPE='3' then '用户'

    when f.ROLETYPE='4' then '职务' end 类型,

    a.ID,

    a.DISPLAYNAME 名称,

    a.SORTINDEX,

    a.PARENTID PARENTID0,

    b.PARENTID PARENTID1,

    c.PARENTID PARENTID2,

    d.PARENTID PARENTID3,

    e.PARENTID PARENTID4,

    case when a.EXPANDTYPE='1' then '平台管理系统节点'

    when a.EXPANDTYPE='2' then '首页'

    when a.EXPANDTYPE='3' then '目录'

    when a.EXPANDTYPE='5' then '链接'

    when a.EXPANDTYPE='6' then '文件'

    when a.EXPANDTYPE='101' then '上报流程'

    when a.EXPANDTYPE='102' then ' FineReport报表'

    when a.EXPANDTYPE='201' then ' BI报表'

     end 权限目录类型,

    case when a.DEVICETYPE='0' then '未勾选 '

    when a.DEVICETYPE='1' then 'PC '

    when a.DEVICETYPE='2' then '平板 '

    when a.DEVICETYPE='3' then 'PC、平板 '

    when a.DEVICETYPE='4' then '手机 '

    when a.DEVICETYPE='5' then 'PC、手机 '

    when a.DEVICETYPE='6' then '平板、手机 '

    when a.DEVICETYPE='7' then 'PC 、平板、手机 ' end  适用平台,

     a.SORTINDEX 排序顺序

    from FINE_AUTHORITY_OBJECT a

    left join FINE_AUTHORITY_OBJECT b on a.PARENTID=b.id

    left join FINE_AUTHORITY_OBJECT c on b.PARENTID=c.id

    left join FINE_AUTHORITY_OBJECT d on c.PARENTID=d.id

    left join FINE_AUTHORITY_OBJECT e on d.PARENTID=e.id

     join FINE_AUTHORITY f on f.AUTHORITY=2 and (a.id=f.AUTHORITYENTITYID or a.PARENTID=f.AUTHORITYENTITYID or b.PARENTID=f.AUTHORITYENTITYID or c.PARENTID=f.AUTHORITYENTITYID

    or d.PARENTID=f.AUTHORITYENTITYID or e.PARENTID=f.AUTHORITYENTITYID)

    where not exists (select 1 from  FINE_AUTHORITY f1 where f1.AUTHORITY=1 and (a.id=f1.AUTHORITYENTITYID or a.PARENTID=f1.AUTHORITYENTITYID or b.PARENTID=f1.AUTHORITYENTITYID or c.PARENTID=f1.AUTHORITYENTITYID or d.PARENTID=f1.AUTHORITYENTITYID or e.PARENTID=f1.AUTHORITYENTITYID) and f.roleid=f1.roleid and f.AUTHORITYTYPE=f1.AUTHORITYTYPE)

    order by a.PARENTID,a.SORTINDEX) B ON A.用户ID=B.roleid OR A.角色ID=B.roleid   OR A.部门ID=B.roleid
    显示代码

    2.2 建立仪表盘

    选择仪表盘,点击新建仪表盘

    1612323346(1).png

    添加组件

    1612323982(1).png

    选择数据集

    1612324025(1).png

    选择组件类型和字段

    1612324148(1).png

    将名称改为显示权限名称,将类型改为赋予权限类型名称

    1612324227(1).png

    进入仪表盘进行仪表盘预览

    1612324573.png

    3. 方式二:数据集处理

    根据数据进行分类合并等数据集处理,仪表盘与方式一一样只是选择数据集不一样

    3.1 用户信息数据查询

    根据用户相关联的数据建立用户信息,可以查看用户所属部门职位用户的角色信息等

    1612326946(1).png

    3.2 用户信息数据集处理

    上述的用户信息由于部门和角色同一张表不同类型,查询出来有多行,建立数据集进行分组合并

    1612327131(1).png


    3.3 权限目录数据查询

    根据权限信息和权限信息目录建立sql数据集,客户查看哪些权限ID有哪些目录

    1612327213(1).png

    语句如下:

    select 

    F.roleid,

    case when f.AUTHORITYTYPE='1' then '查看权限'

    when f.AUTHORITYTYPE='2' then '授权权限'

    when f.AUTHORITYTYPE='3' then '编辑权限'

    when f.AUTHORITYTYPE='4' then '数据连接管理权限'

    when f.AUTHORITYTYPE='101' then 'FineReport 模板认证权限'

    when f.AUTHORITYTYPE='102' then 'FineReport 模板查看权限'

    when f.AUTHORITYTYPE='103' then 'FineReport 模板填报权限'

    when f.AUTHORITYTYPE='201' then '业务包使用权限'

    when f.AUTHORITYTYPE='202' then '业务包管理权限'

    when f.AUTHORITYTYPE='203' then 'BI报表导出权限'

    when f.AUTHORITYTYPE='204' then 'BI仪表板分享权限'

    when f.AUTHORITYTYPE='205' then 'BI模板认证权限'

    when f.AUTHORITYTYPE='206' then 'BI模板查看权限'

    when f.AUTHORITYTYPE='207' then 'BI模板导出权限'

    when f.AUTHORITYTYPE='208' then 'BI仪表板分享角色控制权限'

    when f.AUTHORITYTYPE='209' then 'BI仪表板分享功能权限'

    when f.AUTHORITYTYPE='210' then 'BI仪表板公共链接功能权限' end 权限类型,

    case when f.ROLETYPE='1' then '部门'

    when f.ROLETYPE='2' then '自定义角色'

    when f.ROLETYPE='3' then '用户'

    when f.ROLETYPE='4' then '职务' end 类型,

    a.ID,

    a.DISPLAYNAME 名称,

    a.SORTINDEX,

    a.PARENTID PARENTID0,

    b.PARENTID PARENTID1,

    c.PARENTID PARENTID2,

    d.PARENTID PARENTID3,

    e.PARENTID PARENTID4,

    case when a.EXPANDTYPE='1' then '平台管理系统节点'

    when a.EXPANDTYPE='2' then '首页'

    when a.EXPANDTYPE='3' then '目录'

    when a.EXPANDTYPE='5' then '链接'

    when a.EXPANDTYPE='6' then '文件'

    when a.EXPANDTYPE='101' then '上报流程'

    when a.EXPANDTYPE='102' then ' FineReport报表'

    when a.EXPANDTYPE='201' then ' BI报表'

     end 权限目录类型,

    case when a.DEVICETYPE='0' then '未勾选 '

    when a.DEVICETYPE='1' then 'PC '

    when a.DEVICETYPE='2' then '平板 '

    when a.DEVICETYPE='3' then 'PC、平板 '

    when a.DEVICETYPE='4' then '手机 '

    when a.DEVICETYPE='5' then 'PC、手机 '

    when a.DEVICETYPE='6' then '平板、手机 '

    when a.DEVICETYPE='7' then 'PC 、平板、手机 ' end  适用平台,

     a.SORTINDEX 排序顺序 from  PUBLIC.FINE_AUTHORITY_OBJECT a

    left join FINE_AUTHORITY_OBJECT b on a.PARENTID=b.id

    left join FINE_AUTHORITY_OBJECT c on b.PARENTID=c.id

    left join FINE_AUTHORITY_OBJECT d on c.PARENTID=d.id

    left join FINE_AUTHORITY_OBJECT e on d.PARENTID=e.id

     join FINE_AUTHORITY f on f.AUTHORITY=2 and (a.id=f.AUTHORITYENTITYID or a.PARENTID=f.AUTHORITYENTITYID or b.PARENTID=f.AUTHORITYENTITYID or c.PARENTID=f.AUTHORITYENTITYID

    or d.PARENTID=f.AUTHORITYENTITYID or e.PARENTID=f.AUTHORITYENTITYID)



    where not exists (select 1 from  FINE_AUTHORITY f1 where f1.AUTHORITY=1 and (a.id=f1.AUTHORITYENTITYID or a.PARENTID=f1.AUTHORITYENTITYID or b.PARENTID=f1.AUTHORITYENTITYID or c.PARENTID=f1.AUTHORITYENTITYID or d.PARENTID=f1.AUTHORITYENTITYID or e.PARENTID=f1.AUTHORITYENTITYID) and f.roleid=f1.roleid and f.AUTHORITYTYPE=f1.AUTHORITYTYPE)

    order by a.PARENTID,a.SORTINDEX
    显示代码

    3.4 用户权限目录数据集

    根据用户信息数据集和权限目录查询,建立根据用户ID配置的数据权限的数据集

    1612327406(1).png

    3.5 角色权限目录数据集

    根据用户信息数据集和权限目录查询,建立根据角色D配置的数据权限的数据集

    1612327533(1).png

    3.6 部门职位权限目录数据集

    根据用户信息数据集和权限目录查询,建立根据部门ID配置的数据权限的数据集

    1612327677(1).png

    3.7用户查询所有权限目录数据集

    将用户、角色、部门职位赋予的权限合并后就是用户所有权限

    1612327889(1).png

    3.8 建立仪表盘

    仪表盘的建立方式跟方式一一样,就是数据集选择不一样,这个选择我们最后组装的用户查询所有权限数据集


    1612328061(1).png

    附件列表


    主题: 管理员指南
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    请前往「服务平台」,选择「在线支持」

    热线电话:400-811-8890转2

    在线QQ(将在2023.01.03关停):800049425

    总裁办24H投诉

    热线电话:173-1278-1526

    文 档反 馈

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭

    反馈已提交

    网络繁忙