Skip to content

原生审批实例概述

原生审批实例是指基于某一原生审批定义发起的审批流。企业管理员在审批中心创建并发布审批定义后,员工即可在飞书客户端的 工作台 > 审批 功能发起审批申请,发起申请时需要根据审批定义的表单填写数据,发起申请后审批会按照审批定义的流程进行流转。审批业务将原生审批实例的相关操作封装为开放能力,你可调用原生审批实例 API 完成原生审批实例的创建、撤回或查询等管理操作。

image.png

基础概念

在正式开始使用原生审批实例 API 之前,请务必了解以下基本概念。

审批定义

审批实例是基于审批定义创建的,因此在创建审批实例之前,需要先创建审批定义,定义发起审批所需的表单内容以及审批流程。详细介绍参见原生审批定义概述

你需要了解审批定义中的 表单流程,在后续创建审批实例时需要:

  • 根据审批定义的表单设计,依次为表单内的控件传值。
  • 根据审批定义的流程设计,完成节点的审批人、抄送人等配置。

审批实例唯一标识 Instance Code

每一个审批实例都有一个唯一标识(Instance Code),在开发过程中如需使用指定的审批实例,则需要通过 Instance Code 定位审批实例。获取方式说明:

审批实例状态

审批实例在流转过程中状态会发生变化(包括 审批中通过拒绝撤回删除 等),你可以根据审批实例的当前状态判断审批进展,例如:

  • 新建的审批实例初始状态为 审批中
  • 审批人同意审批后,审批实例会变更为 通过 状态。
  • 审批发起人撤回审批后,审批实例会变更为 撤回 状态。

字段说明

名称类型描述
instance_codestring审批实例 Code
approval_namestring审批名称
approval_codestring审批定义 Code
start_timestring审批创建时间,毫秒时间戳
end_timestring审批结束时间,毫秒时间戳
user_idstring审批发起人的 user_id,了解用户 ID 参见用户身份概述
open_idstring审批发起人的 open_id,了解用户 ID 参见用户身份概述
serial_numberstring审批单编号
department_idstring审批发起人所属的部门 ID
statusstring审批实例状态
可选值有
- PENDING: 审批中 - APPROVED: 通过 - REJECTED: 拒绝 - CANCELED: 撤回 - DELETED: 删除
uuidstring审批实例的 uuid,用于幂等操作,避免误操作重复创建审批实例
formstring审批实例填写的表单数据,JSON 序列化后的字符串
task_listinstance_task\[\]审批任务列表
  └ idstring审批任务 ID
  └ user_idstring审批人的 user_id,自动通过、自动拒绝时该参数返回值为空
  └ open_idstring审批人的 open_id,自动通过、自动拒绝时该参数返回值为空
  └ statusstring任务状态
可选值有
- PENDING: 审批中 - APPROVED: 同意 - REJECTED: 拒绝 - TRANSFERRED: 已转交 - DONE: 完成
  └ node_idstring审批任务所属的审批节点 ID
  └ node_namestring审批任务所属的审批节点名称
  └ custom_node_idstring审批任务所属的审批节点的自定义 ID。如果没设置自定义 ID,则不返回该参数值
  └ typestring审批方式
可选值有
- AND: 会签 - OR: 或签 - AUTO_PASS: 自动通过 - AUTO_REJECT: 自动拒绝 - SEQUENTIAL: 按顺序
  └ start_timestring审批任务的开始时间,毫秒时间戳
  └ end_timestring审批任务的完成时间,毫秒时间戳,未完成时返回 0
comment_listinstance_comment\[\]评论列表
  └ idstring评论 ID
  └ user_idstring发表评论的用户 user_id
  └ open_idstring发表评论的用户 open_id
  └ commentstring评论内容
  └ create_timestring评论时间,毫秒时间戳
timelineinstance_timeline\[\]审批动态
  └ typestring动态类型,不同类型 ext 内的 user_id_list 含义不一样
可选值有
- START: 审批开始 - PASS: 通过 - REJECT: 拒绝 - AUTO_PASS: 自动通过 - AUTO_REJECT: 自动拒绝 - REMOVE_REPEAT: 去重 - TRANSFER: 转交 - ADD_APPROVER_BEFORE: 前加签 - ADD_APPROVER: 并加签 - ADD_APPROVER_AFTER: 后加签 - DELETE_APPROVER: 减签 - ROLLBACK_SELECTED: 指定回退 - ROLLBACK: 全部回退 - CANCEL: 撤回 - DELETE: 删除 - CC: 抄送
  └ create_timestring发生时间,毫秒时间戳
  └ user_idstring产生该动态的用户 user_id
  └ open_idstring产生该动态的用户 open_id
  └ user_id_liststring\[\]被抄送人列表,列表内包含的是用户 user_id
  └ open_id_liststring\[\]被抄送人列表,列表内包含的是用户 open_id
  └ task_idstring产生动态关联的任务 ID
  └ commentstring理由
  └ cc_user_listinstance_cc_user\[\]抄送人列表
      └ user_idstring抄送人的 user_id
      └ cc_idstring审批实例内抄送唯一标识
      └ open_idstring抄送人的 open_id
  └ extstring其他信息,JSON 格式,目前包括 user_id_list, user_id,open_id_list,open_id
  └ node_keystring产生审批任务的节点 key
modified_instance_codestring修改的原实例 Code,仅在查询修改实例时显示该字段
reverted_instance_codestring撤销的原实例 Code,仅在查询撤销实例时显示该字段
revertedboolean单据是否被撤销

数据示例

json
{
        "approval_name": "Payment",
        "start_time": "1564590532967",
        "end_time": "1564590532967",
        "user_id": "f3ta757q",
        "open_id": "ou_3cda9c969f737aaa05e6915dce306cb9",
        "serial_number": "202102060002",
        "department_id": "od-8ec33ffec336c3a39a278bc25e931676",
        "status": "PENDING",
        "uuid": "1234567",
        "form": "[{\"id\": \"widget1\",\"custom_id\": \"user_info\",\"name\": \"Item application\",\"type\": \"textarea\",\"value\":\"aaaa\"}]",
        "task_list": [
            {
                "id": "1234",
                "user_id": "f7cb567e",
                "open_id": "ou_123457",
                "status": "PENDING",
                "node_id": "46e6d96cfa756980907209209ec03b64",
                "node_name": "开始",
                "custom_node_id": "manager",
                "type": "AND",
                "start_time": "1564590532967",
                "end_time": "0"
            }
        ],
        "comment_list": [
            {
                "id": "1234",
                "user_id": "f7cb567e",
                "open_id": "ou_123456",
                "comment": "ok",
                "create_time": "1564590532967"
            }
        ],
        "timeline": [
            {
                "type": "PASS",
                "create_time": "1564590532967",
                "user_id": "f7cb567e",
                "open_id": "ou_123456",
                "user_id_list": [
                    "Eeea5gefe"
                ],
                "open_id_list": [
                    "ou_123456"
                ],
                "task_id": "1234",
                "comment": "ok",
                "cc_user_list": [
                    {
                        "user_id": "eea5gefe",
                        "cc_id": "123445",
                        "open_id": "ou_12345"
                    }
                ],
                "ext": "{\"user_id\":\"62d4a44c\",\"open_id\":\"ou_123456\"}",
                "node_key": "APPROVAL_240330_4058663"
            }
        ],
        "modified_instance_code": "81D31358-93AF-92D6-7425-01A5D67C4E71",
        "reverted_instance_code": "81D31358-93AF-92D6-7425-01A5D67C4E71",
        "approval_code": "7C468A54-8745-2245-9675-08B7C63E7A85",
        "reverted": false
}

内容来源:飞书开放平台 · 自动爬取整理