---
order: 4
navTitle: 节点处理人设置
---
# 节点处理人设置

节点处理人是在流程流转到节点时，能查看流程数据并进行数据填写、审批、任务分配等处理操作的用户。比如请假流程中，能审批请假的用户，就是审批节点的处理人。

进入工作流设计器，选中任务节点，在右侧**属性栏**>**节点**>**处理人**>**指定处理人**下点击**添加**按钮，在弹出的对话框中根据实际需求选择节点处理人。节点处理人有以下四种设置方式：

- [动态用户](#dynamic-user)
- [用户组](#user-group)
- [部门](#department)
- [用户](#user)

![节点处理人设置](./images/2021-09-07-14-06-47.png)

## 动态用户{#dynamic-user}

动态用户，节点处理人不是固定的单一用户或者一组用户，不同的发起人，根据不同的规则，可以获取到不同的处理人。比如请假申请中：

1. 财务部门的员工请假，需要财务部门经理审批
2. 研发部门的员工请假，需要研发部门经理审批

这两条审批规则均是需要发起人所在部门的部门经理审批，这种场景建议使用动态用户，操作如下：

![动态用户](./images/2021-09-07-16-54-27.gif)

1. 选中部门经理审批节点，在右侧**节点**属性栏的**处理人**处，点击**添加**按钮
2. 在弹出的**选择处理人**对话框中，双击**发起人**到对话框上方的展示区
3. 再双击**发起人**的**所在部门**
4. 最后双击部门经理所在的用户组**审批用户**，点击**确定**即可

这样添加的动态用户会形成一个解析链：**发起人**>**所在部门**>**审批用户**，即节点的处理人为发起人所在部门的部门经理。设置完一类节点处理人后，可以继续点击**添加**按钮，根据需求可以设置多个节点处理人，多个处理人处理流程节点任务的方式可在**分配方式**属性中设置，默认为自动，更多可参考[处理方式设置](#processing-method)。

### 动态用户类型{#type}

系统提供了多种类型的动态用户，如下所示：

![动态用户类型](./images/2021-09-07-17-23-39.png)

- **发起人**：流程的启动用户，发起流程的人。请假是发起人所在部门的组长审批，则需添加发起人的所在部门，以及组长所在用户组，如`发起人 > 所在部门 > 组长`
- **动态处理人**：支持输入表达式，可以拾取表单上表示用户的字段，或者写条件来指定用户。在填写请假申请时，手动选择项目经理，作为任务的处理人，如`[请假申请表].[项目经理]`
- **动态部门**：支持输入表达式，可以拾取表单上表示部门的字段，或者写条件来指定部门。湖北省案件审查，需要湖北下的区级部门参与，因此可以用函数取区级编码为42开头的部门，如`(USER_PROPERTY([流程].[启动用户],'deptid') like '42%'`
- **动态用户组**：支持输入表达式，可以写条件来指定用户组
- **指定部门**：可直接选择系统组织结构中的部门。报销金额过大时，需要财务部门负责人来复核，此时可直接选择财务部门
- **指定节点处理人**：当前流程图中指定节点已经处理过任务的人。医院采购大型设备时，需要之前初审节点的用户再次复核要采购的大型设备，则可直接选择之前的初审节点处理人
- **指定节点候选人**：当前流程图中指定节点的所有处理人，包括未进行任务处理的人
- **上一节点处理人**：上一节点已经处理过任务的人。比如请假申请时，组长审批完成后，需要组长对应的部门经理审批，如`上一节点处理用户 > 上级部门 > 部门经理`
- **上一节点候选人**：上一节点的所有处理人，包括未进行任务处理的人

::: tip
动态用户可以一直往上添加上级部门，如果系统组织结构中没有对应的部门，则会找不到处理人，此时会退回给发起人或者管理员处理。
:::

## 用户组{#user-group}

设置用户组为节点的处理人，则该用户组中的所有用户将成为此节点的处理人。比如医院采购大型设备时，需要专家组进行评审，此时就可以选择`专家组`用户组作为评审节点的处理人。

![用户组](./images/2021-09-07-16-20-38.png)

## 部门{#department}

设置部门为节点的处理人，则该部门中的所有用户将成为此节点的处理人。比如报销流程中，需要财务部门的人对报销单进行核准，此时就可以选择`财务部`作为核准节点的处理人。

![部门](./images/2021-09-07-16-21-02.png)

## 用户{#user}

设置明确的用户为节点的处理人。比如请假天数大于3天，需要总经理审批，由于公司的高层一般不会变动，此时可以选择总经理用户作为节点的处理人。

![用户](./images/2021-09-07-16-21-52.png)

::: warning
当用户基本不会变动时，可以使用指定用户作为节点处理人。一般不推荐使用具体的用户作为节点处理人，如果用户总是在发生变化，包括转岗、借调或者离岗后，则需要对流程进行修改。
:::

## 处理方式设置{#processing-method}

当节点有多个处理人时，系统提供了或签、会签、签收三种任务处理方式，在**属性栏**>**节点**>**处理人**中设置**分配方式**即可，如下所示：

![分配方式](./images/2021-09-08-19-00-16.png)

- **或签**：每一个处理人均可进行操作处理，当有一人进行操作后，则不需要其他人进行处理。如该节点有ABC三人审批，三人会同时收到审批通知，只需要其中任意一人审批通过即可到下一个审批节点，为默认方式
- **会签**：每一个处理人都需要进行操作处理，且需要每个人都同意，该节点处理结果才为通过。如该节点有ABC三人审批，三人会同时收到审批通知，需全部同意之后，审批才可到下一审批节点。常用于需要多个相同级别的领导同时进行审批
- **签收**：与或签方式类似，但需要处理人先进行**签收**，才能进行审批等操作处理，当其中任意一人签收了，其他人则不能进行签收操作。签收一般被使用在比较重要以及处理工期较长的任务中，需要提前认领或锁定任务，如审批合同，避免多人同时进行，工作重复

:::tip
当节点有多个处理人时，系统内部会为每个处理人创建一条相同的任务，分开记录每个处理人的处理信息，如处理结果、处理意见等，任务信息会记录到流程任务表`FLOW_TASKS`，具体可查看文档[FLOW\_TASKS-流程任务表](../../dev/sys-tables/README.md#flow-tasks)。

**或签**处理方式时，如果有一个人进行了处理，则其他人的任务也被完成；**签收**处理方式与**或签**一样，当有人签收后，其他人的任务被完成，如果退签，则每个处理人会再次重新生成一条任务。
:::
