SpringBoot整合工作流引擎Activiti

环境:Springboot2.2.11.RELEASE + Activiti7.1.0.M6 + MySQL,环境说明:,不知为何activit7中要吧这security强关联。。。,以上是pom.xml中所要引入的依赖。,所有的表:,图片图片,表结构说明:,ACT_RE_*: ‘RE’表示repository。这个前缀的表包含了流程定义和流程 静态资源(图片、规则等等),ACT_RU_*: ‘RU’表示runtime。这些运行时的表,包含流程实例,认为,变量,异步任务等运行中的数据。Activiti只在流程实例执行过程中保持这些数据,在流程结束时就会删除这些记录。这样运行时表可以一直很小速度很快。,ACT_HI_*: ‘HI’表示history。这些表包含历史数据,比如历史流程实例,遍历,任务等等。,ACT_GE_*: ‘GE’表示general。通用数据,用于不同场景。,通用数据(act_ge_*),图片图片,流程定义(act_re_*),图片图片,运行实例(act_ru_*),图片图片,历史流程(act_hi_*),图片图片,其他,图片图片,来源网络,    流程引擎的抽象,可以通过此类获取需要的所有服务。,    通过ProcessEngine获取,Activiti将不同生命周期的服务封装在不同Service中,包括定义、部署、运行。通过服务类可获取相关生命周期中的服务信息。,TaskService,    流程运行过程中,每个任务节点的相关操作接口,如complete,delete,delegate等。
RepositoryService,    流程定义和部署相关的存储服务。
RuntimeService,    流程运行时相关的服务,如根据流程好启动流程实例startProcessInstanceByKey。
HistoryService,    历史记录相关服务接口。,关于eclipse中安装插件就不说了,我是把插件下载下来安装的,在线安装不上。,设计请假流程,在src/main/resources下新建processes文件夹,springboot下默认的流程文件定义路径前缀及文件后缀如下:,图片图片,这里可以在application.yml配置文件中更改。,设计一个请假的流程holiday.bpmn,图片图片,上面的每一个节点(任务)都动态的指派了用户执行。,填写审批单:${assignee};,部门经理审批: ${mgr};,总经理审批:${top};,每一个节点执行完成时都需要指明下一个节点的执行人。,配置文件,spring.activiti.db-history-used:表示是用历史表,如果不设置为true那么只会生成17张表,只有设置为true后才会生成25张表。如果不生成历史表那么,流程图及运行节点无法展示。,spring.activiti.history-level:对于历史数据,保存到何种粒度,Activiti提供了history-level属性对其进行配置。history-level属性有点像log4j的日志输出级别,该属性有以下四个值:,spring.activiti.check-process-definitions:如果不设置为true,那么流程定义必须手动进行部署。,
,测试:,1、启动服务,这里放在processes中的流程定义文件已经被自动部署上了。查看表act_re_procdef,图片图片,图片图片,参数:
processDefinitionId:流程定义中的ID。
userId:要处理用户的id。,查看表信息:,图片图片,这时候就为用户id为:10000的生成了一个要处理的任务,填写审批单。,图片图片,图片图片,参数:
mgr:指定下一个节点处理人。
explain:请假原因。
days:请假天数。,这里根据自己的业务需要去设置。,再次调用查询接口userId=10002,图片图片,流程已经到了部门经理。,再次调用/holidays/apply接口。,图片图片,参数:
top:指明总经理节点需要处理的userId。,图片图片,再次调用/holidays/apply接口。(总经理处理),图片图片,查询对应的任务表信息,已经没有数据了。,图片图片,查询表:act_hi_actinst,图片图片,到此一个流程就走完了。下篇 查看流程图。,完毕!!!

文章版权声明

 1 原创文章作者:cmcc,如若转载,请注明出处: https://www.52hwl.com/28540.html

 2 温馨提示:软件侵权请联系469472785#qq.com(三天内删除相关链接)资源失效请留言反馈

 3 下载提示:如遇蓝奏云无法访问,请修改lanzous(把s修改成x)

 免责声明:本站为个人博客,所有软件信息均来自网络 修改版软件,加群广告提示为修改者自留,非本站信息,注意鉴别

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023年6月23日
下一篇 2023年7月15日