帆软报表-数据权限控制与实现

news/2024/10/19 8:16:27

1、组织表设计(同数据库设计)

工号

用户名

监管机构code

监管机构名

大区code

大区名

区域code

区域名

机构等级

机构.S(user_code)

机构.G(user_name)

机构.G(org1_code)

机构.G(org1_name)

机构.G(org2_code)

机构.G(org2_name)

机构.G(org3_code)

机构.G(org3_name)

机构.G(level)

2、登陆人信息设计(测试用,参数查看)

3、模板参数设计(加载数据源数据之前,获取模板参数设定)

 注:详细代码如下

p_level:

sql("mysql","SELECT * FROM t_org where user_code="+p_userno,11)

p_org4:

sql("mysql","SELECT * FROM t_org where user_code="+p_userno,9)

p_org3:

sql("mysql","SELECT * FROM t_org where user_code="+p_userno,7)

p_org2:

sql("mysql","SELECT * FROM t_org where user_code="+p_userno,5)

4、数据权限控制

注:详细代码如下

 1 SELECT * FROM `数据权限控制表` c
 2 left join t_org o
 3 on c.user_code=o.user_code
 4 where 1=1 
 5 
 6 ${if(p_level==1,
 7         "",
 8         if(p_level==2,
 9             if(len(p_org3)==0,
10                 " and o.org2_code = '"+p_org2+"' ",
11                 " and o.org2_code = '"+p_org2+"' and o.org3_code ='"+p_org3+"'"
12             ),
13             if(p_level==3,
14                 if(len(p_org4)==0 && len(p_org3)>0,
15                     " and o.org3_code = '"+p_org3+"' ",
16                     " and o.org3_code = '"+p_org3+"' and o.org4_code ='"+p_org4+"'"
17                 ),
18                 if(p_level==4,
19                     " and o.org4_code = '"+p_org4+"' and c.user_code ='"+p_userno+"'",
20                     " and 1=2"
21                 )
22               )
23         
24         )
25     
26     )
27 }

 

5、支持

通过以下二维码进行捐赠,请作者喝杯咖啡表示鼓励 ☕️

(微信号:huolp1125)

 

 

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/73320.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

VMware Data Services Manager 2.1 - 数据库管理和数据服务管理

VMware Data Services Manager 2.1 - 数据库管理和数据服务管理VMware Data Services Manager 2.1 - 数据库管理和数据服务管理 在 vSphere 环境中按需配置和自动管理 PostgreSQL 和 MySQL 数据库 请访问原文链接:https://sysin.org/blog/vmware-data-services-manager/ 查看最…

Eclipse Symphony

Eclipse Symphony 是一个Eclipse 基金会下的多功能的开源工具链协调器,旨在将各种边缘软件和硬件堆栈无缝集成为一个完整的端到端体验。它允许开发者和采用者在不进行任何更改的情况下使用他们当前的系统,并将这些分散的系统统一为一个连贯的整体。Symphony 是一个基于标准的…

读数据工程之道:设计和构建健壮的数据系统13无服务器

无服务器1. 无服务器 1.1. 云供应商的一个大趋势是无服务器,允许开发人员和数据工程师无须在后台管理服务器即可运行应用程序1.1.1. 无服务器快速将价值投入到其正确的用例1.2. 无服务器真正开始流行是在2014年AWS Lambda全面投入使用之后1.2…

计量经济学(十二)——虚拟变量回归模型

img { display: block; margin-left: auto; margin-right: auto } table { margin-left: auto; margin-right: auto } 虚拟变量回归(Dummy Variable Regression)是处理分类变量的标准工具,在回归分析中具有广泛应用。分类变量通常是定性变量,例如性别(男/女)、地区(东/西…

手表厂家一览

swatch集团 劳力士集团 历峰集团 LVMH集团

Wi-Fi 无线频宽 20M/40M/80M All In One

Wi-Fi 无线频宽 20M/40M/80M All In One Wi-Fi 无线频段/无线电波段 2.4G / 5G / 6GWi-Fi 无线频宽 20M/40M/80M All In OneWi-Fi 无线频段/无线电波段 2.4G / 5G / 6GWi-Fi 频段 Wi-Fi 是基于 IEEE 802.11 系列标准的无线网络协议系列,常用于设备的局域网络和互联网接入,允…

关于人力资源管理,我有一些思考。欢迎你来指点江山,也可以来吃瓜。

两种人力资源管理的理念: 以人定岗和以岗定人 “以人定岗”倾向于中国传统的思维方式,主张以人为核心,以人为本,而西方企业管理主张以“事”为核心,通过职能分析,设定职务岗位,定岗定责,以岗定人。 这两种用人方法揭示了中西方用人哲学的不同。 显然在实际操作中,“以…

基于FPGA的16QAM基带通信系统,包含testbench,高斯信道模块,误码率统计模块,可以设置不同SNR

1.算法仿真效果本程序工程在我以前写的《m基于FPGA的16QAM调制解调通信系统verilog实现,包含testbench,不包含载波同步》基础上增加了信道模块,误码率统计模块,可以设置不同的SNR,仿真测试该FPGA系统的误码性能。vivado仿真结果如下(完整代码运行后无水印):设置SNR=8db设…