钉钉OA发起审批,子组件怎么封装

简介: 钉钉OA发起审批,子组件怎么封装

// This file is auto-generated, don't edit it. Thanks.
package com.aliyun.sample;

import com.aliyun.tea.;
import com.aliyun.teautil.
;
import com.aliyun.teautil.models.;
import com.aliyun.dingtalkworkflow_1_0.
;
import com.aliyun.dingtalkworkflow_1_0.models.;
import com.aliyun.teaopenapi.
;
import com.aliyun.teaopenapi.models.*;

public class Sample {

/**
 * 使用 Token 初始化账号Client
 * @return Client
 * @throws Exception
 */
public static com.aliyun.dingtalkworkflow_1_0.Client createClient() throws Exception {
    Config config = new Config();
    config.protocol = "https";
    config.regionId = "central";
    return new com.aliyun.dingtalkworkflow_1_0.Client(config);
}

public static void main(String[] args_) throws Exception {
    java.util.List<String> args = java.util.Arrays.asList(args_);
    com.aliyun.dingtalkworkflow_1_0.Client client = Sample.createClient();
    StartProcessInstanceHeaders startProcessInstanceHeaders = new StartProcessInstanceHeaders();
    startProcessInstanceHeaders.xAcsDingtalkAccessToken = "<your access token>";
    StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValuesDetailsDetails formComponentValues0Details0Details0 = new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValuesDetailsDetails()
            .setId("PhoneField_IZI2LP8QF6O0")
            .setBizAlias("Phone")
            .setName("PhoneField")
            .setValue("123xxxxxxxx")
            .setExtValue("总个数:1")
            .setComponentType("PhoneField");
    StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValuesDetails formComponentValues0Details0 = new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValuesDetails()
            .setId("PhoneField_IZI2LP8QF6O0")
            .setBizAlias("Phone")
            .setName("PhoneField")
            .setValue("123xxxxxxxx")
            .setExtValue("总个数:1")
            .setDetails(java.util.Arrays.asList(
                formComponentValues0Details0Details0
            ));
    StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues0 = new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues()
            .setId("PhoneField_IZI2LP8QF6O0")
            .setBizAlias("myPhoneNumber")
            .setName("PhoneField")
            .setValue("123xxxxxxxx")
            .setExtValue("总个数:1")
            .setComponentType("PhoneField")
            .setDetails(java.util.Arrays.asList(
                formComponentValues0Details0
            ));
    StartProcessInstanceRequest.StartProcessInstanceRequestTargetSelectActioners targetSelectActioners0 = new StartProcessInstanceRequest.StartProcessInstanceRequestTargetSelectActioners()
            .setActionerKey("manual_1918_5cd3_xxxx_6a98")
            .setActionerUserIds(java.util.Arrays.asList(
                "26652461xxxx5992"
            ));
    StartProcessInstanceRequest.StartProcessInstanceRequestApprovers approvers0 = new StartProcessInstanceRequest.StartProcessInstanceRequestApprovers()
            .setActionType("会签:AND;或签:OR;单人:NONE")
            .setUserIds(java.util.Arrays.asList(
                "user1"
            ));
    StartProcessInstanceRequest startProcessInstanceRequest = new StartProcessInstanceRequest()
            .setOriginatorUserId("manager432")
            .setProcessCode("PROC-EF6YJL35P2-SCKICSB7P750S0YISYKV3-xxxx-1")
            .setDeptId(1L)
            .setMicroappAgentId(41605932L)
            .setApprovers(java.util.Arrays.asList(
                approvers0
            ))
            .setCcList(java.util.Arrays.asList(
                "user1"
            ))
            .setCcPosition("START、FINISH、START_FINISH")
            .setTargetSelectActioners(java.util.Arrays.asList(
                targetSelectActioners0
            ))
            .setFormComponentValues(java.util.Arrays.asList(
                formComponentValues0
            ));
    try {
        client.startProcessInstanceWithOptions(startProcessInstanceRequest, startProcessInstanceHeaders, new RuntimeOptions());
    } catch (TeaException err) {
        if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
            // err 中含有 code 和 message 属性,可帮助开发定位问题
        }

    } catch (Exception _err) {
        TeaException err = new TeaException(_err.getMessage(), _err);
        if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
            // err 中含有 code 和 message 属性,可帮助开发定位问题
        }

    }        
}

}

相关文章
|
5月前
|
C#
|
1月前
钉钉OA审批bpms_instance_change无法获取finish消息
订阅了bpms_task_change和bpms_instance_change消息,bms_task_change能正常接收,但bpms_instance_change仅能接收到start事件,无法接收到finish事件。可能原因是finish事件的发布机制或订阅配置存在问题。
31 0
|
8月前
|
XML JSON 前端开发
基于若依的ruoyi-nbcio流程管理系统仿钉钉流程json转bpmn的flowable的xml格式(简单支持发起人与审批人的流程)
基于若依的ruoyi-nbcio流程管理系统仿钉钉流程json转bpmn的flowable的xml格式(简单支持发起人与审批人的流程)
499 2
基于若依的ruoyi-nbcio流程管理系统仿钉钉流程json转bpmn的flowable的xml格式(简单支持发起人与审批人的流程)
|
5月前
|
Java uml
某OA系统需要提供一个假条审批的模块,如果员工请假天数小于3天,主任可以审批该请假条;如果员工请假天数大于等于3天,小于10天,经理可以审批;如果员工请假天数大于等于10天,小于30天,总经理可以审批
该博客文章通过一个OA系统中的请假审批模块示例,使用Java语言实现了职责链模式,展示了如何根据不同的请假天数由不同级别的领导进行审批,并讨论了职责链模式的优缺点。
某OA系统需要提供一个假条审批的模块,如果员工请假天数小于3天,主任可以审批该请假条;如果员工请假天数大于等于3天,小于10天,经理可以审批;如果员工请假天数大于等于10天,小于30天,总经理可以审批
|
5月前
|
XML 算法 API
访问者模式问题之钉钉审批流程配置为什么适合使用访问者模式
访问者模式问题之钉钉审批流程配置为什么适合使用访问者模式
|
8月前
|
Java API
java提交钉钉审批的一个流程例子
java提交钉钉审批的一个流程例子
247 0
|
8月前
|
小程序 API 开发者
可以在钉钉小程序中直接跳转到审批单提交页面
【2月更文挑战第19天】可以在钉钉小程序中直接跳转到审批单提交页面
232 5
|
存储 弹性计算 安全
成功案例-钉钉 | 学习笔记
快速学习 成功案例-钉钉
424 0
|
存储 弹性计算 安全
案例分享——钉钉|学习笔记
快速学习 案例分享——钉钉
391 0