jeecgboot / JimuReport

「数据可视化:报表、仪表盘、大屏」积木报表是一款类Excel操作风格,在线拖拽设计的报表工具和和数据可视化产品。功能涵盖: 报表设计、打印设计、图形报表、仪表盘门户设计、大屏设计等,完全免费!秉承“简单、易用、专业”的产品理念,极大的降低报表开发难度、缩短开发周期、解决各类报表难题。
http://jimureport.com
GNU General Public License v3.0
6.52k stars 1.66k forks source link

多租户配置按照说明文档配置后查询报表不带租户id #2128

Closed lisep-w closed 1 year ago

lisep-w commented 1 year ago
版本号:

请问多租户配置,我这样配置查询不带租户ID,求大佬指点

问题描述:

image image image image

zhangdaiscott commented 1 year ago

积木报表?如何配置的,详细说明

lisep-w commented 1 year ago

1、项目引入了积木报表的依赖(1.6.3)

    <dependency>
        <groupId>org.jeecgframework.jimureport</groupId>
        <artifactId>jimureport-spring-boot-starter</artifactId>
        <version>${jeccg.jimureport.version}</version>
    </dependency>

2、配置了数据源 @Bean(name = "minidaoDataSource") @ConfigurationProperties(prefix = "jeecg.minidao-datasource") public DataSource dataSource(DataSourceProperties properties){ return DataSourceBuilder.create(properties.getClassLoader()) .type(HikariDataSource.class) .driverClassName("com.mysql.cj.jdbc.Driver") .url("jdbc:mysql://xxxx:xxxx/xxxx?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&serverTimezone=UTC") .username("xxxx") .password("xxxx") .build(); } 3、nacos的yml配置

Minidao配置

minidao : base-package: org.jeecg.modules.jmreport.*

jeecg : minidao-datasource: hikari:

连接池最大连接数

  maximum-pool-size: 400
  # 空闲时保持最小连接数
  minimum-idle: 20
  # 空闲连接存活时间
  idle-timeout: 30000
  # 连接超时时间
  connection-timeout: 1800000
  #池中连接最长生命周期
  max-lifetime: 1800000

jmreport: customPrePath: /online-report

多租户模式,默认值为空(created:按照创建人隔离、tenant:按照租户隔离) (v1.6.2+ 新增)

saasMode: tenant
# 平台上线安全配置(v1.6.2+ 新增)
firewall:
  # 数据源安全 (开启后,不允许使用平台数据源、SQL解析加签并且不允许查询数据库)
  dataSourceSafe: true
  # 低代码开发模式(dev:开发模式,prod:发布模式—关闭在线报表设计功能,分配角色admin、lowdeveloper可以放开限制)
  lowCodeMode: prod
#是否 禁用导出PDF和图片的按钮 默认为false
exportDisabled: false
#是否自动保存
autoSave: false
#自动保存间隔时间毫秒
interval: 20000
# 列索引
col: 300
#自定义项目前缀
customPrePath: /dev-api/online-report
# 自定义API接口的前缀 #{api_base_path}的值
# apiBasePath: http://10.10.0.138:83/
#预览分页自定义
pageSize:
  - 10
  - 20
  - 50
  - 100
#打印纸张自定义
printPaper:
  - title: 标签打印
    size:
      - 140
      - 100        
#接口超时设置(毫秒)
connect-timeout: 1800000
#Excel导出模式(fast/快、primary/精致模式,默认fast)
export-excel-pattern: fast
#Excel导出数据每个sheet的行数,每个sheet最大1048576行
page-size-number: 1048576
#excel样式超过多少行显示默认样式(只在fast模式下有效)
excel-style-row: 1048576
#预览页面的工具条 是否显示 默认true
viewToolbar: true
#设计页面表格的线是否显示 默认true
line: true
#sql数据源不写字典下拉框显示条数 版本1.4.2之后被放弃
select-show-total: 10

local|minio|alioss

uploadType: local

local

path :

文件路径

upload: /opt/upload

minio: minio_url: http://192.168.1.169:9000 minio_name: admin minio_pass: 123456 bucketName: erp save_path: ERP/SpotCheck/ template_path: templateDownload/

输出sql日志

logging: level: org.jeecg.modules.jmreport : DEBUG

4、配置token授权,和租户获取,写了一个Impl实现类JmReportTokenServiceI,重写了里面的getToken,getTenantId等方法。 token获取可以,然后获取租户的时候,后台sql查询数据库报表的时候,不带租户iD