::warm-flow-solon-plugin [国产]
一个自带流程设计器的工作流引擎
<dependency>
<groupId>org.dromara</groupId>
<artifactId>warm-flow-mybatis-solon-plugin</artifactId>
<version>最新版本</version>
</dependency>
支持orm框架类型:
- mybatis
- mybatis-plus
- jpa
- easy-query
- mybatis-flex
- ......
1、仓库地址
https://gitee.com/dromara/warm-flow
2、以下为简短案例
2.1、部署流程
public void deployFlow() throws Exception {
String path = "/hh-vue/hh-admin/src/main/resources/leaveFlow-serial.xml";
System.out.println("已部署流程的id:" + defService.importXml(new FileInputStream(path)).getId());
}
2.2、发布流程
public void publish() throws Exception {
defService.publish(1212437969554771968L);
}
2.3、开启流程
public void startFlow() {
System.out.println("已开启的流程实例id:" + insService.start("1", getUser()).getId());
}
2.4、流程流转
public void skipFlow() throws Exception {
// 通过实例id流转
Instance instance = insService.skipByInsId(1219286332141080576L, getUser().skipType(SkipType.PASS.getKey())
.permissionFlag(Arrays.asList("role:1", "role:2")));
System.out.println("流转后流程实例:" + instance.toString());
}
public void skipAnyNode() throws Exception {
// 跳转到指定节点
Instance instance = insService.skip(1219286332145274880L, getUser().skipType(SkipType.PASS.getKey())
.permissionFlag(Arrays.asList("role:1", "role:2")).nodeCode("4"));
System.out.println("流转后流程实例:" + instance.toString());
}
3、设计器引入
<dependency>
<groupId>org.dromara.warm</groupId>
<artifactId>warm-flow-plugin-ui-sb-web</artifactId>
<version>最新版本</version>
</dependency>
具体引入方式:
通过jar包引入:文档地址
4、项目介绍
Warm-Flow国产工作流引擎🎉,其特点简洁轻量,五脏俱全,可扩展,是一个可通过jar引入设计器的工作流。
- 简洁易用:只有7张表,代码量少,可快速上手和集成
- 审批功能:支持通过、退回、任意跳转、转办、终止、会签、票签、委派和加减签、互斥和并行网关
- 监听器与流程变量:支持四种监听器,可应对不同场景,灵活可扩展,参数传递,动态权限
- 流程图:流程引擎自带流程图,可在不集成流程设计器情况下使用
- 流程设计器:可通过jar包形式快速集成到项目,减少繁琐代码搬运和适配
- 条件表达式:内置常见的和spel条件表达式,并且支持自定义扩展
- 办理人变量表达式:内置${handler}和spel格式的表达式,可满足不同场景,灵活可扩展
- orm框架扩展:目前支持MyBatis、Mybatis-Plus、Mybatis-Flex和Jpa,后续会由社区提供其他支持,扩展方便
- 数据库支持:目前支持MySQL 、Oracle 和PostgreSQL,后续会继续支持其他数据库或者国产数据库
- 多租户与软删除:流程引擎自身维护多租户和软删除实现,也可使用对应orm框架的实现方式
- 同时支持spring和solon
- 兼容java8和java17,理论11也可以
- 官方提供基于ruoyi-vue封装实战项目,很实用
5、演示地址
- admin/admin123
演示地址:http://www.hhzai.top