Skip to main content

openlark_platform/app_engine/apaas/v1/approval_task/
mod.rs

1//! Approval Task module
2
3pub mod add_assignee;
4pub mod agree;
5pub mod cancel;
6pub mod reject;
7/// 转交审批任务。
8pub mod transfer;
9
10use openlark_core::config::Config;
11
12/// approval_task 资源服务
13#[derive(Debug, Clone)]
14pub struct ApprovalTaskService {
15    config: Config,
16}
17
18impl ApprovalTaskService {
19    /// 创建新的 approval_task 服务
20    pub fn new(config: Config) -> Self {
21        Self { config }
22    }
23
24    /// 同意审批任务
25    pub fn agree(&self) -> agree::AgreeTaskRequestBuilder {
26        agree::AgreeTaskRequestBuilder::new(self.config.clone())
27    }
28
29    /// 拒绝审批任务
30    pub fn reject(&self) -> reject::RejectTaskRequestBuilder {
31        reject::RejectTaskRequestBuilder::new(self.config.clone())
32    }
33
34    /// 取消审批任务
35    pub fn cancel(&self) -> cancel::CancelTaskRequestBuilder {
36        cancel::CancelTaskRequestBuilder::new(self.config.clone())
37    }
38
39    /// 添加审批人
40    pub fn add_assignee(&self) -> add_assignee::AddAssigneeRequestBuilder {
41        add_assignee::AddAssigneeRequestBuilder::new(self.config.clone())
42    }
43
44    /// 转交审批任务(接收 approval_task_id 与 transfer_to_user_id 两个路径参数)
45    pub fn transfer(
46        &self,
47        approval_task_id: impl Into<String>,
48        transfer_to_user_id: impl Into<String>,
49    ) -> transfer::TransferApprovalTaskRequestBuilder {
50        transfer::TransferApprovalTaskRequestBuilder::new(
51            self.config.clone(),
52            approval_task_id,
53            transfer_to_user_id,
54        )
55    }
56}