View Source WeChat.Work.OA.Approval (wechat v0.16.0)

审批

文档-概述

Summary

Types

分页查询游标,默认为0,后续使用返回的next_cursor进行分页拉取

筛选类型

筛选值

筛选条件,可对批量拉取的审批申请设置约束条件,支持设置多个条件

一次请求拉取审批单数量,默认值为100,上限值为100。若accesstoken为自建应用,仅允许获取在应用可见范围内申请人提交的表单,返回的sp_no_list个数可能和size不一致,开发者需用next_cursor判断表单记录是否拉取完

审批单编号

模板的唯一标识id

Types

@type cursor() :: integer()

分页查询游标,默认为0,后续使用返回的next_cursor进行分页拉取

@type filter_key() :: String.t()

筛选类型

  • template_id - 模板类型/模板id;
  • creator - 申请人;
  • department - 审批单提单者所在部门;
  • sp_status - 审批状态;
  • record_type - 审批单类型属性,1-请假;2-打卡补卡;3-出差;4-外出;5-加班; 6- 调班;7-会议室预定;8-退款审批;9-红包报销审批

注意

  1. 仅“部门”支持同时配置多个筛选条件。
  2. 不同类型的筛选条件之间为“与”的关系,同类型筛选条件之间为“或”的关系
  3. record_type筛选类型仅支持2021/05/31以后新提交的审批单,历史单不支持表单类型属性过滤
@type filter_value() :: String.t()

筛选值

对应为:

  • template_id - 模板id
  • creator - 申请人userid
  • department - 所在部门id
  • sp_status - 审批单状态
    • 1 - 审批中
    • 2 - 已通过
    • 3 - 已驳回
    • 4 - 已撤销
    • 6 - 通过后撤销
    • 7 - 已删除
    • 10 - 已支付
@type filters() :: [{filter_key(), filter_value()}]

筛选条件,可对批量拉取的审批申请设置约束条件,支持设置多个条件

@type size() :: integer()

一次请求拉取审批单数量,默认值为100,上限值为100。若accesstoken为自建应用,仅允许获取在应用可见范围内申请人提交的表单,返回的sp_no_list个数可能和size不一致,开发者需用next_cursor判断表单记录是否拉取完

@type sp_no() :: String.t()

审批单编号

@type template_id() :: String.t()

模板的唯一标识id

@type timestamp() :: integer()

Functions

Link to this function

apply_event(client, agent, body)

View Source
@spec apply_event(WeChat.Work.client(), WeChat.Work.agent(), body :: map()) ::
  WeChat.response()

提交审批申请

Link to this function

get_approval_detail(client, agent, sp_no)

View Source
@spec get_approval_detail(WeChat.Work.client(), WeChat.Work.agent(), sp_no()) ::
  WeChat.response()

获取审批申请详情

Link to this function

get_template_detail(client, agent, template_id)

View Source
@spec get_template_detail(WeChat.Work.client(), WeChat.Work.agent(), template_id()) ::
  WeChat.response()

获取审批模板详情

Link to this function

list_approvals(client, agent, start_time, end_time, cursor, size, filters \\ nil)

View Source
@spec list_approvals(
  WeChat.Work.client(),
  WeChat.Work.agent(),
  start_time :: timestamp(),
  end_time :: timestamp(),
  cursor(),
  size(),
  filters()
) :: WeChat.response()

批量获取审批单号