Skip to content

示例

概述

本文将以入职申请流程作为示例,介绍Bpmn工作流的整体配置。通过该示例,您将了解工作流在处理入职流程中的运作原理。入职流程作为一个典型的业务流程,可以帮助您更好地理解Bpmn工作流的实际应用。我们将详细介绍流程的定义和配置,并解释各个环节的功能和交互方式。让我们一起来深入了解工作流引擎的工作原理及其在面试入职流程中的应用。

流程简介

假设我们的入职流程如下:

  1. 发起人提交面试申请
  2. 经由部门主管或总经理的审批后完成面试流程。如果职级小于等于3,则需要任一部门主管面试审批,如果职级大于3,则需要总经理面试审批。
  3. 面试通过之后由HR沟通入职细节
  4. 确认入职后发送入职通知
  5. 需同时填写入职资料和办理入职手续完成入职流程。

流程图

根据入职申请流程,我们绘制了以下流程图以展示流程的结构和流转方式:

流程图

数据表

存储面试入职申请表单数据的数据表结构如下:

字段类型说明
code编号面试编号
name单行文本员工姓名
sex列表选择性别,选项值:man-男woman-女
idNo单行文本身份证号
post单行文本岗位
level整数职级
salary小数薪资
status列表选择流程状态,选项值:
wait-未面试atInterview-面试中toBeEmployed-待入职
working-办理手续finish-入职完成eliminate-已淘汰
biographicalNote附件简历
contract附件劳动合同

编号计算表达式:

M${Misc.formatDate(Date.sysdate(),'yyyyMM')}${String.lpad(seq,3,'0')}

工作流配置

入职流程中,发起人需要填写申请表单,并经过部门主管或总经理的面试审批。下面是工作流的具体配置:

全局设置

启动设置

  • 设置流程实例名称:【${form.code}】${form.name}-入职流程
  • 添加启动表单,用于发起人填写面试人申请信息。
  • 勾选需要填写的字段
  • 完成后设置表单字段值,流程状态=atInterview 启动设置

事件监听

  • 创建事件监听,监听流程完成后事件,调用更新工作流状态自动化 事件监听
  • 调用自动化

HR面试节点

HR面试节点任务设置

判断职级

添加排他网关,并配置流转规则,系统根据流转规则决定流程流转到符合条件的分支。

example2-7.png

流转表达式:

${form.level > 3}

部门主管面试节点

使用多实例来配置或签行为,处理人设置为${departmentManager},任务设置与HR面试节点一致。

基本信息: example2-11.png 多实例:

总经理面试节点

类似于HR面试节点,选择总经理作为处理人即可。

HR沟通入职细节

在沟通入职细节时,需要修改入职员工的薪资和职级。 任务设置如下:

确认入职

任务设置如下:

发送入职通知

该节点是一个服务任务,会自动调用自动化,入参为BpmnTaskArgs,无需人工处理。 该示例使用织信系统内自带通知功能实现。如需使用短信通知功能可通过第三方API服务支持。

填写入职资料和办理入职手续

使用并行网关将填写入职资料办理入职手续两个节点并行处理。 任务设置如下: example2-25.png

效果图

申请表单: 表单 流程信息: 流程信息流程信息