工作流引擎技术介绍-Flowable例子(二)

814 阅读2分钟

上一篇工时流程,从简单入手,熟悉基本的设计部署,这篇以请假流程为例,我们会引入更多复杂的元素。

二、请假流程

流程描述:

  1. 发起人发起请假并填写请假信息

  2. 提交后会流转到上级领导审核,如何请假天数大于三天,则同时还需要部门领导审核

  3. 领导审核后会流转到人事审核,这里需要人事办事人员半数审核才会往下流转

  4. 人事审核后,会同时流转给财务和项目部确认

  5. 最后流转给老板审核,老板一小时内未处理,自动审核通过。

ps: 这个例子,我们可以学习包容网关、多实例、表达式设置人员、并行网关、中断定时事件。

设计过程:

  • 绘制流程图

图片

  • 绘制请假表单

图片

  • 提交人节点分配给流程发起人,流程绑定表单如前篇一样,不再赘述。
  • 包容网关分支,一条分支线设置默认流,一条分支线设置条件

图片

图片

  • 设置流程发起人上级领导、所在部门领导如前篇一样用任务监听器设置。
  • 人事审核时多实例任务。多实例任务中,需要选择多实例类型,设置集合、变量、完成条件及执行人。集合可以通过表达式,只要返回是个List,就能解析,执行人,我们取多实例集合遍历的元素变量。完成条件通过表达式取默认提供的变量进行判断。(nrOfInstances:实例总数。nrOfActiveInstances:当前活动的(即未完成的),实例数量。对于顺序多实例,这个值总为1。nrOfCompletedInstances:已完成的实例数量。)

图片

  • 并行网关,没啥好说的,网关之后,是两部门审核,两部门人员都可以处理对应节点任务,有一个人员领取完成,则节点审核通过。
  • 定时任务,我们选择的是中断边界定时任务,中断与不中断代表的是当前任务节点会不会被结束。方便测试,我们配置的间隔两分钟触发。

图片

运行过程:

1.发起请假流程,查看任务并完成表单。

图片

图片

2.这里我们填写请假天数为5天

图片

完成对应任务

图片

3.进入多实例任务

图片

可以看到生成了两条任务实例

图片

4.切换陈七账号完成任务

图片

5.通过并行网关,流转到项目部审核和财务审核

图片

6.完成后流转到老板节点

图片

7.老板两分钟内未处理,自动结束

图片

8.完成请假

图片

微信公众号搜索 土豆仙 关注更多即时技术文章,整理原创不易,转载请标明出处。

image

后续我们会把流程难度,不断升级,以便熟悉更多的模型设计方法。