跳到主要内容

ruoyi单体集成JimuBI大屏

本示例以若依Bootstrap单应用版本为例

1、项目结构

2、执行初始化脚本

jimureport.sql

3、pom中引入积木BI大屏最新依赖

默认提供SpringBoot2脚手架项目依赖,需要springboot3依赖的请查看文档。

注意:使用积木BI大屏需要引入积木报表依赖。

<!-- 积木报表 -->
<dependency>
<groupId>org.jeecgframework.jimureport</groupId>
<artifactId>jimureport-spring-boot-starter</artifactId>
<version>1.9.3</version>
</dependency>
<!-- 积木BI大屏 -->
<dependency>
<groupId>org.jeecgframework.jimureport</groupId>
<artifactId>jimubi-spring-boot-starter</artifactId>
<version>1.9.3</version>
</dependency>

4、RuoYiApplication添加积木扫描路径(可忽略)

@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class }, scanBasePackages = {"com.ruoyi","org.jeecg"})

5、实现扩展接口

@Service
public class OnlDragExternalServiceImpl implements IOnlDragExternalService {
}

此处很重要,请参考JeecgBoot集成扩展实现:

6、shiro排除

//积木报表排除
filterChainDefinitionMap.put("/jmreport/**", "anon");
filterChainDefinitionMap.put("/**/*.js.map", "anon");
filterChainDefinitionMap.put("/**/*.css.map", "anon");
//积木BI大屏排除
filterChainDefinitionMap.put("/drag/**", "anon");

7、yml中配置minidao(可忽略)

#持久层框架
minidao:
base-package: org.jeecg.modules.jmreport.*,org.jeecg.modules.drag.*

8、启动项目访问

若依默认端口是80,可以根据自己的需求集成到若依系统里面(如集成到菜单)

积木BI大屏访问地址:http://localhost/drag/list
若依访问地址:http://localhost

9、常见问题

9.1 访问地址连接丢失请求前缀

产生原因之一:nginx转发时访问是有项目前缀,但访问地址上没有拼接,导致项目请求不到地址

  • nginx配置

  • 访问地址缺少前缀

  • 解决方案:pom文件中填写
jeecg :
jmreport:
#自定义项目前缀
customPrePath: