Appearance
示例
概述
本文将以入职申请
流程作为示例,介绍Bpmn工作流的整体配置。通过该示例,您将了解工作流在处理入职流程中的运作原理。入职流程作为一个典型的业务流程,可以帮助您更好地理解Bpmn工作流的实际应用。我们将详细介绍流程的定义和配置,并解释各个环节的功能和交互方式。让我们一起来深入了解工作流引擎的工作原理及其在面试入职流程中的应用。
流程简介
假设我们的入职流程如下:
- 发起人提交面试申请
- 经由部门主管或总经理的审批后完成面试流程。如果职级小于等于3,则需要任一部门主管面试审批,如果职级大于3,则需要总经理面试审批。
- 面试通过之后由HR沟通入职细节
- 确认入职后发送入职通知
- 需同时填写入职资料和办理入职手续完成入职流程。
流程图
根据入职申请流程,我们绘制了以下流程图以展示流程的结构和流转方式:
数据表
存储面试入职申请表单数据的数据表结构如下:
字段 | 类型 | 说明 |
---|---|---|
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面试节点任务设置
判断职级
添加排他网关,并配置流转规则,系统根据流转规则决定流程流转到符合条件的分支。
流转表达式:
${form.level > 3}
部门主管面试节点
使用多实例来配置或签行为,处理人设置为${departmentManager}
,任务设置与HR面试节点一致。
基本信息: 多实例:
总经理面试节点
类似于HR面试节点,选择总经理作为处理人即可。
HR沟通入职细节
在沟通入职细节时,需要修改入职员工的薪资和职级。 任务设置如下:
确认入职
任务设置如下:
发送入职通知
该节点是一个服务任务,会自动调用自动化,入参为BpmnTaskArgs
,无需人工处理。 该示例使用织信系统内自带通知功能实现。如需使用短信通知功能可通过第三方API服务支持。
填写入职资料和办理入职手续
使用并行网关将填写入职资料
和办理入职手续
两个节点并行处理。 任务设置如下:
效果图
申请表单: 流程信息: