4. 审批节点类型详解:单人审批、多人会签、或签、串签、条件分支节点
4.1 用户场景与业务问题
在企业审批流配置中,产品经理需要为不同的业务场景匹配正确的审批节点类型。错误的选择会导致流程卡顿、责任不清或审批漏洞。
- 场景一:费用报销——部门主管单人审批金额小于 5000 元的报销单;当金额超过 5000 元时,需要财务总监和 CEO 两人都同意才能通过。
- 场景二:合同评审——法务、财务、业务三个部门需要依次审批(串签),顺序不可变;但财务部的两位经理中任意一位签字即可(或签)。
- 场景三:重大采购——采购金额超过 100 万元时,需要董事会 7 位成员中至少 5 人批准(一票通过式会签);出现任何一张反对票则流程终止。
- 业务问题:如果将这些节点类型混淆,例如把“或签”配置为“一票否决”,会导致审批人越权或流程异常终止。
4.2 用户访谈与需求拆解
访谈对象:某集团 IT 负责人、财务部审批主管、产品运营负责人。
- IT 负责人:“我们需要在后台配置节点时,一目了然地看到当前节点是单人还是多人决策,以及多人决策的逻辑(全部通过/任意通过/一票否决)。配置页面必须同时显示节点类型与流转条件。”
- 审批主管:“同一个节点下,不同人的审批顺序有时候需要固定,有时候不需要。比如法务必须第二顺位,不能变。”
- 产品运营:“当触发条件分支时,系统应该自动跳过不满足条件的审批人,不能留下待办。”
需求拆解清单:
| 需求编号 | 节点类型 | 用户核心诉求 | PRD 关键点 |
|---|---|---|---|
| REQ-04-01 | 单人审批 | 明确谁审批,超时自动转交 | 支持单人、超时策略、转交规则 |
| REQ-04-02 | 会签(一票通过) | 必须指定通过票数阈值,拒绝票数不阻断 | 需设置「最小通过数」,支持拒绝票累计 |
| REQ-04-03 | 会签(一票否决) | 任意拒绝则终止,通过需全员同意 | 一旦有人拒绝立即触发终止分支 |
| REQ-04-04 | 或签 | 任意一人通过即代表节点通过 | 先到先得,其余待办自动取消 |
| REQ-04-05 | 串签 | 审批顺序严格,不可乱序 | 前端需显示序号,后台验证顺序规则 |
| REQ-04-06 | 条件分支 | 根据表单字段值选择路径 | 支持多分支逻辑,不满足条件时走默认路径 |
4.3 方案表达与原型设计要点
在审批流配置平台的原型中,每个节点应具备以下配置项:
- 节点类型选择器:单选按钮组(单人审批、多人审批、条件分支)。当选择“多人审批”时,进一步展开子类型(会签、或签、串签)。
- 会签高级配置:选中“会签”后,增加一个下拉开关:「一票通过」/「一票否决」。
- 条件分支节点:需要可拖拽的分支卡,每条分支可编辑条件表达式(例如金额 >= 100000 走副总裁审批),并允许设置优先级。
原型设计避坑:审批节点的“多人并行”和“多人串行”在流程图上表现不同。并行节点应采用水平排列的审批人头像,串行节点则应垂直排列并标注序号(例如 1→2→3)。请勿混用。
前端差异对照表:
| 节点类型 | 审批人展示方式 | 操作按钮 | 待办状态 |
|---|---|---|---|
| 单人审批 | 单人头像 + 姓名 | 通过/拒绝/转办 | 一人处理,状态即节点状态 |
| 会签(一票通过) | 横排多人,显示当前通过/总人数 | 通过/拒绝/弃权 | 通过数 ≥ 阈值后节点完成 |
| 会签(一票否决) | 横排多人,显示当前拒绝人数 | 通过/拒绝 | 任一拒绝即触发终止 |
| 或签 | 横排多人,后审批人看到“已有人处理” | 通过/拒绝(先到先得) | 首人处理后其余待办自动消失 |
| 串签 | 垂直列表带序号,当前审批人高亮 | 通过/驳回(只能驳回到前序) | 必须按顺序传递 |
| 条件分支 | 分支卡片,显示条件概要 | 无需用户操作,自动路由 | 仅满足条件的分支产生待办 |
4.4 节点类型决策流程图
以下 SVG 图展示了从“审批节点开始”到确定正确节点类型的完整决策路径,涵盖单人审批、会签(一票通过/一票否决)、或签、串签、条件分支共六种情况,并标注了关键判断条件。
4.5 指标验证与验收标准
核心验证指标:
- 节点配置正确率:在引导式配置界面下,产品经理(非技术人员)首次配置 5 种节点类型的正确率应达到 95% 以上。
- 流程执行效率:采用串签节点的流程,平均流转时间不应超过手动指定顺序时的 1.2 倍。
- 会签终止时效:一票否决节点在收到拒绝操作后,系统应在 5 秒内向所有其他待办人发送“流程终止”通知。
验收标准(示例):
验收用例:会签(一票否决)节点
前置条件:流程中有 3 个审批人(A、B、C)
操作步骤:
1. A 登录,点击“拒绝”
2. B 和 C 的待办页面刷新
预期结果:
- B 和 C 的待办列表显示“该流程已由 A 终止”
- 后续所有节点不可操作
- 流程实例状态变为“已否决”
4.6 交付物模板
在《企业审批流配置与原型设计指南》课程中,本章对应的 PRD 交付物应包含以下模块:
| 交付物编号 | 交付物名称 | 内容说明 |
|---|---|---|
| D-04-01 | 节点类型矩阵表 | 6 种节点类型的对比表格(含优先级、角色、条件) |
| D-04-02 | 配置界面线框图 | 节点类型选择器、会签阈值设置、条件分支编辑器 |
| D-04-03 | 节点状态机图 | 每种节点类型下的状态流转(待审批→通过/拒绝/超时/终止) |
| D-04-04 | 配置规则 API 定义 | 节点类型枚举值、会签规则参数、条件表达式格式 |
课程经验:在团队内推行节点类型统一术语后,审批流需求沟通成本降低了 40%。建议在 PRD 中提前定义如下枚举:APPROVAL_SINGLE(单人)、APPROVAL_COUNTERSIGN_PASS(一票通过)、APPROVAL_COUNTERSIGN_VETO(一票否决)、APPROVAL_ORSIGN(或签)、APPROVAL_SERIAL(串签)、CONDITION_BRANCH(条件分支)。
4.7 配置示例(API 与前后交互)
在审批流引擎配置时,节点定义通常采用 JSON 结构。以下是一个包含单人审批和会签(一票通过)的节点配置示例:
{
"nodes": [
{
"nodeId": "node_001",
"type": "APPROVAL_SINGLE",
"approverUserId": "user_zhang",
"timeoutHours": 48,
"onTimeout": "transfer_to_manager"
},
{
"nodeId": "node_002",
"type": "APPROVAL_COUNTERSIGN_PASS",
"approverIds": ["user_li", "user_wang", "user_zhao"],
"minPassCount": 2,
"allowAbstain": true
}
]
}
原型中需特别标注:当用户选择“会签-一票否决”时,minPassCount 字段应自动锁定为总审批人数(即强制全员通过),并在界面上显示“任何一人拒绝即终止本节点”。此规则不可编辑。
条件分支表达式示例(与前端表单字段联动):
{
"nodeId": "node_003",
"type": "CONDITION_BRANCH",
"branches": [
{
"branchId": "branch_a",
"condition": "form.amount >= 100000",
"targetNodeId": "node_vp_approval"
},
{
"branchId": "branch_b",
"condition": "form.amount < 100000",
"targetNodeId": "node_mgr_approval"
}
],
"defaultBranchId": "branch_b"
}
4.8 本章小结与常见错误
- ⚠ 常见错误 1:将“或签”与“会签-一票通过”混用。或签基于“先处理者决定”,一票通过基于“累加票数”,两者的并行逻辑完全不同。
- ⚠ 常见错误 2:串签节点的驳回路由未定义。建议默认为驳回至上一审批人,并允许配置“驳回至发起人”或“驳回至任意历史节点”。
- ⚠ 常见错误 3:条件分支未设置默认路径,导致无满足条件的单据卡在节点中。