若依ruoyi框架集成第三方报表工具(集成jmreport积木报表)

1、集成jmreport工具

1.1、引入依赖

<!-- 集成jmreport报表工具 -->
<dependency>
    <groupId>org.jeecgframework.jimureport</groupId>
    <artifactId>jimureport-spring-boot-starter</artifactId>
    <version>1.5.6</version>
</dependency>

1.2、下载依赖SQL在自己的数据库执行

下载地址:https://github.com/jeecgboot/JimuReport/tree/master/db
在这里插入图片描述

1.3、若依启动类中增加jmreport的扫描

com.ruoyi.RuoYiApplication

//...

//增加jmreport的包扫描
@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class },
        scanBasePackages = {"org.jeecg.modules.jmreport", "com.ruoyi"}
)
public class RuoYiApplication
{

//...

1.4、若依鉴权机制中对jmrepot添加白名单,不做token校验

com.ruoyi.framework.config.SecurityConfig

//...

//积木报表
.antMatchers("/jmreport/**").anonymous()

//...

1.5、配置完成,访问jmreport首页

配置完成启动项目,访问http://localhost:10011/jmreport/list即可看到积木报表的页面

在这里插入图片描述

2、修改jmreport源文件嵌入若依后管菜单中

下面考虑将imreport嵌入到若依后管系统的常规菜单里

2.1、配置若依菜单嵌入report报表工具

系统管理-菜单管理-新增菜单
在这里插入图片描述

配置完成后刷新页面,展示如下:

在这里插入图片描述

2.2、修改jmreport源码适配嵌入页面

截止到上一步我们已经把报表工具嵌入进来了,但是有2个小问题需要注意:

  1. 嵌入进来之后报表的LOGO区域过于显眼,不能忍
  2. 每次报表打开的新标签页的favicon.ico展示的还是旧的图标,不能忍

在这里插入图片描述
在这里插入图片描述

找到maven仓库中的jmreport包如下进行修改

在这里插入图片描述

2.2.1、修改jar包,增加favicon.ico图标文件

在这里插入图片描述

2.2.2、修改jar包,删除源代码LOGO区

在这里插入图片描述
在这里插入图片描述

更新jar后重启项目:搞定!

在这里插入图片描述

### 若依框架集成积木报表 #### 1. 添加依赖项 为了在若依框架集成积木报表,首先需要在项目的 `pom.xml` 文件中添加积木报表的相关依赖。具体来说,在 `<dependencies>` 节点下加入如下配置: ```xml <dependency> <groupId>org.jeecgframework.jimureport</groupId> <artifactId>jimureport-spring-boot-starter</artifactId> <version>${version}</version> </dependency> ``` 这一步骤确保了项目能够访问并使用积木报表所提供的功能[^3]。 #### 2. 修改启动类配置 接着修改应用程序的启动类(通常是 `RuoYiApplication.java`),通过设置 `@SpringBootApplication` 注解中的参数来指定要扫描的基础包路径,以便 Spring Boot 可以自动发现和加载积木报表模块下的组件和服务: ```java @SpringBootApplication( exclude = {DataSourceAutoConfiguration.class}, scanBasePackages = {"org.jeecg.modules.jmreport", "com.ruoyi"} ) public class RuoYiApplication { public static void main(String[] args) { SpringApplication.run(RuoYiApplication.class, args); } } ``` 此操作允许应用识别来自不同命名空间内的自定义业务逻辑单元以及第三方库提供的扩展特性。 #### 3. 创建前端展示页面 对于前端部分,则可以通过创建一个新的 Vue 组件来进行报表数据的显示。这里给出一个简单的例子——名为 `Jimu.vue` 的文件片段展示了如何利用 iframe 来嵌入外部资源作为报表查看器: ```vue <template> <div> <!-- 使用 iFrame 展示报表 --> <i-frame :src="openUrl" id="jimuReportFrame"></i-frame> </div> </template> <script> import { getToken } from '@/utils/auth'; import IFrame from '@/components/iFrame/index'; export default { name: 'Jimu', components: {IFrame}, data() { return { // 动态拼接 URL 地址,携带 token 参数实现身份验证 openUrl: `${process.env.VUE_APP_BASE_API}/jove-report/jmreport/list?token=${getToken()}` }; }, }; </script> ``` 上述代码实现了将后端 API 返回的数据渲染为可视化的 HTML 页面,并支持跨域请求的身份认证机制[^2]。
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cgv3

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值