approval

package
v1.0.0-beta.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 16, 2020 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Overview

Package approval 审批

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

func ApprovalCreate

func ApprovalCreate(ctx *feishu.App, payload []byte) (resp []byte, err error)

创建审批定义

用于通过接口创建简单的审批定义,可以灵活指定定义的基础信息、表单和流程等。不推荐企业自建应用使用,如有需要尽量联系管理员在审批管理后台创建定义。

**权限说明** :需要获取 访问审批应用 权限。

See: https://open.feishu.cn/document/ugTM5UjL4ETO14COxkTN/uUzNyYjL1cjM24SN3IjN

POST https://www.feishu.cn/approval/openapi/v2/approval/create

Example
package main

import (
	"fmt"

	"github.com/ylck/feishu"
	"github.com/ylck/feishu/apis/capabilities/approval"
)

func main() {
	var ctx *feishu.App

	payload := []byte("{}")
	resp, err := approval.ApprovalCreate(ctx, payload)

	fmt.Println(resp, err)
}
Output:

func Approve

func Approve(ctx *feishu.App, payload []byte) (resp []byte, err error)

审批任务同意

对于单个审批任务进行同意操作。同意后审批流程会流转到下一个审批人。

**权限说明** :需要获取 访问审批应用 权限。

See: https://open.feishu.cn/document/ugTM5UjL4ETO14COxkTN/uMDNyUjLzQjM14yM0ITN

POST https://www.feishu.cn/approval/openapi/v2/instance/approve

Example
package main

import (
	"fmt"

	"github.com/ylck/feishu"
	"github.com/ylck/feishu/apis/capabilities/approval"
)

func main() {
	var ctx *feishu.App

	payload := []byte("{}")
	resp, err := approval.Approve(ctx, payload)

	fmt.Println(resp, err)
}
Output:

func Cancel

func Cancel(ctx *feishu.App, payload []byte) (resp []byte, err error)

审批实例撤回

对于单个审批实例进行撤销操作。撤销后审批流程结束。

**权限说明** :需要获取 访问审批应用 权限。

See: https://open.feishu.cn/document/ugTM5UjL4ETO14COxkTN/uYDNyUjL2QjM14iN0ITN

POST https://www.feishu.cn/approval/openapi/v2/instance/cancel

Example
package main

import (
	"fmt"

	"github.com/ylck/feishu"
	"github.com/ylck/feishu/apis/capabilities/approval"
)

func main() {
	var ctx *feishu.App

	payload := []byte("{}")
	resp, err := approval.Cancel(ctx, payload)

	fmt.Println(resp, err)
}
Output:

func ExternalInstanceCheck

func ExternalInstanceCheck(ctx *feishu.App, payload []byte) (resp []byte, err error)

三方审批实例校验

校验三方审批实例数据,用于判断服务端数据是否为最新的。用户提交实例最新更新时间,如果服务端不存在该实例,或者服务端实例更新时间不是最新的,则返回对应实例 id。

例如,用户可以每隔5分钟,将最近5分钟产生的实例使用该接口进行对比。 **权限说明** :需要获取 访问审批应用 权限。

See: https://open.feishu.cn/document/ugTM5UjL4ETO14COxkTN/uUDNyYjL1QjM24SN0IjN

POST https://www.feishu.cn/approval/openapi/v3/external/instance/check

Example
package main

import (
	"fmt"

	"github.com/ylck/feishu"
	"github.com/ylck/feishu/apis/capabilities/approval"
)

func main() {
	var ctx *feishu.App

	payload := []byte("{}")
	resp, err := approval.ExternalInstanceCheck(ctx, payload)

	fmt.Println(resp, err)
}
Output:

func ExternalInstanceCreate

func ExternalInstanceCreate(ctx *feishu.App, payload []byte) (resp []byte, err error)

三方审批定义创建/同步

企业通过第三方审批定义创建接口,帮助企业创建审批定义,创建审批定义后,可以将该审批定义下的审批实例推送到飞书审批应用。

See: https://open.feishu.cn/document/ugTM5UjL4ETO14COxkTN/uIDNyYjLyQjM24iM0IjN

POST https://www.feishu.cn/approval/openapi/v3/external/approval/create

Example
package main

import (
	"fmt"

	"github.com/ylck/feishu"
	"github.com/ylck/feishu/apis/capabilities/approval"
)

func main() {
	var ctx *feishu.App

	payload := []byte("{}")
	resp, err := approval.ExternalInstanceCreate(ctx, payload)

	fmt.Println(resp, err)
}
Output:

func Get

func Get(ctx *feishu.App, payload []byte) (resp []byte, err error)

查看审批定义

根据 Approval Code 获取某个审批定义的详情,用于构造创建审批实例的请求。

**权限说明** :需要获取 访问审批应用 权限。

See: https://open.feishu.cn/document/ugTM5UjL4ETO14COxkTN/uADNyUjLwQjM14CM0ITN

POST https://www.feishu.cn/approval/openapi/v2/approval/get

Example
package main

import (
	"fmt"

	"github.com/ylck/feishu"
	"github.com/ylck/feishu/apis/capabilities/approval"
)

func main() {
	var ctx *feishu.App

	payload := []byte("{}")
	resp, err := approval.Get(ctx, payload)

	fmt.Println(resp, err)
}
Output:

func InstanceCc

func InstanceCc(ctx *feishu.App, payload []byte) (resp []byte, err error)

审批实例抄送

通过接口可以将当前审批实例抄送给其他人。

**权限说明** :需要获取 访问审批应用 权限。

See: https://open.feishu.cn/document/ugTM5UjL4ETO14COxkTN/uADOzYjLwgzM24CM4MjN

POST https://www.feishu.cn/approval/openapi/v2/instance/cc

Example
package main

import (
	"fmt"

	"github.com/ylck/feishu"
	"github.com/ylck/feishu/apis/capabilities/approval"
)

func main() {
	var ctx *feishu.App

	payload := []byte("{}")
	resp, err := approval.InstanceCc(ctx, payload)

	fmt.Println(resp, err)
}
Output:

func InstanceCreate

func InstanceCreate(ctx *feishu.App, payload []byte) (resp []byte, err error)

创建审批实例

创建一个审批实例,调用方需对审批定义的表单有详细了解,将按照定义的表单结构,将表单 Value 通过接口传入。

See: https://open.feishu.cn/document/ugTM5UjL4ETO14COxkTN/uIDNyUjLyQjM14iM0ITN

POST https://www.feishu.cn/approval/openapi/v2/instance/create

Example
package main

import (
	"fmt"

	"github.com/ylck/feishu"
	"github.com/ylck/feishu/apis/capabilities/approval"
)

func main() {
	var ctx *feishu.App

	payload := []byte("{}")
	resp, err := approval.InstanceCreate(ctx, payload)

	fmt.Println(resp, err)
}
Output:

func InstanceGet

func InstanceGet(ctx *feishu.App, payload []byte) (resp []byte, err error)

获取单个审批实例详情

通过审批实例 Instance Code 获取审批实例详情。Instance Code 由 [批量获取审批实例](https://open.feishu.cn/document/ukTMukTMukTM/uQDOyUjL0gjM14CN4ITN) 接口获取。

See: https://open.feishu.cn/document/ugTM5UjL4ETO14COxkTN/uEDNyUjLxQjM14SM0ITN

POST https://www.feishu.cn/approval/openapi/v2/instance/get

Example
package main

import (
	"fmt"

	"github.com/ylck/feishu"
	"github.com/ylck/feishu/apis/capabilities/approval"
)

func main() {
	var ctx *feishu.App

	payload := []byte("{}")
	resp, err := approval.InstanceGet(ctx, payload)

	fmt.Println(resp, err)
}
Output:

func InstanceList

func InstanceList(ctx *feishu.App, payload []byte) (resp []byte, err error)

批量获取审批实例ID

根据 approval_code 批量获取审批实例的 instance_code,用于拉取租户下某个审批定义的全部审批实例。 默认以审批创建时间排序。

**权限说明** :需要获取 访问审批应用 权限。

See: https://open.feishu.cn/document/ugTM5UjL4ETO14COxkTN/uQDOyUjL0gjM14CN4ITN

POST https://www.feishu.cn/approval/openapi/v2/instance/list

Example
package main

import (
	"fmt"

	"github.com/ylck/feishu"
	"github.com/ylck/feishu/apis/capabilities/approval"
)

func main() {
	var ctx *feishu.App

	payload := []byte("{}")
	resp, err := approval.InstanceList(ctx, payload)

	fmt.Println(resp, err)
}
Output:

func MessageSend

func MessageSend(ctx *feishu.App, payload []byte) (resp []byte, err error)

发送审批Bot消息

此接口可以用来通过飞书审批的Bot推送消息给用户,当有新的审批待办,或者审批待办的状态有更新时,可以通过飞书审批的Bot告知用户。当然开发者也可以利用开放平台的能力自建一个全新的Bot,用来推送审批相关信息。

See: https://open.feishu.cn/document/ugTM5UjL4ETO14COxkTN/ugDNyYjL4QjM24CO0IjN

POST https://www.feishu.cn/approval/openapi/v1/message/send

Example
package main

import (
	"fmt"

	"github.com/ylck/feishu"
	"github.com/ylck/feishu/apis/capabilities/approval"
)

func main() {
	var ctx *feishu.App

	payload := []byte("{}")
	resp, err := approval.MessageSend(ctx, payload)

	fmt.Println(resp, err)
}
Output:

func MessageUpdate

func MessageUpdate(ctx *feishu.App, payload []byte) (resp []byte, err error)

更新审批Bot消息

此接口可以根据审批bot消息id及相应状态,更新相应的审批bot消息。例如,给用户推送了审批待办消息,当用户处理该消息后,可以将之前推送的Bot消息更新为已审批。

See: https://open.feishu.cn/document/ugTM5UjL4ETO14COxkTN/uAjNyYjLwYjM24CM2IjN

POST https://www.feishu.cn/approval/openapi/v1/message/update

Example
package main

import (
	"fmt"

	"github.com/ylck/feishu"
	"github.com/ylck/feishu/apis/capabilities/approval"
)

func main() {
	var ctx *feishu.App

	payload := []byte("{}")
	resp, err := approval.MessageUpdate(ctx, payload)

	fmt.Println(resp, err)
}
Output:

func Reject

func Reject(ctx *feishu.App, payload []byte) (resp []byte, err error)

审批任务拒绝

对于单个审批任务进行拒绝操作。拒绝后审批流程结束。

**权限说明** :需要获取 访问审批应用 权限。

See: https://open.feishu.cn/document/ugTM5UjL4ETO14COxkTN/uQDNyUjL0QjM14CN0ITN

POST https://www.feishu.cn/approval/openapi/v2/instance/reject

Example
package main

import (
	"fmt"

	"github.com/ylck/feishu"
	"github.com/ylck/feishu/apis/capabilities/approval"
)

func main() {
	var ctx *feishu.App

	payload := []byte("{}")
	resp, err := approval.Reject(ctx, payload)

	fmt.Println(resp, err)
}
Output:

func Subscribe

func Subscribe(ctx *feishu.App, payload []byte) (resp []byte, err error)

订阅审批事件

订阅 approval_code 后,可以收到该审批定义对应实例的事件通知。

See: https://open.feishu.cn/document/ugTM5UjL4ETO14COxkTN/ucDOyUjL3gjM14yN4ITN

POST https://www.feishu.cn/approval/openapi/v2/subscription/subscribe

Example
package main

import (
	"fmt"

	"github.com/ylck/feishu"
	"github.com/ylck/feishu/apis/capabilities/approval"
)

func main() {
	var ctx *feishu.App

	payload := []byte("{}")
	resp, err := approval.Subscribe(ctx, payload)

	fmt.Println(resp, err)
}
Output:

func Transfer

func Transfer(ctx *feishu.App, payload []byte) (resp []byte, err error)

审批任务转交

对于单个审批任务进行转交操作。转交后审批流程流转给被转交人。

**权限说明** :需要获取 访问审批应用 权限。

See: https://open.feishu.cn/document/ugTM5UjL4ETO14COxkTN/uUDNyUjL1QjM14SN0ITN

POST https://www.feishu.cn/approval/openapi/v2/instance/transfer

Example
package main

import (
	"fmt"

	"github.com/ylck/feishu"
	"github.com/ylck/feishu/apis/capabilities/approval"
)

func main() {
	var ctx *feishu.App

	payload := []byte("{}")
	resp, err := approval.Transfer(ctx, payload)

	fmt.Println(resp, err)
}
Output:

func Unsubscribe

func Unsubscribe(ctx *feishu.App, payload []byte) (resp []byte, err error)

取消订阅审批事件

取消订阅 approval_code 后,无法再收到该审批定义对应实例的事件通知。

See: https://open.feishu.cn/document/ugTM5UjL4ETO14COxkTN/ugDOyUjL4gjM14CO4ITN

POST https://www.feishu.cn/approval/openapi/v2/subscription/unsubscribe

Example
package main

import (
	"fmt"

	"github.com/ylck/feishu"
	"github.com/ylck/feishu/apis/capabilities/approval"
)

func main() {
	var ctx *feishu.App

	payload := []byte("{}")
	resp, err := approval.Unsubscribe(ctx, payload)

	fmt.Println(resp, err)
}
Output:

func Upload

func Upload(ctx *feishu.App, content string, params url.Values) (resp []byte, err error)

上传文件

当审批表单中有图片或附件控件时,开发者需在创建审批实例前通过审批上传文件接口将文件上传到审批系统。

**权限说明** :需要获取 访问审批应用 权限。

See: https://open.feishu.cn/document/ugTM5UjL4ETO14COxkTN/uUDOyUjL1gjM14SN4ITN

POST https://www.feishu.cn/approval/openapi/v2/file/upload

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL