1.什么是Flowable
Flowable是一个使用Java编写的轻量级业务流程引擎,它基于BPMN 2.0标准,可用于部署流程定义、创建流程实例、进行查询以及访问运行中或历史的流程实例与相关数据等。Flowable可以灵活地加入各种应用、服务或构架中,通过JAR形式发布,使其能够轻易加入任何Java环境,如Java SE、Tomcat、Jetty或Spring之类的servlet容器,以及JBoss或WebSphere之类的Java EE服务器等。
Flowable不仅是一个业务流程引擎,更是一个开源的业务流程管理(BPM)平台。它提供了一个可视化的工作流设计器,使得开发人员和业务专家能够快速地构建、部署和管理复杂的业务流程。通过这个设计器,用户可以方便地定义工作流程、任务、网关、决策等元素,并且支持多种流程引擎的选择。
此外,Flowable还起源于Activiti工作流引擎。2016年10月,Activiti的主要开发者在Activiti分支的基础上开启了Flowable开源项目。Flowable的第一个发布版本6.0是基于Activiti v6 beta4的。
综上所述,Flowable是一个功能全面、灵活易用的业务流程管理平台,它能够帮助企业实现高效、精确的业务流程管理
2.FlowableUI
Flowable官方给我们提供了一个功能完备的基于web应用的流程设计器。可以用于流程相关的操作。具体提供了如下的功能:
-
Flowable IDM: 身份管理应用。为所有Flowable UI应用提供单点登录认证功能,并且为拥有IDM管理员权限的用户提供了管理用户、组与权限的功能。
-
Flowable Modeler: 让具有建模权限的用户可以创建流程模型、表单、选择表与应用定义。
-
Flowable Task: 运行时任务应用。提供了启动流程实例、编辑任务表单、完成任务,以及查询流程实例与任务的功能。
-
Flowable Admin: 管理应用。让具有管理员权限的用户可以查询BPMN、DMN、Form及Content引擎,并提供了许多选项用于修改流程实例、任务、作业等。管理应用通过REST API连接至引擎,并与Flowable Task应用及Flowable REST应用一同部署。
所有其他的应用都需要Flowable IDM提供认证。每个应用的WAR文件可以部署在相同的servlet容器(如Apache Tomcat)中,也可以部署在不同的容器中。由于每个应用使用相同的cookie进行认证,因此应用需要运行在相同的域名下。
3.基础使用
3.1.FlowableUI安装
官方提供的FlowableUI是集成在Flowable源码包中的:Releases · flowable/flowable-engine · GitHub
这里选择的是7.6.2
解压后找到wars中的
然后我们把这个flowable-ui.war
扔到Tomcat容器中然后启动Tomcat服务即可:不要部署在有中文的目录下!!!
访问地址:http://localhost:8080/flowable-ui
登录成功的界面
3.1.2用户管理
流程审批是伴随着用户
的审批处理的。所以肯定需要用户的参与。我们先通过身份管理应用程序
来创建两个测试的用户。
点击进入后可以看到在FlowableUI中针对用户这块是从三个维度来管理的
-
用户
-
组
-
权限控制
我们先就创建普通的用户。并分配相关的权限
创建了zhangsan
并设置了密码为123
.然后分配相关的权限
然后我们就可以通过zhangsan
来登录,然后就可以看到相关的功能权限。李四同理
3.13流程的管理
有了相关的用户信息。我们就可以来创建流程图了。这块我们需要通过建模应用程序
来实现。
第一次进入提示我们还没有创建流程模型,我们可以点击右上角的创建流程
按钮开始创建第一个流程案例。
然后会进入到具体的流程图的绘制界面。
创建第一个请假流程图
然后我们需要分配相关节点的审批人
-
人事审批-- zhangsan 审批
-
经理审批 -- lisi 审批
分配操作
选择分配给单个用户
并搜索到zhangsan
.
相同的操作完成经理审批
节点的配置,然后就可以保存退出了
到此流程定义完成~