推荐 2 个基于 SpringBoot 的工作流项目,有用!
作者 | shenzhanwang|tony*
今天主要推荐两个工作流的 springboot 项目,开源项目中有具体的部署操作文档,核心表结构说明,都可以帮助理解工作流原理,其实大厂华为阿里里面的工作流虽然号称自研(很多都是参考开源),跟开源工作流的原理差不多的。
工作流出问题比较高频的是配置出现低级问题,比如少一个符号或大小写不规范,别问我怎么知道的(玩工作流好几年了),工作流玩熟悉了,开发效率是极快的。
- Spring-boot-activiti
- RuoYi-vue 4.x + flowable
1、Spring-boot-activiti
在常用的 ERP 系统、OA 系统的开发中,工作流引擎是一个必不可少的工具。本项目旨在基于 Spring boot 这一平台,整合业界流行的工作流引擎 Activiti,并建立了两个完整的工作流进行演示:请假 OA 和采购流程。
其中包含的内容如下:
-
不采用 activiti 自带的用户、角色功能,因为过于简单,转而自行实现一个用户、角色、权限的三级结构,用户到角色,角色到权限均为多对多映射,持久层框架使用 mybatis 的 collection 和 association 标签嵌套实现;
-
使用默认的用户登录后(用户名 xiaomi,密码 1234),可看到已部署好的两个流程,请假 OA 和采购流程,其中,请假 OA 包含了用户任务、排他网关、起始结束事件,较为简单;采购流程除此之外,还使用了异常结束事件、子流程和边界事件的使用;
-
两个流程均包含了待办任务签收、运行流程进度追踪、已运行完流程历史记录查看的功能,运行流程进度在流程图中以红色标注;汪
-
使用时,将流程数据和业务数据相分离,使用业务号(businessKey)建立关联流程数据和业务数据的桥梁,使其相互可以访问, 业务数据的主键即为业务号;
-
本系统所有表单均使用普通表单,而不是 activiti 的动态表单和外置表单,这样做是为了分表存放业务数据和流程数据;
-
系统前端采用基于 Bootstrap 的模板 devoops 建立。
-
起始页面入口:
http://localhost:8888/login
使用前,编译 (可直接在 myeclipse 完成):
mvn clean install
8.swagger 入口:http://localhost:8888/swagger-ui.html
- 新增流程图设计器,将
activiti-explorer.war
放入 Tomcat8.5 的 webapps 目录下,启动 Tomcat,访问http://localhost:8080/activiti-explorer
,即可进入登录页面,用户名和密码都是 kermit:
点击流程 -> 流程设计工作区 -> 新建模型,填入模型名称,点击创建按钮即可开始流程图设计:
设计完后,可以导出源文件:
-
新增动态菜单权限,通过给不同用户分配不同的角色,使他们看到不同的菜单。
-
请假流程直接分配到具体审批人,只有指定的审批人才能审批。采购流程按照候选者组进行任务签收,只要能拥有相关菜单的[权限]即可审批。
-
效果图:
2、RuoYi-vue 4.x + flowable
基 RuoYi-vue 4.x + flowable 6.5 的工作流管理 ~
一直想学习和入门 flowable, 期间大量面向百度编程解决了很多问题, 感谢 flowable 初级使用手册 , 零基础学习很值得一看。最后感谢 若依框架 , 快速集成开发爽到飞起 ~~~
演示地址
使用文档:www.yuque.com/u1024153/ic…
为了方便体验,请勿删除和改动初始化的几个流程和表单,感谢!有其它流程实现,请自行定义新流程、表单。
项目
- 前端采用 Vue、Element UI。
- 后端采用 Spring Boot、Spring Security、Redis & Jwt。
- 权限认证使用 Jwt,支持多终端认证系统。
- 支持加载动态权限菜单,多方式轻松权限控制。
- 高效率开发,使用代码生成器可以一键生成前后端代码。
内置功能
- 流程设计
- 表单配置
- 流程发起
- 流转处理
参考文档
文档地址:doc.ruoyi.vip
演示图
项目地址
转载自:https://juejin.cn/post/7069545287005503495