本文将介绍如何在 RuoYi 框架中集成 Activiti 工作流,实现业务流程管理的功能。
前提条件:已创建新模块ruoyi-activiti
。
ruoyi-activiti
模块中引入依赖首先,在 ruoyi-activiti
模块的 pom.xml
文件中添加如下依赖:
<dependencies>
<!-- Activiti 核心依赖 -->
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-spring-boot-starter</artifactId>
<version>7.1.0.M6</version>
</dependency>
<dependency>
<groupId>org.activiti.dependencies</groupId>
<artifactId>activiti-dependencies</artifactId>
<version>7.1.0.M6</version>
<type>pom</type>
</dependency>
<!-- RuoYi 必需模块 -->
<dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-framework</artifactId>
</dependency>
<dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-system</artifactId>
</dependency>
<dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-common</artifactId>
</dependency>
<!-- MyBatis 和 Apache POI -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.1</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>4.1.2</version>
</dependency>
</dependencies>
pom.xml
中引入 ruoyi-activiti
模块为了使 ruoyi-activiti
模块参与构建流程,需要在项目的最外层 pom.xml
文件中添加依赖:
<!-- Activiti 模块 -->
<dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-activiti</artifactId>
<version>${ruoyi.version}</version>
</dependency>
ruoyi-admin
模块中添加 Activiti 依赖确保 ruoyi-admin
模块能够调用 Activiti 服务,在其 pom.xml
文件中添加以下依赖:
<!-- Activiti 模块 -->
<dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-activiti</artifactId>
</dependency>
application.yml
文件修改 ruoyi-activiti
模块的 application.yml
,为 Activiti 配置数据库更新、历史记录等功能:
spring:
activiti:
database-schema-update: true # 启动时自动更新数据库表结构
db-history-used: true # 启用数据库历史记录
history-level: full # 设置历史记录级别为 full
check-process-definitions: false # 禁用对流程文件的校验
main:
allow-bean-definition-overriding: true # 允许覆盖 Bean 定义
说明:
–database-schema-update
的其他选项:
–false
:不自动更新数据库表,版本不匹配时抛出异常。
–create-drop
:启动时创建表,关闭时删除表。
–drop-create
:启动时删除旧表并重新创建表。
–history-level
的可选值:
–none
:不保存历史记录。
–activity
:仅保存流程实例与行为信息。
–audit
:保存任务及其属性信息。
–full
:保存所有流程相关细节。
为确保 Activiti 的接口可以正常访问,需要在安全配置文件中放行其路径:
文件路径:
ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
.antMatchers("/activiti/**").permitAll()
为便捷地绘制流程图,可以在 IDEA 中安装 Activiti 绘图插件:
1. 打开 IDEA 的插件市场(File -> Settings -> Plugins)。
2. 搜索并安装支持 .bpmn
文件的插件,如 Camunda Modeler
或 Activiti Designer
。
3. 安装完成后重启 IDEA,右键新建 .bpmn
文件即可开始流程设计。
在完成上述配置后,新建一个 .bpmn
文件即可开始使用 Activiti 工作流。例如,可以设计一个简单的审批流程,通过部署和启动流程定义实现动态管理业务流程。
通过以上步骤,我们成功在 RuoYi 框架中集成了 Activiti 工作流。该集成方案充分利用了 RuoYi 的模块化特性,将 Activiti 的功能独立封装在新模块中,方便维护和扩展。接下来,可以根据业务需求设计具体的流程,实现业务自动化与精细化管理。
如需了解更多内容,可查阅 Activiti 官方文档: https://www.activiti.org/
或参考社区最佳实践。
powered by kaifamiao