JeecgBoot集成积木报表
快速集成到自己项目中,支持SpringBoot2脚手架项目,需要springboot3依赖的请查看文档。
第一步: 引入 JimuReport 依赖 jar
<dependency>
<groupId>org.jeecgframework.jimureport</groupId>
<artifactId>jimureport-spring-boot-starter</artifactId>
<version>${version}</version>
</dependency>
最新版本可以从 http://jimureport.com/doc/log 中查询到
第二步:application.yml 增加minidao配置
minidao :
base-package: org.jeecg.modules.jmreport.*,org.jeecg.modules.drag.*
第三步: 执行初始化脚本
第四步: 排除权限拦截
修改org.jeecg.config.shiro.ShiroConfig加入以下代码
//积木报表请求排除
filterChainDefinitionMap.put("/jmreport/**", "anon");
filterChainDefinitionMap.put("/**/*.js.map", "anon");
filterChainDefinitionMap.put("/**/*.css.map", "anon");
//积木BI大屏排除
filterChainDefinitionMap.put("/drag/view", "anon");
filterChainDefinitionMap.put("/drag/page/queryById", "anon");
filterChainDefinitionMap.put("/drag/page/addVisitsNumber", "anon");
filterChainDefinitionMap.put("/drag/page/queryTemplateList", "anon");
filterChainDefinitionMap.put("/drag/share/view/**", "anon");
filterChainDefinitionMap.put("/drag/onlDragDatasetHead/getAllChartData", "anon");
filterChainDefinitionMap.put("/drag/onlDragDatasetHead/getTotalData", "anon");
filterChainDefinitionMap.put("/drag/mock/json/**", "anon");
filterChainDefinitionMap.put("/jimubi/view", "anon");
filterChainDefinitionMap.put("/jimubi/share/view/**", "anon");
第五步: 访问积木报表
访问地址: {项目前缀}/jmreport/list?token=${token}
第六步: 菜单配置
配置报表集成到菜单里
vue2与vue3菜单配置有区别,请对照截图
{{ window._CONFIG['domianURL'] }}/jmreport/list?token=${token}&tenantId=${tenantId}
详细配置参考截图
#常见问题
自定义token鉴权
如果不自定义,则积木报表所有请求都不做权限控制,自定义鉴权和权限参考这个文档
Vue2 菜单配置报表
{{ window._CONFIG['domianURL'] }}/jmreport/list?token=${token}&tenantId=${tenantId}
参数说明
{{ window._CONFIG['domianURL'] }}
:后台项目访问地址${token}
:登录token用于权限控制${tenantId}
:可选 当前用户登录的租户- 前端组件:layouts/IframePageView 菜单配置截图
JeecgBoot3.4.3之前老版本集成会报autpoi错误
错误原因:是因为autopoi版本不一致 解决方案:引入依赖的时候排除autopoi,因为最新版本(1.3.6-beta及以上)积木报表用的是autopoi最新版(poi升级到4)
<dependency>
<groupId>org.jeecgframework.jimureport</groupId>
<artifactId>jimureport-spring-boot-starter</artifactId>
<version>1.4.0-beta</version>
<exclusions>
<exclusion>
<groupId>org.jeecgframework</groupId>
<artifactId>autopoi-web</artifactId>
</exclusion>
</exclusions>
</dependency>