2024-04-17 11:34:59 +08:00
|
|
|
|
# 概念
|
|
|
|
|
|
|
|
|
|
## 会签
|
|
|
|
|
|
2024-04-17 14:05:58 +08:00
|
|
|
|
会签又称为联名签署,指需要得到两个或多个相关参与者的签名批准。目前支持两种模式:全部通过和至少一个通过,在【会签开始】节点进行配置。如下:
|
2024-04-17 11:34:59 +08:00
|
|
|
|

|
|
|
|
|
|
|
|
|
|
全部通过:会签中的所有人员都通过,节点审批通过。
|
|
|
|
|
|
|
|
|
|
至少一个通过:会签中任何一个人通过,节点即审批通过。
|
|
|
|
|
|
2024-10-22 15:46:13 +08:00
|
|
|
|
具体的会签人员或角色,需要在【会签开始】和【会签结束】之间的节点配置,如上图中的admin、test。
|
2024-06-24 10:14:31 +08:00
|
|
|
|
|
2024-04-17 11:34:59 +08:00
|
|
|
|
::: warning 特别注意
|
2024-06-24 10:14:31 +08:00
|
|
|
|
|
|
|
|
|
【会签开始】【会签结束】执行权限配置为所有人
|
|
|
|
|
|
2024-04-17 11:34:59 +08:00
|
|
|
|
会签不能在分支上加判断条件
|
|
|
|
|
:::
|
|
|
|
|
|
2024-10-22 15:46:13 +08:00
|
|
|
|
## 加签
|
|
|
|
|
|
|
|
|
|
有时需要在原有审批流程中**临时**增加一个或多个审批节点,这时就需要用到加签的功能。它通常有以下特性:
|
|
|
|
|
|
|
|
|
|
* 临时性:加签是在流程执行过程中临时增加的,并非流程设计时就已经固定的审批节点。
|
|
|
|
|
|
|
|
|
|
* 发起主体:加签通常由当前审批人发起,他们认为需要额外的人员进行审核或批准。
|
|
|
|
|
|
|
|
|
|
* 新增审批节点:加签会在当前审批节点之后,插入一个或多个新的审批节点,这些节点需要审批通过后,原流程才能继续执行。
|
|
|
|
|
|
|
|
|
|
* 不改变流程结构:加签不会改变原有流程的整体逻辑或终点,只是插入临时节点,完成后流程继续按原定路径执行。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#### 与会签的区别:
|
|
|
|
|
|
|
|
|
|
* 加签:在已有审批流程上临时添加审批人,原审批人仍有审批权。
|
|
|
|
|
|
|
|
|
|
* 会签:多个审批人同时审批,所有会签人均需审批,才能通过节点。
|
|
|
|
|
|
|
|
|
|
加签功能常用在遇到不明确的情况时,需要其他人协助处理。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|

|
|
|
|
|
|
2024-04-17 14:05:58 +08:00
|
|
|
|
## 条件分支
|
|
|
|
|
|
|
|
|
|
有时需要根据提交数据不同(如报销金额、请假天数等)流程转向不同的审批者。这时需要在连线上面配置分支条件,如下图:
|
|
|
|
|
|
|
|
|
|

|
|
|
|
|
|
2024-10-22 15:46:13 +08:00
|
|
|
|
|
|
|
|
|
## 知会
|
|
|
|
|
|
|
|
|
|
知会指的是在流程执行过程中,将审批结果通知给指定人员,但这些人员不参与实际审批或决策过程。知会的目的是确保相关人员知晓流程的进展或结果,但他们不会影响流程的走向。如下图:
|
|
|
|
|
|
|
|
|
|

|
|
|
|
|
|
|
|
|
|
|
2023-08-11 17:47:02 +08:00
|
|
|
|
# 基本操作
|
|
|
|
|
|
|
|
|
|
一个完整的工作流包括流程设计及流程实例处理。分别对应系统中【基础配置/流程设计】及【流程中心】两个板块。具体包含以下几个步骤:
|
|
|
|
|
|
|
|
|
|
1. 在【基础配置/表单设计】中添加一个用于流程的表单,开源版可使用动态表单,企业版支持拖动表单及自定义的vue组件表单;
|
|
|
|
|
|
|
|
|
|
1. 在【基础配置/流程设计】中添加一个流程模版,流程模版选择刚刚建的表单。建好流程模版,拥有该模版权限的用户就可以基于改模版创建流程实例了;
|
|
|
|
|
|
|
|
|
|
1. 在【流程中心/我的流程】中【新的申请】创建一个流程实例。创建成功后就可以在列表中看到该流程。流程节点对应的执行用户会在【流程中心/待处理流程】中看到该流程,选中需要审批的流程,点击【处理】按钮即可进行审批操作;
|
|
|
|
|
|
|
|
|
|
# 流程审批逻辑
|
|
|
|
|
|
|
|
|
|
当最终用户在【待处理流程】中审批一个流程实例时,流程实例会经过下面步骤进行处理:
|
|
|
|
|
|
|
|
|
|
@startuml
|
|
|
|
|
skinparam handwritten true
|
|
|
|
|
skinparam backgroundColor #EEEBDC
|
|
|
|
|
|
|
|
|
|
start
|
|
|
|
|
if (当前活动节点类型为会签) then (yes)
|
|
|
|
|
:标识当前节点状态;
|
|
|
|
|
:从所有的分支中找到一个用户可以审批的节点canCheckId;
|
|
|
|
|
if (没找到?) then (yes)
|
|
|
|
|
stop
|
|
|
|
|
endif
|
|
|
|
|
:标识canCheckId节点状态;
|
|
|
|
|
#HotPink:进行会签,结果为res;
|
|
|
|
|
if(res == TagState.No) then (yes)
|
|
|
|
|
:修改流程最终状态为不同意;
|
|
|
|
|
else if(res != string.Empty) then (yes)
|
|
|
|
|
stop
|
|
|
|
|
else (no)
|
|
|
|
|
:修改流程最终状态,修改活动节点,修改可执行人;
|
|
|
|
|
:添加扭转记录;
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
else (no)
|
|
|
|
|
:标识当前节点状态;
|
|
|
|
|
if (同意) then (yes)
|
|
|
|
|
:修改流程最终状态,修改活动节点,修改可执行人;
|
|
|
|
|
:添加扭转记录;
|
|
|
|
|
else
|
|
|
|
|
:修改流程最终状态为不同意;
|
|
|
|
|
endif
|
|
|
|
|
:操作记录;
|
|
|
|
|
endif
|
|
|
|
|
stop
|
|
|
|
|
|
|
|
|
|
@enduml
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|