带你详细了解基于springboot和flowable的开源审批系统

在这里插入图片描述

1.背景

在日常业务背景中,审批是一个很重要得需求,现阶段有两种实现审批得方式,一种是自行编写业务,按照需求设计数据库,将审批数据加入表中,每通过一个审批就修改一次状态,有点是可以随意设计审批的业务,但是缺点是每增加一种审批都增加非常多的工作量。第二种是使用flowable、activiti工作流引擎方式去实现,优点是框架提供了数据库,业务逻辑和api,按照文档落地即可,缺点是业务模式已经大体固定,难以修改业务逻辑。

什么是flowable

Flowable 项目提供了一套核心的开源业务流程引擎,这些引擎紧凑且高效。它们为开发人员、系统管理员和业务用户提供工作流和业务流程管理 (BPM) 平台。

它的核心是一个闪电般快速、久经考验的动态 BPMN 流程引擎,伴随着 DMN 决策表和 CMMN 案例管理引擎,所有这些引擎都是用 Java 编写的。它们是 Apache 2.0 许可的开放源代码,拥有一个承诺社区。

所有引擎都可以嵌入在 Java 应用程序中运行,也可以作为服务器、集群和云中的服务运行。它们可以作为独立的引擎或服务运行,也可以集成在一起为业务流程管理提供丰富的套件。它们与 Spring 完美集成。凭借丰富的 Java 和 REST API,它们是编排人工或机器人自动化处理的理想基础。它们启用微服务编排或软连接微服务本身。

这里总结一下:
说起flowable还来自于activiti,因为activiti内部工作人员不合,一大堆小伙伴相约出去创业了。但是锅还是原来的锅,只不过做饭的方式不同了。所以在思想上,flowable与activiti相差不大。只不过功能更加强大了。

  1. 目的是管理业务审批工作流。
  2. 使用BPMN技术。
  3. 可方便嵌套在spring体系中。

3.项目介绍

RuoYi-boot是有名的开源权限管理系统,集权限管理和代码快速生成于一体,将其作为基础开发平台集成flowable框架完成工作流引擎开发,打造集流程设计、流程部署、流程执行、任务办理、流程监控于一体的强大工作流平台。

4.安装教程

https://gitee.com/shenzhanwang/Ruoyi-flowable可以自行查看。

  1. 新建mysql数据库ry-flowable,导入SQL脚本ry-flowable.sql。Mysql版本为5.7,字符集选择utf8mb4,排序规则选择utf8mb4_general_ci。
  2. 修改数据库配置。
    请添加图片描述
  3. 打开http://localhost 访问登录页面,账号admin密码是admin123。

5.项目特点

  1. 为保持平台的通用性,所有的用户任务办理的接口可以复22.用/task/manage/completeTask/{taskId}。
  2. 对于表单的处理,一律使用外置表单,将业务表单数据保存在业务表中,不保存在activiti流程的变量表中。
  3. 前端页面与用户任务通过formkey进行关联,办理任务时,通过获取formkey值展示对应的前端页面。
  4. 整合流程图在线设计器,设计后需要发布,完成流程的部署。
  5. 如需添加新的流程,设计好后还需编写前后端代码完成业务逻辑的开发。
  6. 增删改查、权限管理、代码生成、页面交互的基础设施由若依平台提供。
  7. 流程实例管理用于管理正在运行的流程实例列表,你可以挂起或唤醒一个流程实例。
  8. 流程运行历史用于查看流程的历史记录(包含运行中和已结束),还可以查看所有流程的变量。
  9. 支持动态流程,可对流程实例进行撤销、驳回、跳转等操作。

6.项目功能介绍

6.1 系统管理

同其他系统一样,包含用户管理、角色管理、菜单管理、部门管理、岗位管理、字典管理、参数设置、通知公告、日志管理等页面。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.2 监控与工具

提供一系列监控工具,如服务监控,缓存监控,在线用户,定时任务等,同时可以通过系统工具使用低代码生成页面、接口,大部分的代码可以通过页面即可生成。

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

6.3 流程设计

首先通过模型管理导入或者是编写bpmn文件,生成流程业务,然后通过部署管理将模型部署为实例。
在这里插入图片描述
在这里插入图片描述

6.4 提出申请/进行审批

首先通过功能表模块,选择想要提出的申请,填写申请表单,表单会按照模模型向审批人发送消息,然后在待办任务中查询到需要自己审批的数据。
请添加图片描述
请添加图片描述

6.5 查看历史

可以在流程监控中查看运行历史、执行历史和发布的实例。
请添加图片描述

7.总结

  1. 项目采用了ruoyi的单体架构,使用springboot+layui,前后端不分离,项目简单清晰,容易搭建。
  2. 页面清晰可观,操作方便,色彩搭配合理,使用很舒服。
  3. 审批业务流程能够走通,符合日常生产需求。
  4. 没有动态表单,部门功能需要二次开发。

整体上来说该项目非常优秀,无论从学习还是生产开发还是设计论文都满足用户的需求,非常推荐下载下来学习和使用。

请关注下方公众号回复flowable审批系统获取源码。还可以获取千本电子书,2000g学习视频和近百套毕设源码。

猜你喜欢

转载自blog.csdn.net/qq_20143059/article/details/131436670