12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- <?php
- require_once __DIR__.'/../../../vendor/autoload.php';
- use TencentCloud\Ess\V20201111\EssClient;
- use TencentCloud\Ess\V20201111\Models\CreateFlowByFilesRequest;
- use TencentCloud\Ess\V20201111\Models\UserInfo;
- use TencentCloud\Ess\V20201111\Models\ApproverInfo;
- use TencentCloud\Ess\V20201111\Models\Component;
- use TencentCloud\Common\Exception\TencentCloudSDKException;
- use TencentCloud\Common\Credential;
- use TencentCloud\Common\Profile\ClientProfile;
- use TencentCloud\Common\Profile\HttpProfile;
- try {
- // 实例化一个证书对象,入参需要传入腾讯云账户secretId,secretKey
- $cred = new Credential("********************************", "********************************");
- // 实例化一个http选项,可选的,没有特殊需求可以跳过
- $httpProfile = new HttpProfile();
- $httpProfile->setReqMethod("POST"); // post请求(默认为post请求)
- $httpProfile->setReqTimeout(30); // 请求超时时间,单位为秒(默认60秒)
- $httpProfile->setEndpoint("ess.tencentcloudapi.com"); // 指定接入地域域名(默认就近接入)
- // 实例化一个client选项,可选的,没有特殊需求可以跳过
- $clientProfile = new ClientProfile();
- $clientProfile->setSignMethod("TC3-HMAC-SHA256"); // 指定签名算法(默认为HmacSHA256)
- $clientProfile->setHttpProfile($httpProfile);
- $client = new EssClient($cred, "ap-guangzhou", $clientProfile);
- $req = new CreateFlowByFilesRequest();
- $userInfo = new UserInfo();
- $userInfo->setUserId("********************************");
- $req->setOperator($userInfo);
- $req->FileIds = [];
- array_push($req->FileIds, "********************************");
- // 企业方 静默签署时type为3/非静默签署type为0
- $approver1 = new ApproverInfo();
- $approver1->setApproverType(3);
- $approver1->setApproverName("********************************");
- $approver1->setApproverMobile("********************************");
- $approver1->setOrganizationName("********************************");
- $component1 = new Component();
- $component1->setComponentValue("********************************");
- $component1->setComponentPosY(497.61545);
- $component1->setComponentWidth(74);
- $component1->setFileIndex(0);
- $component1->setComponentType("SIGN_SEAL");
- $component1->setComponentPage(1);
- $component1->setComponentPosX(417.15625);
- $component1->setComponentHeight(70);
- $approver1->SignComponents = [];
- array_push($approver1->SignComponents, $component1);
- // 客户个人
- $approver2 = new ApproverInfo();
- $approver2->setApproverType(1);
- $approver2->setApproverName("********************************");
- $approver2->setApproverMobile("********************************");
- $component2 = new Component();
- $component2->setComponentPosY(472.78125);
- $component2->setComponentWidth(112);
- $component2->setFileIndex(0);
- $component2->setComponentType("SIGN_SIGNATURE");
- $component2->setComponentPage(1);
- $component2->setComponentPosX(146.15625);
- $component2->setComponentHeight(40);
- $approver2->SignComponents = [];
- array_push($approver2->SignComponents, $component2);
- // 注:当进行B2B签署时,允许指向未注册的企业,此时签署人可以查看合同并按照指引注册企业
- $req->Approvers = [];
- array_push($req->Approvers, $approver1);
- array_push($req->Approvers, $approver2);
- $req->setFlowName("********************************");
- // 请设置合理的时间,否则容易造成合同过期
- $req->setDeadLine(time() + 7 * 24 * 3600);
- $resp = $client->CreateFlowByFiles($req);
- // 输出json格式的字符串回包
- print_r($resp->toJsonString());
- }
- catch(TencentCloudSDKException $e) {
- echo $e;
- }
|