# frozen_string_literal: true # Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. module TencentCloud module Essbasic module V20210526 # 应用相关信息 class Agent < TencentCloud::Common::AbstractModel # @param AppId: 应用的唯一标识。不同的业务系统可以采用不同的AppId,不同AppId下的数据是隔离的。可以由控制台开发者中心-应用集成自主生成。 # @type AppId: String # @param ProxyOrganizationOpenId: 第三方应用平台自定义,对应第三方平台子客企业的唯一标识。一个第三方平台子客企业主体与子客企业ProxyOrganizationOpenId是一一对应的,不可更改,不可重复使用。(例如,可以使用企业名称的hash值,或者社会统一信用代码的hash值,或者随机hash值,需要第三方应用平台保存),最大64位字符串 # @type ProxyOrganizationOpenId: String # @param ProxyOperator: 第三方平台子客企业中的员工/经办人,通过第三方应用平台进入电子签完成实名、且被赋予相关权限后,可以参与到企业资源的管理或签署流程中。 # @type ProxyOperator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` # @param ProxyAppId: 在第三方平台子客企业开通电子签后,会生成唯一的子客应用Id(ProxyAppId)用于代理调用时的鉴权,在子客开通的回调中获取。 # @type ProxyAppId: String # @param ProxyOrganizationId: 内部参数,暂未开放使用 # @type ProxyOrganizationId: String attr_accessor :AppId, :ProxyOrganizationOpenId, :ProxyOperator, :ProxyAppId, :ProxyOrganizationId def initialize(appid=nil, proxyorganizationopenid=nil, proxyoperator=nil, proxyappid=nil, proxyorganizationid=nil) @AppId = appid @ProxyOrganizationOpenId = proxyorganizationopenid @ProxyOperator = proxyoperator @ProxyAppId = proxyappid @ProxyOrganizationId = proxyorganizationid end def deserialize(params) @AppId = params['AppId'] @ProxyOrganizationOpenId = params['ProxyOrganizationOpenId'] unless params['ProxyOperator'].nil? @ProxyOperator = UserInfo.new @ProxyOperator.deserialize(params['ProxyOperator']) end @ProxyAppId = params['ProxyAppId'] @ProxyOrganizationId = params['ProxyOrganizationId'] end end # 签署人个性化能力信息 class ApproverOption < TencentCloud::Common::AbstractModel # @param HideOneKeySign: 是否隐藏一键签署 false-不隐藏,默认 true-隐藏 # @type HideOneKeySign: Boolean attr_accessor :HideOneKeySign def initialize(hideonekeysign=nil) @HideOneKeySign = hideonekeysign end def deserialize(params) @HideOneKeySign = params['HideOneKeySign'] end end # 指定签署人限制项 class ApproverRestriction < TencentCloud::Common::AbstractModel # @param Name: 指定签署人名字 # @type Name: String # @param Mobile: 指定签署人手机号 # @type Mobile: String # @param IdCardType: 指定签署人证件类型 # @type IdCardType: String # @param IdCardNumber: 指定签署人证件号码 # @type IdCardNumber: String attr_accessor :Name, :Mobile, :IdCardType, :IdCardNumber def initialize(name=nil, mobile=nil, idcardtype=nil, idcardnumber=nil) @Name = name @Mobile = mobile @IdCardType = idcardtype @IdCardNumber = idcardnumber end def deserialize(params) @Name = params['Name'] @Mobile = params['Mobile'] @IdCardType = params['IdCardType'] @IdCardNumber = params['IdCardNumber'] end end # 授权出错信息 class AuthFailMessage < TencentCloud::Common::AbstractModel # @param ProxyOrganizationOpenId: 合作企业Id # @type ProxyOrganizationOpenId: String # @param Message: 出错信息 # @type Message: String attr_accessor :ProxyOrganizationOpenId, :Message def initialize(proxyorganizationopenid=nil, message=nil) @ProxyOrganizationOpenId = proxyorganizationopenid @Message = message end def deserialize(params) @ProxyOrganizationOpenId = params['ProxyOrganizationOpenId'] @Message = params['Message'] end end # 授权用户 class AuthorizedUser < TencentCloud::Common::AbstractModel # @param OpenId: 用户openid # @type OpenId: String attr_accessor :OpenId def initialize(openid=nil) @OpenId = openid end def deserialize(params) @OpenId = params['OpenId'] end end # 基础流程信息 class BaseFlowInfo < TencentCloud::Common::AbstractModel # @param FlowName: 合同流程名称 # @type FlowName: String # @param FlowType: 合同流程类型 # @type FlowType: String # @param FlowDescription: 合同流程描述信息 # @type FlowDescription: String # @param Deadline: 合同流程截止时间,unix时间戳 # @type Deadline: Integer # @param Unordered: 是否顺序签署(true:无序签,false:顺序签) # @type Unordered: Boolean # @param IntelligentStatus: 打开智能添加填写区(默认开启,打开:"OPEN" 关闭:"CLOSE") # @type IntelligentStatus: String # @param FormFields: 填写控件内容 # @type FormFields: Array # @param NeedSignReview: 本企业(发起方企业)是否需要签署审批,true:开启本企业签署审批 # @type NeedSignReview: Boolean # @param UserData: 用户流程自定义数据参数 # @type UserData: String attr_accessor :FlowName, :FlowType, :FlowDescription, :Deadline, :Unordered, :IntelligentStatus, :FormFields, :NeedSignReview, :UserData def initialize(flowname=nil, flowtype=nil, flowdescription=nil, deadline=nil, unordered=nil, intelligentstatus=nil, formfields=nil, needsignreview=nil, userdata=nil) @FlowName = flowname @FlowType = flowtype @FlowDescription = flowdescription @Deadline = deadline @Unordered = unordered @IntelligentStatus = intelligentstatus @FormFields = formfields @NeedSignReview = needsignreview @UserData = userdata end def deserialize(params) @FlowName = params['FlowName'] @FlowType = params['FlowType'] @FlowDescription = params['FlowDescription'] @Deadline = params['Deadline'] @Unordered = params['Unordered'] @IntelligentStatus = params['IntelligentStatus'] unless params['FormFields'].nil? @FormFields = [] params['FormFields'].each do |i| formfield_tmp = FormField.new formfield_tmp.deserialize(i) @FormFields << formfield_tmp end end @NeedSignReview = params['NeedSignReview'] @UserData = params['UserData'] end end # 抄送信息 class CcInfo < TencentCloud::Common::AbstractModel # @param Mobile: 被抄送人手机号,大陆11位手机号 # @type Mobile: String # @param Name: 被抄送人姓名 # @type Name: String # @param CcType: 被抄送人类型 # 0--个人. 1--员工 # @type CcType: Integer # @param CcPermission: 被抄送人权限 # 0--可查看 # 1--可查看也可下载 # @type CcPermission: Integer attr_accessor :Mobile, :Name, :CcType, :CcPermission def initialize(mobile=nil, name=nil, cctype=nil, ccpermission=nil) @Mobile = mobile @Name = name @CcType = cctype @CcPermission = ccpermission end def deserialize(params) @Mobile = params['Mobile'] @Name = params['Name'] @CcType = params['CcType'] @CcPermission = params['CcPermission'] end end # ChannelBatchCancelFlows请求参数结构体 class ChannelBatchCancelFlowsRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param FlowIds: 签署流程Id数组,最多100个,超过100不处理 # @type FlowIds: Array # @param CancelMessage: 撤销理由 # @type CancelMessage: String # @param CancelMessageFormat: 撤销理由自定义格式;选项: # 0 默认格式 # 1 只保留身份信息:展示为【发起方】 # 2 保留身份信息+企业名称:展示为【发起方xxx公司】 # 3 保留身份信息+企业名称+经办人名称:展示为【发起方xxxx公司-经办人姓名】 # @type CancelMessageFormat: Integer # @param Operator: 暂未开放 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :FlowIds, :CancelMessage, :CancelMessageFormat, :Operator def initialize(agent=nil, flowids=nil, cancelmessage=nil, cancelmessageformat=nil, operator=nil) @Agent = agent @FlowIds = flowids @CancelMessage = cancelmessage @CancelMessageFormat = cancelmessageformat @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @FlowIds = params['FlowIds'] @CancelMessage = params['CancelMessage'] @CancelMessageFormat = params['CancelMessageFormat'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # ChannelBatchCancelFlows返回参数结构体 class ChannelBatchCancelFlowsResponse < TencentCloud::Common::AbstractModel # @param FailMessages: 签署流程批量撤销失败原因,错误信息与流程Id一一对应,成功为“”,失败则对应失败消息 # @type FailMessages: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :FailMessages, :RequestId def initialize(failmessages=nil, requestid=nil) @FailMessages = failmessages @RequestId = requestid end def deserialize(params) @FailMessages = params['FailMessages'] @RequestId = params['RequestId'] end end # ChannelCancelFlow请求参数结构体 class ChannelCancelFlowRequest < TencentCloud::Common::AbstractModel # @param FlowId: 签署流程编号 # @type FlowId: String # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param CancelMessage: 撤回原因,最大不超过200字符 # @type CancelMessage: String # @param CancelMessageFormat: 撤销理由自定义格式;选项: # 0 默认格式 # 1 只保留身份信息:展示为【发起方】 # 2 保留身份信息+企业名称:展示为【发起方xxx公司】 # 3 保留身份信息+企业名称+经办人名称:展示为【发起方xxxx公司-经办人姓名】 # @type CancelMessageFormat: Integer # @param Operator: 暂未开放 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :FlowId, :Agent, :CancelMessage, :CancelMessageFormat, :Operator def initialize(flowid=nil, agent=nil, cancelmessage=nil, cancelmessageformat=nil, operator=nil) @FlowId = flowid @Agent = agent @CancelMessage = cancelmessage @CancelMessageFormat = cancelmessageformat @Operator = operator end def deserialize(params) @FlowId = params['FlowId'] unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @CancelMessage = params['CancelMessage'] @CancelMessageFormat = params['CancelMessageFormat'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # ChannelCancelFlow返回参数结构体 class ChannelCancelFlowResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ChannelCancelMultiFlowSignQRCode请求参数结构体 class ChannelCancelMultiFlowSignQRCodeRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param QrCodeId: 二维码id # @type QrCodeId: String # @param Operator: 暂未开放 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :QrCodeId, :Operator def initialize(agent=nil, qrcodeid=nil, operator=nil) @Agent = agent @QrCodeId = qrcodeid @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @QrCodeId = params['QrCodeId'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # ChannelCancelMultiFlowSignQRCode返回参数结构体 class ChannelCancelMultiFlowSignQRCodeResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ChannelCreateBatchCancelFlowUrl请求参数结构体 class ChannelCreateBatchCancelFlowUrlRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param FlowIds: 签署流程Id数组 # @type FlowIds: Array # @param Operator: 暂未开放 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :FlowIds, :Operator def initialize(agent=nil, flowids=nil, operator=nil) @Agent = agent @FlowIds = flowids @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @FlowIds = params['FlowIds'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # ChannelCreateBatchCancelFlowUrl返回参数结构体 class ChannelCreateBatchCancelFlowUrlResponse < TencentCloud::Common::AbstractModel # @param BatchCancelFlowUrl: 批量撤销url # @type BatchCancelFlowUrl: String # @param FailMessages: 签署流程批量撤销失败原因 # @type FailMessages: Array # @param UrlExpireOn: 签署撤销url过期时间-年月日-时分秒 # @type UrlExpireOn: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :BatchCancelFlowUrl, :FailMessages, :UrlExpireOn, :RequestId def initialize(batchcancelflowurl=nil, failmessages=nil, urlexpireon=nil, requestid=nil) @BatchCancelFlowUrl = batchcancelflowurl @FailMessages = failmessages @UrlExpireOn = urlexpireon @RequestId = requestid end def deserialize(params) @BatchCancelFlowUrl = params['BatchCancelFlowUrl'] @FailMessages = params['FailMessages'] @UrlExpireOn = params['UrlExpireOn'] @RequestId = params['RequestId'] end end # ChannelCreateBoundFlows请求参数结构体 class ChannelCreateBoundFlowsRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用信息 # 此接口Agent.AppId、Agent.ProxyOrganizationOpenId 和 Agent. ProxyOperator.OpenId 必填 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param FlowIds: 领取的合同id列表 # @type FlowIds: Array # @param Operator: 暂未开放 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :FlowIds, :Operator def initialize(agent=nil, flowids=nil, operator=nil) @Agent = agent @FlowIds = flowids @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @FlowIds = params['FlowIds'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # ChannelCreateBoundFlows返回参数结构体 class ChannelCreateBoundFlowsResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ChannelCreateConvertTaskApi请求参数结构体 class ChannelCreateConvertTaskApiRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param ResourceType: 资源类型 取值范围doc,docx,html,xls,xlsx之一 # @type ResourceType: String # @param ResourceName: 资源名称,长度限制为256字符 # @type ResourceName: String # @param ResourceId: 资源Id,通过UploadFiles获取 # @type ResourceId: String # @param Operator: 调用方用户信息,不用传 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` # @param Organization: 暂未开放 # @type Organization: :class:`Tencentcloud::Essbasic.v20210526.models.OrganizationInfo` attr_accessor :Agent, :ResourceType, :ResourceName, :ResourceId, :Operator, :Organization def initialize(agent=nil, resourcetype=nil, resourcename=nil, resourceid=nil, operator=nil, organization=nil) @Agent = agent @ResourceType = resourcetype @ResourceName = resourcename @ResourceId = resourceid @Operator = operator @Organization = organization end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @ResourceType = params['ResourceType'] @ResourceName = params['ResourceName'] @ResourceId = params['ResourceId'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end unless params['Organization'].nil? @Organization = OrganizationInfo.new @Organization.deserialize(params['Organization']) end end end # ChannelCreateConvertTaskApi返回参数结构体 class ChannelCreateConvertTaskApiResponse < TencentCloud::Common::AbstractModel # @param TaskId: 任务id # @type TaskId: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TaskId, :RequestId def initialize(taskid=nil, requestid=nil) @TaskId = taskid @RequestId = requestid end def deserialize(params) @TaskId = params['TaskId'] @RequestId = params['RequestId'] end end # ChannelCreateEmbedWebUrl请求参数结构体 class ChannelCreateEmbedWebUrlRequest < TencentCloud::Common::AbstractModel # @param EmbedType: WEB嵌入资源类型,取值范围:CREATE_SEAL创建印章,CREATE_TEMPLATE创建模板,MODIFY_TEMPLATE修改模板,PREVIEW_TEMPLATE预览模板,PREVIEW_FLOW预览流程 # @type EmbedType: String # @param Agent: 渠道应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param Operator: 渠道操作者信息 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` # @param BusinessId: WEB嵌入的业务资源ID,EmbedType取值MODIFY_TEMPLATE或PREVIEW_TEMPLATE或 PREVIEW_FLOW时BusinessId必填 # @type BusinessId: String # @param HiddenComponents: 是否隐藏控件,只有预览模板时生效 # @type HiddenComponents: Boolean attr_accessor :EmbedType, :Agent, :Operator, :BusinessId, :HiddenComponents def initialize(embedtype=nil, agent=nil, operator=nil, businessid=nil, hiddencomponents=nil) @EmbedType = embedtype @Agent = agent @Operator = operator @BusinessId = businessid @HiddenComponents = hiddencomponents end def deserialize(params) @EmbedType = params['EmbedType'] unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end @BusinessId = params['BusinessId'] @HiddenComponents = params['HiddenComponents'] end end # ChannelCreateEmbedWebUrl返回参数结构体 class ChannelCreateEmbedWebUrlResponse < TencentCloud::Common::AbstractModel # @param WebUrl: 嵌入的web链接 # @type WebUrl: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :WebUrl, :RequestId def initialize(weburl=nil, requestid=nil) @WebUrl = weburl @RequestId = requestid end def deserialize(params) @WebUrl = params['WebUrl'] @RequestId = params['RequestId'] end end # ChannelCreateFlowByFiles请求参数结构体 class ChannelCreateFlowByFilesRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param FlowName: 签署流程名称,长度不超过200个字符 # @type FlowName: String # @param FlowApprovers: 签署流程签约方列表,最多不超过50个参与方 # @type FlowApprovers: Array # @param FileIds: 签署文件资源Id列表,目前仅支持单个文件 # @type FileIds: Array # @param Components: 签署文件中的发起方的填写控件,需要在发起的时候进行填充 # @type Components: Array # @param Deadline: 签署流程截止时间,十位数时间戳,最大值为33162419560,即3020年 # @type Deadline: Integer # @param CallbackUrl: 签署流程回调地址,长度不超过255个字符 # @type CallbackUrl: String # @param Unordered: 合同签署顺序类型(无序签,顺序签),默认为false,即有序签署。有序签署时以传入FlowApprovers数组的顺序作为签署顺序 # @type Unordered: Boolean # @param FlowType: 签署流程的类型,长度不超过255个字符 # @type FlowType: String # @param FlowDescription: 签署流程的描述,长度不超过1000个字符 # @type FlowDescription: String # @param CustomShowMap: 合同显示的页卡模板,说明:只支持{合同名称}, {发起方企业}, {发起方姓名}, {签署方N企业}, {签署方N姓名},且N不能超过签署人的数量,N从1开始 # @type CustomShowMap: String # @param CustomerData: 业务信息,最大长度1000个字符。发起自动签署时,需设置对应自动签署场景,目前仅支持场景:处方单-E_PRESCRIPTION_AUTO_SIGN # @type CustomerData: String # @param NeedSignReview: 发起方企业的签署人进行签署操作是否需要企业内部审批。 若设置为true,审核结果需通过接口 ChannelCreateFlowSignReview 通知电子签,审核通过后,发起方企业签署人方可进行签署操作,否则会阻塞其签署操作。 注:企业可以通过此功能与企业内部的审批流程进行关联,支持手动、静默签署合同。 # @type NeedSignReview: Boolean # @param ApproverVerifyType: 签署人校验方式 # VerifyCheck: 人脸识别(默认) # MobileCheck:手机号验证 # 参数说明:可选人脸识别或手机号验证两种方式,若选择后者,未实名个人签署方在签署合同时,无需经过实名认证和意愿确认两次人脸识别,该能力仅适用于个人签署方。 # @type ApproverVerifyType: String # @param SignBeanTag: 标识是否允许发起后添加控件。0为不允许1为允许。如果为1,创建的时候不能有签署控件,只能创建后添加。注意发起后添加控件功能不支持添加骑缝章和签批控件 # @type SignBeanTag: Integer # @param Operator: 操作者的信息,不用传 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` # @param CcInfos: 被抄送人信息列表 # @type CcInfos: Array # @param CcNotifyType: 给关注人发送短信通知的类型,0-合同发起时通知 1-签署完成后通知 # @type CcNotifyType: Integer attr_accessor :Agent, :FlowName, :FlowApprovers, :FileIds, :Components, :Deadline, :CallbackUrl, :Unordered, :FlowType, :FlowDescription, :CustomShowMap, :CustomerData, :NeedSignReview, :ApproverVerifyType, :SignBeanTag, :Operator, :CcInfos, :CcNotifyType def initialize(agent=nil, flowname=nil, flowapprovers=nil, fileids=nil, components=nil, deadline=nil, callbackurl=nil, unordered=nil, flowtype=nil, flowdescription=nil, customshowmap=nil, customerdata=nil, needsignreview=nil, approververifytype=nil, signbeantag=nil, operator=nil, ccinfos=nil, ccnotifytype=nil) @Agent = agent @FlowName = flowname @FlowApprovers = flowapprovers @FileIds = fileids @Components = components @Deadline = deadline @CallbackUrl = callbackurl @Unordered = unordered @FlowType = flowtype @FlowDescription = flowdescription @CustomShowMap = customshowmap @CustomerData = customerdata @NeedSignReview = needsignreview @ApproverVerifyType = approververifytype @SignBeanTag = signbeantag @Operator = operator @CcInfos = ccinfos @CcNotifyType = ccnotifytype end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @FlowName = params['FlowName'] unless params['FlowApprovers'].nil? @FlowApprovers = [] params['FlowApprovers'].each do |i| flowapproverinfo_tmp = FlowApproverInfo.new flowapproverinfo_tmp.deserialize(i) @FlowApprovers << flowapproverinfo_tmp end end @FileIds = params['FileIds'] unless params['Components'].nil? @Components = [] params['Components'].each do |i| component_tmp = Component.new component_tmp.deserialize(i) @Components << component_tmp end end @Deadline = params['Deadline'] @CallbackUrl = params['CallbackUrl'] @Unordered = params['Unordered'] @FlowType = params['FlowType'] @FlowDescription = params['FlowDescription'] @CustomShowMap = params['CustomShowMap'] @CustomerData = params['CustomerData'] @NeedSignReview = params['NeedSignReview'] @ApproverVerifyType = params['ApproverVerifyType'] @SignBeanTag = params['SignBeanTag'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end unless params['CcInfos'].nil? @CcInfos = [] params['CcInfos'].each do |i| ccinfo_tmp = CcInfo.new ccinfo_tmp.deserialize(i) @CcInfos << ccinfo_tmp end end @CcNotifyType = params['CcNotifyType'] end end # ChannelCreateFlowByFiles返回参数结构体 class ChannelCreateFlowByFilesResponse < TencentCloud::Common::AbstractModel # @param FlowId: 合同签署流程ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type FlowId: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :FlowId, :RequestId def initialize(flowid=nil, requestid=nil) @FlowId = flowid @RequestId = requestid end def deserialize(params) @FlowId = params['FlowId'] @RequestId = params['RequestId'] end end # ChannelCreateFlowGroupByFiles请求参数结构体 class ChannelCreateFlowGroupByFilesRequest < TencentCloud::Common::AbstractModel # @param FlowFileInfos: 每个子合同的发起所需的信息,数量限制2-100 # @type FlowFileInfos: Array # @param FlowGroupName: 合同组名称,长度不超过200个字符 # @type FlowGroupName: String # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param ApproverVerifyType: 签署人校验方式 # VerifyCheck: 人脸识别(默认) # MobileCheck:手机号验证 # 参数说明:若选择后者,未实名的个人签署方查看合同时,无需进行人脸识别实名认证(但签署合同时仍然需要人脸实名),该能力仅适用于个人签署方。 # @type ApproverVerifyType: String # @param Operator: 操作者的信息,此参数不用传 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :FlowFileInfos, :FlowGroupName, :Agent, :ApproverVerifyType, :Operator def initialize(flowfileinfos=nil, flowgroupname=nil, agent=nil, approververifytype=nil, operator=nil) @FlowFileInfos = flowfileinfos @FlowGroupName = flowgroupname @Agent = agent @ApproverVerifyType = approververifytype @Operator = operator end def deserialize(params) unless params['FlowFileInfos'].nil? @FlowFileInfos = [] params['FlowFileInfos'].each do |i| flowfileinfo_tmp = FlowFileInfo.new flowfileinfo_tmp.deserialize(i) @FlowFileInfos << flowfileinfo_tmp end end @FlowGroupName = params['FlowGroupName'] unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @ApproverVerifyType = params['ApproverVerifyType'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # ChannelCreateFlowGroupByFiles返回参数结构体 class ChannelCreateFlowGroupByFilesResponse < TencentCloud::Common::AbstractModel # @param FlowGroupId: 合同组ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type FlowGroupId: String # @param FlowIds: 子合同ID列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FlowIds: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :FlowGroupId, :FlowIds, :RequestId def initialize(flowgroupid=nil, flowids=nil, requestid=nil) @FlowGroupId = flowgroupid @FlowIds = flowids @RequestId = requestid end def deserialize(params) @FlowGroupId = params['FlowGroupId'] @FlowIds = params['FlowIds'] @RequestId = params['RequestId'] end end # ChannelCreateFlowReminds请求参数结构体 class ChannelCreateFlowRemindsRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param FlowIds: 签署流程Id数组,最多100个,超过100不处理 # @type FlowIds: Array attr_accessor :Agent, :FlowIds def initialize(agent=nil, flowids=nil) @Agent = agent @FlowIds = flowids end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @FlowIds = params['FlowIds'] end end # ChannelCreateFlowReminds返回参数结构体 class ChannelCreateFlowRemindsResponse < TencentCloud::Common::AbstractModel # @param RemindFlowRecords: 合同催办详情信息 # @type RemindFlowRecords: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RemindFlowRecords, :RequestId def initialize(remindflowrecords=nil, requestid=nil) @RemindFlowRecords = remindflowrecords @RequestId = requestid end def deserialize(params) unless params['RemindFlowRecords'].nil? @RemindFlowRecords = [] params['RemindFlowRecords'].each do |i| remindflowrecords_tmp = RemindFlowRecords.new remindflowrecords_tmp.deserialize(i) @RemindFlowRecords << remindflowrecords_tmp end end @RequestId = params['RequestId'] end end # ChannelCreateFlowSignReview请求参数结构体 class ChannelCreateFlowSignReviewRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param FlowId: 签署流程编号 # @type FlowId: String # @param ReviewType: 企业内部审核结果 # PASS: 通过 # REJECT: 拒绝 # SIGN_REJECT:拒签(流程结束) # @type ReviewType: String # @param ReviewMessage: 审核原因 # 当ReviewType 是REJECT 时此字段必填,字符串长度不超过200 # @type ReviewMessage: String # @param RecipientId: 签署节点审核时需要指定 # @type RecipientId: String attr_accessor :Agent, :FlowId, :ReviewType, :ReviewMessage, :RecipientId def initialize(agent=nil, flowid=nil, reviewtype=nil, reviewmessage=nil, recipientid=nil) @Agent = agent @FlowId = flowid @ReviewType = reviewtype @ReviewMessage = reviewmessage @RecipientId = recipientid end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @FlowId = params['FlowId'] @ReviewType = params['ReviewType'] @ReviewMessage = params['ReviewMessage'] @RecipientId = params['RecipientId'] end end # ChannelCreateFlowSignReview返回参数结构体 class ChannelCreateFlowSignReviewResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ChannelCreateFlowSignUrl请求参数结构体 class ChannelCreateFlowSignUrlRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param FlowId: 流程编号 # @type FlowId: String # @param FlowApproverInfos: 流程签署人,其中Name和Mobile必传,其他可不传,ApproverType目前只支持PERSON类型的签署人,如果不传默认为该值。还需注意签署人只能有手写签名和时间类型的签署控件,其他类型的填写控件和签署控件暂时都未支持。 # @type FlowApproverInfos: Array # @param Operator: 用户信息,暂未开放 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` # @param Organization: 机构信息,暂未开放 # @type Organization: :class:`Tencentcloud::Essbasic.v20210526.models.OrganizationInfo` attr_accessor :Agent, :FlowId, :FlowApproverInfos, :Operator, :Organization def initialize(agent=nil, flowid=nil, flowapproverinfos=nil, operator=nil, organization=nil) @Agent = agent @FlowId = flowid @FlowApproverInfos = flowapproverinfos @Operator = operator @Organization = organization end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @FlowId = params['FlowId'] unless params['FlowApproverInfos'].nil? @FlowApproverInfos = [] params['FlowApproverInfos'].each do |i| flowapproverinfo_tmp = FlowApproverInfo.new flowapproverinfo_tmp.deserialize(i) @FlowApproverInfos << flowapproverinfo_tmp end end unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end unless params['Organization'].nil? @Organization = OrganizationInfo.new @Organization.deserialize(params['Organization']) end end end # ChannelCreateFlowSignUrl返回参数结构体 class ChannelCreateFlowSignUrlResponse < TencentCloud::Common::AbstractModel # @param FlowApproverUrlInfos: 签署人签署链接信息 # @type FlowApproverUrlInfos: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :FlowApproverUrlInfos, :RequestId def initialize(flowapproverurlinfos=nil, requestid=nil) @FlowApproverUrlInfos = flowapproverurlinfos @RequestId = requestid end def deserialize(params) unless params['FlowApproverUrlInfos'].nil? @FlowApproverUrlInfos = [] params['FlowApproverUrlInfos'].each do |i| flowapproverurlinfo_tmp = FlowApproverUrlInfo.new flowapproverurlinfo_tmp.deserialize(i) @FlowApproverUrlInfos << flowapproverurlinfo_tmp end end @RequestId = params['RequestId'] end end # ChannelCreateMultiFlowSignQRCode请求参数结构体 class ChannelCreateMultiFlowSignQRCodeRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 # 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param TemplateId: 模版ID # @type TemplateId: String # @param FlowName: 签署流程名称,最大长度200个字符。 # @type FlowName: String # @param MaxFlowNum: 最大可发起签署流程份数,默认5份;发起签署流程数量超过此上限后,二维码自动失效。 # @type MaxFlowNum: Integer # @param FlowEffectiveDay: 签署流程有效天数 默认7天 最高设置不超过30天 # @type FlowEffectiveDay: Integer # @param QrEffectiveDay: 二维码有效天数 默认7天 最高设置不超过90天 # @type QrEffectiveDay: Integer # @param Restrictions: 限制二维码用户条件 # @type Restrictions: Array # @param CallbackUrl: 回调地址,最大长度1000个字符 # 不传默认使用第三方应用号配置的回调地址 # 回调时机:用户通过签署二维码发起合同时,企业额度不足导致失败 # @type CallbackUrl: String # @param ApproverRestrictions: 限制二维码用户条件(已弃用) # @type ApproverRestrictions: :class:`Tencentcloud::Essbasic.v20210526.models.ApproverRestriction` # @param Operator: 暂未开放 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :TemplateId, :FlowName, :MaxFlowNum, :FlowEffectiveDay, :QrEffectiveDay, :Restrictions, :CallbackUrl, :ApproverRestrictions, :Operator def initialize(agent=nil, templateid=nil, flowname=nil, maxflownum=nil, floweffectiveday=nil, qreffectiveday=nil, restrictions=nil, callbackurl=nil, approverrestrictions=nil, operator=nil) @Agent = agent @TemplateId = templateid @FlowName = flowname @MaxFlowNum = maxflownum @FlowEffectiveDay = floweffectiveday @QrEffectiveDay = qreffectiveday @Restrictions = restrictions @CallbackUrl = callbackurl @ApproverRestrictions = approverrestrictions @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @TemplateId = params['TemplateId'] @FlowName = params['FlowName'] @MaxFlowNum = params['MaxFlowNum'] @FlowEffectiveDay = params['FlowEffectiveDay'] @QrEffectiveDay = params['QrEffectiveDay'] unless params['Restrictions'].nil? @Restrictions = [] params['Restrictions'].each do |i| approverrestriction_tmp = ApproverRestriction.new approverrestriction_tmp.deserialize(i) @Restrictions << approverrestriction_tmp end end @CallbackUrl = params['CallbackUrl'] unless params['ApproverRestrictions'].nil? @ApproverRestrictions = ApproverRestriction.new @ApproverRestrictions.deserialize(params['ApproverRestrictions']) end unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # ChannelCreateMultiFlowSignQRCode返回参数结构体 class ChannelCreateMultiFlowSignQRCodeResponse < TencentCloud::Common::AbstractModel # @param QrCode: 签署二维码对象 # @type QrCode: :class:`Tencentcloud::Essbasic.v20210526.models.SignQrCode` # @param SignUrls: 签署链接对象 # @type SignUrls: :class:`Tencentcloud::Essbasic.v20210526.models.SignUrl` # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :QrCode, :SignUrls, :RequestId def initialize(qrcode=nil, signurls=nil, requestid=nil) @QrCode = qrcode @SignUrls = signurls @RequestId = requestid end def deserialize(params) unless params['QrCode'].nil? @QrCode = SignQrCode.new @QrCode.deserialize(params['QrCode']) end unless params['SignUrls'].nil? @SignUrls = SignUrl.new @SignUrls.deserialize(params['SignUrls']) end @RequestId = params['RequestId'] end end # ChannelCreatePrepareFlow请求参数结构体 class ChannelCreatePrepareFlowRequest < TencentCloud::Common::AbstractModel # @param ResourceId: 资源id,与ResourceType对应 # @type ResourceId: String # @param ResourceType: 资源类型,1:模板,目前仅支持模板,与ResourceId对应 # @type ResourceType: Integer # @param FlowInfo: 合同流程基础信息 # @type FlowInfo: :class:`Tencentcloud::Essbasic.v20210526.models.BaseFlowInfo` # @param FlowApproverList: 合同签署人信息 # @type FlowApproverList: Array # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param FlowOption: 合同流程配置信息 # @type FlowOption: :class:`Tencentcloud::Essbasic.v20210526.models.CreateFlowOption` # @param FlowId: 该参数不可用,请通过获取 web 可嵌入接口获取合同流程预览 URL # @type FlowId: String # @param NeedPreview: 该参数不可用,请通过获取 web 可嵌入接口获取合同流程预览 URL # @type NeedPreview: Boolean # @param Organization: 企业机构信息,不用传 # @type Organization: :class:`Tencentcloud::Essbasic.v20210526.models.OrganizationInfo` # @param Operator: 操作人(用户)信息,不用传 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :ResourceId, :ResourceType, :FlowInfo, :FlowApproverList, :Agent, :FlowOption, :FlowId, :NeedPreview, :Organization, :Operator def initialize(resourceid=nil, resourcetype=nil, flowinfo=nil, flowapproverlist=nil, agent=nil, flowoption=nil, flowid=nil, needpreview=nil, organization=nil, operator=nil) @ResourceId = resourceid @ResourceType = resourcetype @FlowInfo = flowinfo @FlowApproverList = flowapproverlist @Agent = agent @FlowOption = flowoption @FlowId = flowid @NeedPreview = needpreview @Organization = organization @Operator = operator end def deserialize(params) @ResourceId = params['ResourceId'] @ResourceType = params['ResourceType'] unless params['FlowInfo'].nil? @FlowInfo = BaseFlowInfo.new @FlowInfo.deserialize(params['FlowInfo']) end unless params['FlowApproverList'].nil? @FlowApproverList = [] params['FlowApproverList'].each do |i| commonflowapprover_tmp = CommonFlowApprover.new commonflowapprover_tmp.deserialize(i) @FlowApproverList << commonflowapprover_tmp end end unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end unless params['FlowOption'].nil? @FlowOption = CreateFlowOption.new @FlowOption.deserialize(params['FlowOption']) end @FlowId = params['FlowId'] @NeedPreview = params['NeedPreview'] unless params['Organization'].nil? @Organization = OrganizationInfo.new @Organization.deserialize(params['Organization']) end unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # ChannelCreatePrepareFlow返回参数结构体 class ChannelCreatePrepareFlowResponse < TencentCloud::Common::AbstractModel # @param PrepareFlowUrl: 预发起的合同链接 # @type PrepareFlowUrl: String # @param PreviewFlowUrl: 合同发起后预览链接 # @type PreviewFlowUrl: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :PrepareFlowUrl, :PreviewFlowUrl, :RequestId def initialize(prepareflowurl=nil, previewflowurl=nil, requestid=nil) @PrepareFlowUrl = prepareflowurl @PreviewFlowUrl = previewflowurl @RequestId = requestid end def deserialize(params) @PrepareFlowUrl = params['PrepareFlowUrl'] @PreviewFlowUrl = params['PreviewFlowUrl'] @RequestId = params['RequestId'] end end # ChannelCreateReleaseFlow请求参数结构体 class ChannelCreateReleaseFlowRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param NeedRelievedFlowId: 待解除的流程编号(即原流程的编号) # @type NeedRelievedFlowId: String # @param ReliveInfo: 解除协议内容 # @type ReliveInfo: :class:`Tencentcloud::Essbasic.v20210526.models.RelieveInfo` # @param ReleasedApprovers: 非必须,解除协议的本企业签署人列表,默认使用原流程的签署人列表;当解除协议的签署人与原流程的签署人不能相同时(例如原流程签署人离职了),需要指定本企业的其他签署人来替换原流程中的原签署人,注意需要指明ApproverNumber来代表需要替换哪一个签署人,解除协议的签署人数量不能多于原流程的签署人数量 # @type ReleasedApprovers: Array # @param CallbackUrl: 签署完回调url,最大长度1000个字符 # @type CallbackUrl: String # @param Organization: 暂未开放 # @type Organization: :class:`Tencentcloud::Essbasic.v20210526.models.OrganizationInfo` # @param Operator: 暂未开放 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :NeedRelievedFlowId, :ReliveInfo, :ReleasedApprovers, :CallbackUrl, :Organization, :Operator def initialize(agent=nil, needrelievedflowid=nil, reliveinfo=nil, releasedapprovers=nil, callbackurl=nil, organization=nil, operator=nil) @Agent = agent @NeedRelievedFlowId = needrelievedflowid @ReliveInfo = reliveinfo @ReleasedApprovers = releasedapprovers @CallbackUrl = callbackurl @Organization = organization @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @NeedRelievedFlowId = params['NeedRelievedFlowId'] unless params['ReliveInfo'].nil? @ReliveInfo = RelieveInfo.new @ReliveInfo.deserialize(params['ReliveInfo']) end unless params['ReleasedApprovers'].nil? @ReleasedApprovers = [] params['ReleasedApprovers'].each do |i| releasedapprover_tmp = ReleasedApprover.new releasedapprover_tmp.deserialize(i) @ReleasedApprovers << releasedapprover_tmp end end @CallbackUrl = params['CallbackUrl'] unless params['Organization'].nil? @Organization = OrganizationInfo.new @Organization.deserialize(params['Organization']) end unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # ChannelCreateReleaseFlow返回参数结构体 class ChannelCreateReleaseFlowResponse < TencentCloud::Common::AbstractModel # @param FlowId: 解除协议流程编号 # @type FlowId: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :FlowId, :RequestId def initialize(flowid=nil, requestid=nil) @FlowId = flowid @RequestId = requestid end def deserialize(params) @FlowId = params['FlowId'] @RequestId = params['RequestId'] end end # ChannelCreateSealPolicy请求参数结构体 class ChannelCreateSealPolicyRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param SealId: 指定印章ID # @type SealId: String # @param UserIds: 指定待授权的用户ID数组 # @type UserIds: Array # @param Organization: 企业机构信息,不用传 # @type Organization: :class:`Tencentcloud::Essbasic.v20210526.models.OrganizationInfo` # @param Operator: 操作人(用户)信息,不用传 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :SealId, :UserIds, :Organization, :Operator def initialize(agent=nil, sealid=nil, userids=nil, organization=nil, operator=nil) @Agent = agent @SealId = sealid @UserIds = userids @Organization = organization @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @SealId = params['SealId'] @UserIds = params['UserIds'] unless params['Organization'].nil? @Organization = OrganizationInfo.new @Organization.deserialize(params['Organization']) end unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # ChannelCreateSealPolicy返回参数结构体 class ChannelCreateSealPolicyResponse < TencentCloud::Common::AbstractModel # @param UserIds: 最终授权成功的用户ID数组。其他的跳过的是已经授权了的 # @type UserIds: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :UserIds, :RequestId def initialize(userids=nil, requestid=nil) @UserIds = userids @RequestId = requestid end def deserialize(params) @UserIds = params['UserIds'] @RequestId = params['RequestId'] end end # ChannelCreateUserRoles请求参数结构体 class ChannelCreateUserRolesRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param UserIds: 绑定角色的员工id列表 # @type UserIds: Array # @param RoleIds: 绑定角色的角色id列表 # @type RoleIds: Array # @param Operator: 操作者信息 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :UserIds, :RoleIds, :Operator def initialize(agent=nil, userids=nil, roleids=nil, operator=nil) @Agent = agent @UserIds = userids @RoleIds = roleids @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @UserIds = params['UserIds'] @RoleIds = params['RoleIds'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # ChannelCreateUserRoles返回参数结构体 class ChannelCreateUserRolesResponse < TencentCloud::Common::AbstractModel # @param FailedCreateRoleData: 绑定失败的用户角色列表 # @type FailedCreateRoleData: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :FailedCreateRoleData, :RequestId def initialize(failedcreateroledata=nil, requestid=nil) @FailedCreateRoleData = failedcreateroledata @RequestId = requestid end def deserialize(params) unless params['FailedCreateRoleData'].nil? @FailedCreateRoleData = [] params['FailedCreateRoleData'].each do |i| failedcreateroledata_tmp = FailedCreateRoleData.new failedcreateroledata_tmp.deserialize(i) @FailedCreateRoleData << failedcreateroledata_tmp end end @RequestId = params['RequestId'] end end # ChannelDeleteRoleUsers请求参数结构体 class ChannelDeleteRoleUsersRequest < TencentCloud::Common::AbstractModel # @param Agent: 代理信息 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param RoleId: 角色Id # @type RoleId: String # @param UserIds: 用户列表 # @type UserIds: Array # @param Operator: 操作人信息 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :RoleId, :UserIds, :Operator def initialize(agent=nil, roleid=nil, userids=nil, operator=nil) @Agent = agent @RoleId = roleid @UserIds = userids @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @RoleId = params['RoleId'] @UserIds = params['UserIds'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # ChannelDeleteRoleUsers返回参数结构体 class ChannelDeleteRoleUsersResponse < TencentCloud::Common::AbstractModel # @param RoleId: 角色id # @type RoleId: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RoleId, :RequestId def initialize(roleid=nil, requestid=nil) @RoleId = roleid @RequestId = requestid end def deserialize(params) @RoleId = params['RoleId'] @RequestId = params['RequestId'] end end # ChannelDeleteSealPolicies请求参数结构体 class ChannelDeleteSealPoliciesRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param SealId: 指定印章ID # @type SealId: String # @param UserIds: 指定用户ID数组 # @type UserIds: Array # @param Organization: 组织机构信息,不用传 # @type Organization: :class:`Tencentcloud::Essbasic.v20210526.models.OrganizationInfo` # @param Operator: 操作人(用户)信息,不用传 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :SealId, :UserIds, :Organization, :Operator def initialize(agent=nil, sealid=nil, userids=nil, organization=nil, operator=nil) @Agent = agent @SealId = sealid @UserIds = userids @Organization = organization @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @SealId = params['SealId'] @UserIds = params['UserIds'] unless params['Organization'].nil? @Organization = OrganizationInfo.new @Organization.deserialize(params['Organization']) end unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # ChannelDeleteSealPolicies返回参数结构体 class ChannelDeleteSealPoliciesResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ChannelDescribeEmployees请求参数结构体 class ChannelDescribeEmployeesRequest < TencentCloud::Common::AbstractModel # @param Limit: 返回最大数量,最大为20 # @type Limit: Integer # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param Filters: 查询过滤实名用户,Key为Status,Values为["IsVerified"] # 根据第三方系统openId过滤查询员工时,Key为StaffOpenId,Values为["OpenId","OpenId",...] # 查询离职员工时,Key为Status,Values为["QuiteJob"] # @type Filters: Array # @param Offset: 偏移量,默认为0,最大为20000 # @type Offset: Integer # @param Operator: 暂未开放 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Limit, :Agent, :Filters, :Offset, :Operator def initialize(limit=nil, agent=nil, filters=nil, offset=nil, operator=nil) @Limit = limit @Agent = agent @Filters = filters @Offset = offset @Operator = operator end def deserialize(params) @Limit = params['Limit'] unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| filter_tmp = Filter.new filter_tmp.deserialize(i) @Filters << filter_tmp end end @Offset = params['Offset'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # ChannelDescribeEmployees返回参数结构体 class ChannelDescribeEmployeesResponse < TencentCloud::Common::AbstractModel # @param Employees: 员工数据列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Employees: Array # @param Offset: 偏移量,默认为0,最大为20000 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Offset: Integer # @param Limit: 返回最大数量,最大为20 # @type Limit: Integer # @param TotalCount: 符合条件的员工数量 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Employees, :Offset, :Limit, :TotalCount, :RequestId def initialize(employees=nil, offset=nil, limit=nil, totalcount=nil, requestid=nil) @Employees = employees @Offset = offset @Limit = limit @TotalCount = totalcount @RequestId = requestid end def deserialize(params) unless params['Employees'].nil? @Employees = [] params['Employees'].each do |i| staff_tmp = Staff.new staff_tmp.deserialize(i) @Employees << staff_tmp end end @Offset = params['Offset'] @Limit = params['Limit'] @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # ChannelDescribeOrganizationSeals请求参数结构体 class ChannelDescribeOrganizationSealsRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param Limit: 返回最大数量,最大为100 # @type Limit: Integer # @param Offset: 偏移量,默认为0,最大为20000 # @type Offset: Integer # @param InfoType: 查询信息类型,为1时返回授权用户,为其他值时不返回 # @type InfoType: Integer # @param SealId: 印章id(没有输入返回所有) # @type SealId: String # @param SealTypes: 印章类型列表(都是组织机构印章)。 # 为空时查询所有类型的印章。 # 目前支持以下类型: # OFFICIAL:企业公章; # CONTRACT:合同专用章; # ORGANIZATION_SEAL:企业印章(图片上传创建); # LEGAL_PERSON_SEAL:法定代表人章 # @type SealTypes: Array attr_accessor :Agent, :Limit, :Offset, :InfoType, :SealId, :SealTypes def initialize(agent=nil, limit=nil, offset=nil, infotype=nil, sealid=nil, sealtypes=nil) @Agent = agent @Limit = limit @Offset = offset @InfoType = infotype @SealId = sealid @SealTypes = sealtypes end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @Limit = params['Limit'] @Offset = params['Offset'] @InfoType = params['InfoType'] @SealId = params['SealId'] @SealTypes = params['SealTypes'] end end # ChannelDescribeOrganizationSeals返回参数结构体 class ChannelDescribeOrganizationSealsResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 在设置了SealId时返回0或1,没有设置时返回公司的总印章数量,可能比返回的印章数组数量多 # @type TotalCount: Integer # @param Seals: 查询到的印章结果数组 # @type Seals: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Seals, :RequestId def initialize(totalcount=nil, seals=nil, requestid=nil) @TotalCount = totalcount @Seals = seals @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Seals'].nil? @Seals = [] params['Seals'].each do |i| occupiedseal_tmp = OccupiedSeal.new occupiedseal_tmp.deserialize(i) @Seals << occupiedseal_tmp end end @RequestId = params['RequestId'] end end # ChannelDescribeRoles请求参数结构体 class ChannelDescribeRolesRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param Offset: 查询起始偏移,最大2000 # @type Offset: Integer # @param Limit: 查询数量,最大200 # @type Limit: String # @param Operator: 操作人信息 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` # @param Filters: 查询的关键字段: # Key:"RoleType",Vales:["1"]查询系统角色,Values:["2]查询自定义角色 # Key:"RoleStatus",Values:["1"]查询启用角色,Values:["2"]查询禁用角色 # @type Filters: Array attr_accessor :Agent, :Offset, :Limit, :Operator, :Filters def initialize(agent=nil, offset=nil, limit=nil, operator=nil, filters=nil) @Agent = agent @Offset = offset @Limit = limit @Operator = operator @Filters = filters end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @Offset = params['Offset'] @Limit = params['Limit'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| filter_tmp = Filter.new filter_tmp.deserialize(i) @Filters << filter_tmp end end end end # ChannelDescribeRoles返回参数结构体 class ChannelDescribeRolesResponse < TencentCloud::Common::AbstractModel # @param Offset: 页面偏移量,最大2000 # @type Offset: Integer # @param Limit: 查询数量,最大200 # @type Limit: Integer # @param TotalCount: 查询角色的总数量 # @type TotalCount: Integer # @param ChannelRoles: 角色信息 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ChannelRoles: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Offset, :Limit, :TotalCount, :ChannelRoles, :RequestId def initialize(offset=nil, limit=nil, totalcount=nil, channelroles=nil, requestid=nil) @Offset = offset @Limit = limit @TotalCount = totalcount @ChannelRoles = channelroles @RequestId = requestid end def deserialize(params) @Offset = params['Offset'] @Limit = params['Limit'] @TotalCount = params['TotalCount'] unless params['ChannelRoles'].nil? @ChannelRoles = [] params['ChannelRoles'].each do |i| channelrole_tmp = ChannelRole.new channelrole_tmp.deserialize(i) @ChannelRoles << channelrole_tmp end end @RequestId = params['RequestId'] end end # ChannelGetTaskResultApi请求参数结构体 class ChannelGetTaskResultApiRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param TaskId: 任务Id,通过ChannelCreateConvertTaskApi接口获得 # @type TaskId: String # @param Operator: 操作者的信息,不用传 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` # @param Organization: 暂未开放 # @type Organization: :class:`Tencentcloud::Essbasic.v20210526.models.OrganizationInfo` attr_accessor :Agent, :TaskId, :Operator, :Organization def initialize(agent=nil, taskid=nil, operator=nil, organization=nil) @Agent = agent @TaskId = taskid @Operator = operator @Organization = organization end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @TaskId = params['TaskId'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end unless params['Organization'].nil? @Organization = OrganizationInfo.new @Organization.deserialize(params['Organization']) end end end # ChannelGetTaskResultApi返回参数结构体 class ChannelGetTaskResultApiResponse < TencentCloud::Common::AbstractModel # @param TaskId: 任务Id # @type TaskId: String # @param TaskStatus: 任务状态,需要关注的状态 # 0 :NeedTranform - 任务已提交 # 4 :Processing - 文档转换中 # 8 :TaskEnd - 任务处理完成 # -2 :DownloadFailed - 下载失败 # -6 :ProcessFailed - 转换失败 # -13:ProcessTimeout - 转换文件超时 # @type TaskStatus: Integer # @param TaskMessage: 状态描述,需要关注的状态 # NeedTranform - 任务已提交 # Processing - 文档转换中 # TaskEnd - 任务处理完成 # DownloadFailed - 下载失败 # ProcessFailed - 转换失败 # ProcessTimeout - 转换文件超时 # @type TaskMessage: String # @param ResourceId: 资源Id,也是FileId,用于文件发起使用 # @type ResourceId: String # @param PreviewUrl: 预览文件Url,有效期30分钟 # 注意:此字段可能返回 null,表示取不到有效值。 # @type PreviewUrl: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TaskId, :TaskStatus, :TaskMessage, :ResourceId, :PreviewUrl, :RequestId def initialize(taskid=nil, taskstatus=nil, taskmessage=nil, resourceid=nil, previewurl=nil, requestid=nil) @TaskId = taskid @TaskStatus = taskstatus @TaskMessage = taskmessage @ResourceId = resourceid @PreviewUrl = previewurl @RequestId = requestid end def deserialize(params) @TaskId = params['TaskId'] @TaskStatus = params['TaskStatus'] @TaskMessage = params['TaskMessage'] @ResourceId = params['ResourceId'] @PreviewUrl = params['PreviewUrl'] @RequestId = params['RequestId'] end end # 渠道角色信息 class ChannelRole < TencentCloud::Common::AbstractModel # @param RoleId: 角色id # 注意:此字段可能返回 null,表示取不到有效值。 # @type RoleId: String # @param RoleName: 角色名 # 注意:此字段可能返回 null,表示取不到有效值。 # @type RoleName: String # @param RoleStatus: 角色状态:1-启用;2-禁用 # 注意:此字段可能返回 null,表示取不到有效值。 # @type RoleStatus: Integer attr_accessor :RoleId, :RoleName, :RoleStatus def initialize(roleid=nil, rolename=nil, rolestatus=nil) @RoleId = roleid @RoleName = rolename @RoleStatus = rolestatus end def deserialize(params) @RoleId = params['RoleId'] @RoleName = params['RoleName'] @RoleStatus = params['RoleStatus'] end end # ChannelUpdateSealStatus请求参数结构体 class ChannelUpdateSealStatusRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param Status: 操作的印章状态,DISABLE-停用印章 # @type Status: String # @param SealId: 印章ID # @type SealId: String # @param Operator: 操作者的信息 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` # @param Reason: 更新印章状态原因说明 # @type Reason: String attr_accessor :Agent, :Status, :SealId, :Operator, :Reason def initialize(agent=nil, status=nil, sealid=nil, operator=nil, reason=nil) @Agent = agent @Status = status @SealId = sealid @Operator = operator @Reason = reason end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @Status = params['Status'] @SealId = params['SealId'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end @Reason = params['Reason'] end end # ChannelUpdateSealStatus返回参数结构体 class ChannelUpdateSealStatusResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # ChannelVerifyPdf请求参数结构体 class ChannelVerifyPdfRequest < TencentCloud::Common::AbstractModel # @param FlowId: 流程ID # @type FlowId: String # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param Operator: 暂未开放 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :FlowId, :Agent, :Operator def initialize(flowid=nil, agent=nil, operator=nil) @FlowId = flowid @Agent = agent @Operator = operator end def deserialize(params) @FlowId = params['FlowId'] unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # ChannelVerifyPdf返回参数结构体 class ChannelVerifyPdfResponse < TencentCloud::Common::AbstractModel # @param VerifyResult: 验签结果,1-文件未被篡改,全部签名在腾讯电子签完成; 2-文件未被篡改,部分签名在腾讯电子签完成;3-文件被篡改;4-异常:文件内没有签名域;5-异常:文件签名格式错误 # @type VerifyResult: Integer # @param PdfVerifyResults: 验签结果详情,内部状态1-验签成功,在电子签签署;2-验签成功,在其他平台签署;3-验签失败;4-pdf文件没有签名域;5-文件签名格式错误 # @type PdfVerifyResults: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :VerifyResult, :PdfVerifyResults, :RequestId def initialize(verifyresult=nil, pdfverifyresults=nil, requestid=nil) @VerifyResult = verifyresult @PdfVerifyResults = pdfverifyresults @RequestId = requestid end def deserialize(params) @VerifyResult = params['VerifyResult'] unless params['PdfVerifyResults'].nil? @PdfVerifyResults = [] params['PdfVerifyResults'].each do |i| pdfverifyresult_tmp = PdfVerifyResult.new pdfverifyresult_tmp.deserialize(i) @PdfVerifyResults << pdfverifyresult_tmp end end @RequestId = params['RequestId'] end end # 签署人配置信息 class CommonApproverOption < TencentCloud::Common::AbstractModel # @param CanEditApprover: 是否允许修改签署人信息 # @type CanEditApprover: Boolean attr_accessor :CanEditApprover def initialize(caneditapprover=nil) @CanEditApprover = caneditapprover end def deserialize(params) @CanEditApprover = params['CanEditApprover'] end end # 通用签署人信息 class CommonFlowApprover < TencentCloud::Common::AbstractModel # @param NotChannelOrganization: 指定当前签署人为第三方应用集成子客,默认false:当前签署人为第三方应用集成子客,true:当前签署人为saas企业用户 # @type NotChannelOrganization: Boolean # @param ApproverType: 签署人类型,目前支持:0-企业签署人,1-个人签署人,3-企业静默签署人 # @type ApproverType: Integer # @param OrganizationId: 企业id # @type OrganizationId: String # @param OrganizationOpenId: 企业OpenId,第三方应用集成非静默签子客企业签署人发起合同毕传 # @type OrganizationOpenId: String # @param OrganizationName: 企业名称,第三方应用集成非静默签子客企业签署人必传,saas企业签署人必传 # @type OrganizationName: String # @param UserId: 用户id # @type UserId: String # @param OpenId: 用户openId,第三方应用集成非静默签子客企业签署人必传 # @type OpenId: String # @param ApproverName: 签署人名称,saas企业签署人,个人签署人必传 # @type ApproverName: String # @param ApproverMobile: 签署人手机号,saas企业签署人,个人签署人必传 # @type ApproverMobile: String # @param RecipientId: 签署人Id,使用模板发起是,对应模板配置中的签署人RecipientId # 注意:模板发起时该字段必填 # @type RecipientId: String # @param PreReadTime: 签署前置条件:阅读时长限制,不传默认10s,最大300s,最小3s # @type PreReadTime: Integer # @param IsFullText: 签署前置条件:阅读全文限制 # @type IsFullText: Boolean # @param NotifyType: 通知类型:SMS(短信) NONE(不做通知), 不传 默认SMS # @type NotifyType: String # @param ApproverOption: 签署人配置 # @type ApproverOption: :class:`Tencentcloud::Essbasic.v20210526.models.CommonApproverOption` attr_accessor :NotChannelOrganization, :ApproverType, :OrganizationId, :OrganizationOpenId, :OrganizationName, :UserId, :OpenId, :ApproverName, :ApproverMobile, :RecipientId, :PreReadTime, :IsFullText, :NotifyType, :ApproverOption def initialize(notchannelorganization=nil, approvertype=nil, organizationid=nil, organizationopenid=nil, organizationname=nil, userid=nil, openid=nil, approvername=nil, approvermobile=nil, recipientid=nil, prereadtime=nil, isfulltext=nil, notifytype=nil, approveroption=nil) @NotChannelOrganization = notchannelorganization @ApproverType = approvertype @OrganizationId = organizationid @OrganizationOpenId = organizationopenid @OrganizationName = organizationname @UserId = userid @OpenId = openid @ApproverName = approvername @ApproverMobile = approvermobile @RecipientId = recipientid @PreReadTime = prereadtime @IsFullText = isfulltext @NotifyType = notifytype @ApproverOption = approveroption end def deserialize(params) @NotChannelOrganization = params['NotChannelOrganization'] @ApproverType = params['ApproverType'] @OrganizationId = params['OrganizationId'] @OrganizationOpenId = params['OrganizationOpenId'] @OrganizationName = params['OrganizationName'] @UserId = params['UserId'] @OpenId = params['OpenId'] @ApproverName = params['ApproverName'] @ApproverMobile = params['ApproverMobile'] @RecipientId = params['RecipientId'] @PreReadTime = params['PreReadTime'] @IsFullText = params['IsFullText'] @NotifyType = params['NotifyType'] unless params['ApproverOption'].nil? @ApproverOption = CommonApproverOption.new @ApproverOption.deserialize(params['ApproverOption']) end end end # 此结构体 (Component) 用于描述控件属性。 # 在通过文件发起合同时,对应的component有三种定位方式 # 1. 绝对定位方式 # 2. 表单域(FIELD)定位方式 # 3. 关键字(KEYWORD)定位方式 # 可以参考官网说明 # https://cloud.tencent.com/document/product/1323/78346#component-.E4.B8.89.E7.A7.8D.E5.AE.9A.E4.BD.8D.E6.96.B9.E5.BC.8F.E8.AF.B4.E6.98.8E class Component < TencentCloud::Common::AbstractModel # @param ComponentId: 控件编号 # CreateFlowByTemplates发起合同时优先以ComponentId(不为空)填充;否则以ComponentName填充 # 注: # 当GenerateMode=3时,通过"^"来决定是否使用关键字整词匹配能力。 # 例: # 当GenerateMode=3时,如果传入关键字"^甲方签署^",则会在PDF文件中有且仅有"甲方签署"关键字的地方进行对应操作。 # 如传入的关键字为"甲方签署",则PDF文件中每个出现关键字的位置都会执行相应操作。 # 创建控件时,此值为空 # 查询时返回完整结构 # @type ComponentId: String # @param ComponentType: 如果是Component控件类型,则可选的字段为: # TEXT - 普通文本控件,输入文本字符串; # MULTI_LINE_TEXT - 多行文本控件,输入文本字符串; # CHECK_BOX - 勾选框控件,若选中填写ComponentValue 填写 true或者 false 字符串; # FILL_IMAGE - 图片控件,ComponentValue 填写图片的资源 ID; # DYNAMIC_TABLE - 动态表格控件; # ATTACHMENT - 附件控件,ComponentValue 填写福建图片的资源 ID列表,以逗号分割; # SELECTOR - 选择器控件,ComponentValue填写选择的字符串内容; # DATE - 日期控件;默认是格式化为xxxx年xx月xx日字符串; # DISTRICT - 省市区行政区划控件,ComponentValue填写省市区行政区划字符串内容; # 如果是SignComponent控件类型,则可选的字段为 # SIGN_SEAL - 签署印章控件; # SIGN_DATE - 签署日期控件; # SIGN_SIGNATURE - 用户签名控件; # SIGN_PERSONAL_SEAL - 个人签署印章控件(使用文件发起暂不支持此类型); # SIGN_PAGING_SEAL - 骑缝章;若文件发起,需要对应填充ComponentPosY、ComponentWidth、ComponentHeight # SIGN_OPINION - 签署意见控件,用户需要根据配置的签署意见内容,完成对意见内容的确认; # SIGN_LEGAL_PERSON_SEAL - 企业法定代表人控件。 # 表单域的控件不能作为印章和签名控件 # @type ComponentType: String # @param ComponentName: 控件简称,不能超过30个字符 # @type ComponentName: String # @param ComponentRequired: 定义控件是否为必填项,默认为false # @type ComponentRequired: Boolean # @param ComponentRecipientId: 控件关联的签署方id # @type ComponentRecipientId: String # @param FileIndex: 控件所属文件的序号 (文档中文件的排列序号,从0开始) # @type FileIndex: Integer # @param GenerateMode: 控件生成的方式: # NORMAL - 普通控件 # FIELD - 表单域 # KEYWORD - 关键字 # @type GenerateMode: String # @param ComponentWidth: 参数控件宽度,默认100,单位px # 表单域和关键字转换控件不用填 # @type ComponentWidth: Float # @param ComponentHeight: 参数控件高度,默认100,单位px # 表单域和关键字转换控件不用填 # @type ComponentHeight: Float # @param ComponentPage: 参数控件所在页码,从1开始 # @type ComponentPage: Integer # @param ComponentPosX: 参数控件X位置,单位px # @type ComponentPosX: Float # @param ComponentPosY: 参数控件Y位置,单位px # @type ComponentPosY: Float # @param ComponentExtra: 参数控件样式,json格式表述 # 不同类型的控件会有部分非通用参数 # TEXT/MULTI_LINE_TEXT控件可以指定 # 1 Font:目前只支持黑体、宋体 # 2 FontSize: 范围12-72 # 3 FontAlign: Left/Right/Center,左对齐/居中/右对齐 # 例如:{"FontSize":12} # ComponentType为FILL_IMAGE时,支持以下参数: # NotMakeImageCenter:bool。是否设置图片居中。false:居中(默认)。 true: 不居中 # FillMethod: int. 填充方式。0-铺满(默认);1-等比例缩放 # ComponentType为SIGN_SIGNATURE类型可以控制签署方式 # {“ComponentTypeLimit”: [“xxx”]} # xxx可以为: # HANDWRITE – 手写签名 # BORDERLESS_ESIGN – 自动生成无边框腾讯体 # OCR_ESIGN -- AI智能识别手写签名 # ESIGN -- 个人印章类型 # 如:{“ComponentTypeLimit”: [“BORDERLESS_ESIGN”]} # @type ComponentExtra: String # @param ComponentValue: 控件填充vaule,ComponentType和传入值类型对应关系: # TEXT - 文本内容 # MULTI_LINE_TEXT - 文本内容 # CHECK_BOX - true/false # FILL_IMAGE、ATTACHMENT - 附件的FileId,需要通过UploadFiles接口上传获取 # SELECTOR - 选项值 # DATE - 默认是格式化为xxxx年xx月xx日 # DYNAMIC_TABLE - 传入json格式的表格内容,具体见数据结构FlowInfo:https://cloud.tencent.com/document/api/1420/61525#FlowInfo # SIGN_SEAL - 印章ID # SIGN_PAGING_SEAL - 可以指定印章ID # 控件值约束说明: # 企业全称控件: # 约束:企业名称中文字符中文括号 # 检查正则表达式:/^[\u3400-\u4dbf\u4e00-\u9fa5()]+$/ # 统一社会信用代码控件: # 检查正则表达式:/^[A-Z0-9]{1,18}$/ # 法人名称控件: # 约束:最大50个字符,2到25个汉字或者1到50个字母 # 检查正则表达式:/^([\u3400-\u4dbf\u4e00-\u9fa5.·]{2,25}|[a-zA-Z·,\s-]{1,50})$/ # 签署意见控件: # 约束:签署意见最大长度为50字符 # 签署人手机号控件: # 约束:国内手机号 13,14,15,16,17,18,19号段长度11位 # 签署人身份证控件: # 约束:合法的身份证号码检查 # 控件名称: # 约束:控件名称最大长度为20字符 # 单行文本控件: # 约束:只允许输入中文,英文,数字,中英文标点符号 # 多行文本控件: # 约束:只允许输入中文,英文,数字,中英文标点符号 # 勾选框控件: # 约束:选择填字符串true,不选填字符串false # 选择器控件: # 约束:同单行文本控件约束,填写选择值中的字符串 # 数字控件: # 约束:请输入有效的数字(可带小数点) # 检查正则表达式:/^(-|\+)?\d+(\.\d+)?$/ # 日期控件: # 约束:格式:yyyy年mm月dd日 # 附件控件: # 约束:JPG或PNG图片,上传数量限制,1到6个,最大6个附件 # 图片控件: # 约束:JPG或PNG图片,填写上传的图片资源ID # 邮箱控件: # 约束:请输入有效的邮箱地址, w3c标准 # 检查正则表达式:/^([A-Za-z0-9_\-.!#$%&])+@([A-Za-z0-9_\-.])+\.([A-Za-z]{2,4})$/ # 参考:https://emailregex.com/ # 地址控件: # 同单行文本控件约束 # 省市区控件: # 同单行文本控件约束 # 性别控件: # 同单行文本控件约束,填写选择值中的字符串 # 学历控件: # 同单行文本控件约束,填写选择值中的字符串 # @type ComponentValue: String # @param ComponentDateFontSize: 日期签署控件的字号,默认为 12 # 签署区日期控件会转换成图片格式并带存证,需要通过字体决定图片大小 # @type ComponentDateFontSize: Integer # @param DocumentId: 控件所属文档的Id, 模块相关接口为空值 # @type DocumentId: String # @param ComponentDescription: 控件描述,不能超过30个字符 # @type ComponentDescription: String # @param OffsetX: 指定关键字时横坐标偏移量,单位pt # @type OffsetX: Float # @param OffsetY: 指定关键字时纵坐标偏移量,单位pt # @type OffsetY: Float # @param ChannelComponentId: 平台企业控件ID。 # 如果不为空,属于平台企业预设控件; # @type ChannelComponentId: String # @param KeywordOrder: 指定关键字排序规则,Positive-正序,Reverse-倒序。传入Positive时会根据关键字在PDF文件内的顺序进行排列。在指定KeywordIndexes时,0代表在PDF内查找内容时,查找到的第一个关键字。 # 传入Reverse时会根据关键字在PDF文件内的反序进行排列。在指定KeywordIndexes时,0代表在PDF内查找内容时,查找到的最后一个关键字。 # @type KeywordOrder: String # @param KeywordPage: 指定关键字页码,可选参数,指定页码后,将只在指定的页码内查找关键字,非该页码的关键字将不会查询出来 # @type KeywordPage: Integer # @param RelativeLocation: 关键字位置模式,Middle-居中,Below-正下方,Right-正右方,LowerRight-右上角,UpperRight-右下角。示例:如果设置Middle的关键字盖章,则印章的中心会和关键字的中心重合,如果设置Below,则印章在关键字的正下方 # @type RelativeLocation: String # @param KeywordIndexes: 关键字索引,可选参数,如果一个关键字在PDF文件中存在多个,可以通过关键字索引指定使用第几个关键字作为最后的结果,可指定多个索引。示例[0,2],说明使用PDF文件内第1个和第3个关键字位置。 # @type KeywordIndexes: Array attr_accessor :ComponentId, :ComponentType, :ComponentName, :ComponentRequired, :ComponentRecipientId, :FileIndex, :GenerateMode, :ComponentWidth, :ComponentHeight, :ComponentPage, :ComponentPosX, :ComponentPosY, :ComponentExtra, :ComponentValue, :ComponentDateFontSize, :DocumentId, :ComponentDescription, :OffsetX, :OffsetY, :ChannelComponentId, :KeywordOrder, :KeywordPage, :RelativeLocation, :KeywordIndexes def initialize(componentid=nil, componenttype=nil, componentname=nil, componentrequired=nil, componentrecipientid=nil, fileindex=nil, generatemode=nil, componentwidth=nil, componentheight=nil, componentpage=nil, componentposx=nil, componentposy=nil, componentextra=nil, componentvalue=nil, componentdatefontsize=nil, documentid=nil, componentdescription=nil, offsetx=nil, offsety=nil, channelcomponentid=nil, keywordorder=nil, keywordpage=nil, relativelocation=nil, keywordindexes=nil) @ComponentId = componentid @ComponentType = componenttype @ComponentName = componentname @ComponentRequired = componentrequired @ComponentRecipientId = componentrecipientid @FileIndex = fileindex @GenerateMode = generatemode @ComponentWidth = componentwidth @ComponentHeight = componentheight @ComponentPage = componentpage @ComponentPosX = componentposx @ComponentPosY = componentposy @ComponentExtra = componentextra @ComponentValue = componentvalue @ComponentDateFontSize = componentdatefontsize @DocumentId = documentid @ComponentDescription = componentdescription @OffsetX = offsetx @OffsetY = offsety @ChannelComponentId = channelcomponentid @KeywordOrder = keywordorder @KeywordPage = keywordpage @RelativeLocation = relativelocation @KeywordIndexes = keywordindexes end def deserialize(params) @ComponentId = params['ComponentId'] @ComponentType = params['ComponentType'] @ComponentName = params['ComponentName'] @ComponentRequired = params['ComponentRequired'] @ComponentRecipientId = params['ComponentRecipientId'] @FileIndex = params['FileIndex'] @GenerateMode = params['GenerateMode'] @ComponentWidth = params['ComponentWidth'] @ComponentHeight = params['ComponentHeight'] @ComponentPage = params['ComponentPage'] @ComponentPosX = params['ComponentPosX'] @ComponentPosY = params['ComponentPosY'] @ComponentExtra = params['ComponentExtra'] @ComponentValue = params['ComponentValue'] @ComponentDateFontSize = params['ComponentDateFontSize'] @DocumentId = params['DocumentId'] @ComponentDescription = params['ComponentDescription'] @OffsetX = params['OffsetX'] @OffsetY = params['OffsetY'] @ChannelComponentId = params['ChannelComponentId'] @KeywordOrder = params['KeywordOrder'] @KeywordPage = params['KeywordPage'] @RelativeLocation = params['RelativeLocation'] @KeywordIndexes = params['KeywordIndexes'] end end # CreateChannelFlowEvidenceReport请求参数结构体 class CreateChannelFlowEvidenceReportRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param FlowId: 签署流程编号 # @type FlowId: String # @param Operator: 暂未开放 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :FlowId, :Operator def initialize(agent=nil, flowid=nil, operator=nil) @Agent = agent @FlowId = flowid @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @FlowId = params['FlowId'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # CreateChannelFlowEvidenceReport返回参数结构体 class CreateChannelFlowEvidenceReportResponse < TencentCloud::Common::AbstractModel # @param ReportId: 出证报告 ID,用于查询出证报告接口DescribeChannelFlowEvidenceReport时用到 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ReportId: String # @param Status: 执行中:EvidenceStatusExecuting # 成功:EvidenceStatusSuccess # 失败:EvidenceStatusFailed # @type Status: String # @param ReportUrl: 废除,字段无效 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ReportUrl: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :ReportId, :Status, :ReportUrl, :RequestId def initialize(reportid=nil, status=nil, reporturl=nil, requestid=nil) @ReportId = reportid @Status = status @ReportUrl = reporturl @RequestId = requestid end def deserialize(params) @ReportId = params['ReportId'] @Status = params['Status'] @ReportUrl = params['ReportUrl'] @RequestId = params['RequestId'] end end # CreateConsoleLoginUrl请求参数结构体 class CreateConsoleLoginUrlRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用信息 # 此接口Agent.AppId、Agent.ProxyOrganizationOpenId 和 Agent. ProxyOperator.OpenId 必填 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param ProxyOrganizationName: 子客企业名称,最大长度64个字符 # @type ProxyOrganizationName: String # @param ProxyOperatorName: 子客企业经办人的姓名,最大长度50个字符 # @type ProxyOperatorName: String # @param Module: PC控制台指定模块,文件/合同管理:"DOCUMENT",模板管理:"TEMPLATE",印章管理:"SEAL",组织架构/人员:"OPERATOR",空字符串:"账号信息"。 EndPoint为"CHANNEL"/"APP"只支持"SEAL"-印章管理 # @type Module: String # @param ModuleId: 控制台指定模块Id # @type ModuleId: String # @param UniformSocialCreditCode: 子客企业统一社会信用代码,最大长度200个字符 # @type UniformSocialCreditCode: String # @param MenuStatus: 是否展示左侧菜单栏 是:ENABLE(默认) 否:DISABLE # @type MenuStatus: String # @param Endpoint: 链接跳转类型:"PC"-PC控制台,“CHANNEL”-H5跳转到电子签小程序;“APP”-第三方APP或小程序跳转电子签小程序,默认为PC控制台 # @type Endpoint: String # @param AutoJumpBackEvent: 触发自动跳转事件,仅对App类型有效,"VERIFIED":企业认证完成/员工认证完成后跳回原App/小程序 # @type AutoJumpBackEvent: String # @param AuthorizationTypes: 支持的授权方式,授权方式: "1" - 上传授权书认证 "2" - 法定代表人认证 # @type AuthorizationTypes: Array # @param Operator: 暂未开放 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :ProxyOrganizationName, :ProxyOperatorName, :Module, :ModuleId, :UniformSocialCreditCode, :MenuStatus, :Endpoint, :AutoJumpBackEvent, :AuthorizationTypes, :Operator def initialize(agent=nil, proxyorganizationname=nil, proxyoperatorname=nil, _module=nil, moduleid=nil, uniformsocialcreditcode=nil, menustatus=nil, endpoint=nil, autojumpbackevent=nil, authorizationtypes=nil, operator=nil) @Agent = agent @ProxyOrganizationName = proxyorganizationname @ProxyOperatorName = proxyoperatorname @Module = _module @ModuleId = moduleid @UniformSocialCreditCode = uniformsocialcreditcode @MenuStatus = menustatus @Endpoint = endpoint @AutoJumpBackEvent = autojumpbackevent @AuthorizationTypes = authorizationtypes @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @ProxyOrganizationName = params['ProxyOrganizationName'] @ProxyOperatorName = params['ProxyOperatorName'] @Module = params['Module'] @ModuleId = params['ModuleId'] @UniformSocialCreditCode = params['UniformSocialCreditCode'] @MenuStatus = params['MenuStatus'] @Endpoint = params['Endpoint'] @AutoJumpBackEvent = params['AutoJumpBackEvent'] @AuthorizationTypes = params['AuthorizationTypes'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # CreateConsoleLoginUrl返回参数结构体 class CreateConsoleLoginUrlResponse < TencentCloud::Common::AbstractModel # @param ConsoleUrl: 子客企业Web控制台url注意事项: # 1. 所有类型的链接在企业未认证/员工未认证完成时,只要在有效期内(一年)都可以访问 # 2. 若企业认证完成且员工认证完成后,重新获取pc端的链接5分钟之内有效,且只能访问一次 # 3. 若企业认证完成且员工认证完成后,重新获取H5/APP的链接只要在有效期内(一年)都可以访问 # 4. 此链接仅单次有效,使用后需要再次创建新的链接(部分聊天软件,如企业微信默认会对链接进行解析,此时需要使用类似“代码片段”的方式或者放到txt文件里发送链接) # 5. 创建的链接应避免被转义,如:&被转义为\u0026;如使用Postman请求后,请选择响应类型为 JSON,否则链接将被转义 # @type ConsoleUrl: String # @param IsActivated: 子客企业是否已开通腾讯电子签 # @type IsActivated: Boolean # @param ProxyOperatorIsVerified: 当前经办人是否已认证(false:未认证 true:已认证) # @type ProxyOperatorIsVerified: Boolean # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :ConsoleUrl, :IsActivated, :ProxyOperatorIsVerified, :RequestId def initialize(consoleurl=nil, isactivated=nil, proxyoperatorisverified=nil, requestid=nil) @ConsoleUrl = consoleurl @IsActivated = isactivated @ProxyOperatorIsVerified = proxyoperatorisverified @RequestId = requestid end def deserialize(params) @ConsoleUrl = params['ConsoleUrl'] @IsActivated = params['IsActivated'] @ProxyOperatorIsVerified = params['ProxyOperatorIsVerified'] @RequestId = params['RequestId'] end end # 创建合同配置信息 class CreateFlowOption < TencentCloud::Common::AbstractModel # @param CanEditFlow: 是否允许修改合同信息 # @type CanEditFlow: Boolean attr_accessor :CanEditFlow def initialize(caneditflow=nil) @CanEditFlow = caneditflow end def deserialize(params) @CanEditFlow = params['CanEditFlow'] end end # CreateFlowsByTemplates请求参数结构体 class CreateFlowsByTemplatesRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param FlowInfos: 多个合同(签署流程)信息,最多支持20个 # @type FlowInfos: Array # @param NeedPreview: 是否为预览模式;默认为false,即非预览模式,此时发起合同并返回FlowIds;若为预览模式,不会发起合同,会返回PreviewUrls; # 预览链接有效期300秒; # 同时,如果预览的文件中指定了动态表格控件,需要进行异步合成;此时此接口返回的是合成前的文档预览链接,而合成完成后的文档预览链接会通过:回调通知的方式、或使用返回的TaskInfo中的TaskId通过ChannelGetTaskResultApi接口查询; # @type NeedPreview: Boolean # @param PreviewType: 预览链接类型 默认:0-文件流, 1- H5链接 注意:此参数在NeedPreview 为true 时有效, # @type PreviewType: Integer # @param Operator: 操作者的信息,不用传 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :FlowInfos, :NeedPreview, :PreviewType, :Operator def initialize(agent=nil, flowinfos=nil, needpreview=nil, previewtype=nil, operator=nil) @Agent = agent @FlowInfos = flowinfos @NeedPreview = needpreview @PreviewType = previewtype @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end unless params['FlowInfos'].nil? @FlowInfos = [] params['FlowInfos'].each do |i| flowinfo_tmp = FlowInfo.new flowinfo_tmp.deserialize(i) @FlowInfos << flowinfo_tmp end end @NeedPreview = params['NeedPreview'] @PreviewType = params['PreviewType'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # CreateFlowsByTemplates返回参数结构体 class CreateFlowsByTemplatesResponse < TencentCloud::Common::AbstractModel # @param FlowIds: 多个合同ID # @type FlowIds: Array # @param CustomerData: 业务信息,限制1024字符 # @type CustomerData: Array # @param ErrorMessages: 创建消息,对应多个合同ID, # 成功为“”,创建失败则对应失败消息 # @type ErrorMessages: Array # @param PreviewUrls: 预览模式下返回的预览文件url数组 # @type PreviewUrls: Array # @param TaskInfos: 复杂文档合成任务(如,包含动态表格的预览任务)的任务信息数组; # 如果文档需要异步合成,此字段会返回该异步任务的任务信息,后续可以通过ChannelGetTaskResultApi接口查询任务详情; # @type TaskInfos: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :FlowIds, :CustomerData, :ErrorMessages, :PreviewUrls, :TaskInfos, :RequestId def initialize(flowids=nil, customerdata=nil, errormessages=nil, previewurls=nil, taskinfos=nil, requestid=nil) @FlowIds = flowids @CustomerData = customerdata @ErrorMessages = errormessages @PreviewUrls = previewurls @TaskInfos = taskinfos @RequestId = requestid end def deserialize(params) @FlowIds = params['FlowIds'] @CustomerData = params['CustomerData'] @ErrorMessages = params['ErrorMessages'] @PreviewUrls = params['PreviewUrls'] unless params['TaskInfos'].nil? @TaskInfos = [] params['TaskInfos'].each do |i| taskinfo_tmp = TaskInfo.new taskinfo_tmp.deserialize(i) @TaskInfos << taskinfo_tmp end end @RequestId = params['RequestId'] end end # CreateSealByImage请求参数结构体 class CreateSealByImageRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param SealName: 印章名称,最大长度不超过50字符 # @type SealName: String # @param SealImage: 印章图片base64,大小不超过10M(原始图片不超过7.6M) # @type SealImage: String # @param Operator: 操作者的信息 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :SealName, :SealImage, :Operator def initialize(agent=nil, sealname=nil, sealimage=nil, operator=nil) @Agent = agent @SealName = sealname @SealImage = sealimage @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @SealName = params['SealName'] @SealImage = params['SealImage'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # CreateSealByImage返回参数结构体 class CreateSealByImageResponse < TencentCloud::Common::AbstractModel # @param SealId: 印章id # @type SealId: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SealId, :RequestId def initialize(sealid=nil, requestid=nil) @SealId = sealid @RequestId = requestid end def deserialize(params) @SealId = params['SealId'] @RequestId = params['RequestId'] end end # CreateSignUrls请求参数结构体 class CreateSignUrlsRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param FlowIds: 签署流程编号数组,最多支持100个。(备注:该参数和合同组编号必须二选一) # @type FlowIds: Array # @param FlowGroupId: 合同组编号(备注:该参数和合同(流程)编号数组必须二选一) # @type FlowGroupId: String # @param Endpoint: 签署链接类型:“WEIXINAPP”-短链直接跳小程序;“CHANNEL”-跳转H5页面;“APP”-第三方APP或小程序跳转电子签小程序;"LONGURL2WEIXINAPP"-长链接跳转小程序;默认“WEIXINAPP”类型,即跳转至小程序; # @type Endpoint: String # @param GenerateType: 签署链接生成类型,默认是 "ALL"; # "ALL":全部签署方签署链接,此时不会给自动签署的签署方创建签署链接; # "CHANNEL":第三方平台子客企业企业; # "NOT_CHANNEL":非第三方平台子客企业企业; # "PERSON":个人; # "FOLLOWER":关注方,目前是合同抄送方; # @type GenerateType: String # @param OrganizationName: 非第三方平台子客企业参与方的企业名称,GenerateType为"NOT_CHANNEL"时必填 # @type OrganizationName: String # @param Name: 参与人姓名,GenerateType为"PERSON"时必填 # @type Name: String # @param Mobile: 参与人手机号; # GenerateType为"PERSON"或"FOLLOWER"时必填 # @type Mobile: String # @param OrganizationOpenId: 第三方平台子客企业的企业OpenId,GenerateType为"CHANNEL"时必填 # @type OrganizationOpenId: String # @param OpenId: 第三方平台子客企业参与人OpenId,GenerateType为"CHANNEL"时可用,指定到具体参与人, 仅展示已经实名的经办人信息 # @type OpenId: String # @param AutoJumpBack: Endpoint为"APP" 类型的签署链接,可以设置此值;支持调用方小程序打开签署链接,在电子签小程序完成签署后自动回跳至调用方小程序 # @type AutoJumpBack: Boolean # @param JumpUrl: 签署完之后的H5页面的跳转链接,针对Endpoint为CHANNEL时有效,最大长度1000个字符。 # @type JumpUrl: String # @param Operator: 暂未开放 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :FlowIds, :FlowGroupId, :Endpoint, :GenerateType, :OrganizationName, :Name, :Mobile, :OrganizationOpenId, :OpenId, :AutoJumpBack, :JumpUrl, :Operator def initialize(agent=nil, flowids=nil, flowgroupid=nil, endpoint=nil, generatetype=nil, organizationname=nil, name=nil, mobile=nil, organizationopenid=nil, openid=nil, autojumpback=nil, jumpurl=nil, operator=nil) @Agent = agent @FlowIds = flowids @FlowGroupId = flowgroupid @Endpoint = endpoint @GenerateType = generatetype @OrganizationName = organizationname @Name = name @Mobile = mobile @OrganizationOpenId = organizationopenid @OpenId = openid @AutoJumpBack = autojumpback @JumpUrl = jumpurl @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @FlowIds = params['FlowIds'] @FlowGroupId = params['FlowGroupId'] @Endpoint = params['Endpoint'] @GenerateType = params['GenerateType'] @OrganizationName = params['OrganizationName'] @Name = params['Name'] @Mobile = params['Mobile'] @OrganizationOpenId = params['OrganizationOpenId'] @OpenId = params['OpenId'] @AutoJumpBack = params['AutoJumpBack'] @JumpUrl = params['JumpUrl'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # CreateSignUrls返回参数结构体 class CreateSignUrlsResponse < TencentCloud::Common::AbstractModel # @param SignUrlInfos: 签署参与者签署H5链接信息数组 # @type SignUrlInfos: Array # @param ErrorMessages: 生成失败时的错误信息,成功返回”“,顺序和出参SignUrlInfos保持一致 # @type ErrorMessages: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SignUrlInfos, :ErrorMessages, :RequestId def initialize(signurlinfos=nil, errormessages=nil, requestid=nil) @SignUrlInfos = signurlinfos @ErrorMessages = errormessages @RequestId = requestid end def deserialize(params) unless params['SignUrlInfos'].nil? @SignUrlInfos = [] params['SignUrlInfos'].each do |i| signurlinfo_tmp = SignUrlInfo.new signurlinfo_tmp.deserialize(i) @SignUrlInfos << signurlinfo_tmp end end @ErrorMessages = params['ErrorMessages'] @RequestId = params['RequestId'] end end # 第三方应用集成员工部门信息 class Department < TencentCloud::Common::AbstractModel # @param DepartmentId: 部门id # 注意:此字段可能返回 null,表示取不到有效值。 # @type DepartmentId: String # @param DepartmentName: 部门名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type DepartmentName: String attr_accessor :DepartmentId, :DepartmentName def initialize(departmentid=nil, departmentname=nil) @DepartmentId = departmentid @DepartmentName = departmentname end def deserialize(params) @DepartmentId = params['DepartmentId'] @DepartmentName = params['DepartmentName'] end end # DescribeChannelFlowEvidenceReport请求参数结构体 class DescribeChannelFlowEvidenceReportRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param ReportId: 出证报告编号 # @type ReportId: String # @param Operator: 暂未开放 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :ReportId, :Operator def initialize(agent=nil, reportid=nil, operator=nil) @Agent = agent @ReportId = reportid @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @ReportId = params['ReportId'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # DescribeChannelFlowEvidenceReport返回参数结构体 class DescribeChannelFlowEvidenceReportResponse < TencentCloud::Common::AbstractModel # @param ReportUrl: 出证报告 URL # 注意:此字段可能返回 null,表示取不到有效值。 # @type ReportUrl: String # @param Status: 执行中:EvidenceStatusExecuting # 成功:EvidenceStatusSuccess # 失败:EvidenceStatusFailed # @type Status: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :ReportUrl, :Status, :RequestId def initialize(reporturl=nil, status=nil, requestid=nil) @ReportUrl = reporturl @Status = status @RequestId = requestid end def deserialize(params) @ReportUrl = params['ReportUrl'] @Status = params['Status'] @RequestId = params['RequestId'] end end # DescribeExtendedServiceAuthInfo请求参数结构体 class DescribeExtendedServiceAuthInfoRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填 # 注: 此接口 参数Agent. ProxyOperator.OpenId 需要传递超管或者法人的OpenId # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` attr_accessor :Agent def initialize(agent=nil) @Agent = agent end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end end end # DescribeExtendedServiceAuthInfo返回参数结构体 class DescribeExtendedServiceAuthInfoResponse < TencentCloud::Common::AbstractModel # @param AuthInfo: 企业扩展服务授权信息 # 注意:此字段可能返回 null,表示取不到有效值。 # @type AuthInfo: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :AuthInfo, :RequestId def initialize(authinfo=nil, requestid=nil) @AuthInfo = authinfo @RequestId = requestid end def deserialize(params) unless params['AuthInfo'].nil? @AuthInfo = [] params['AuthInfo'].each do |i| extentserviceauthinfo_tmp = ExtentServiceAuthInfo.new extentserviceauthinfo_tmp.deserialize(i) @AuthInfo << extentserviceauthinfo_tmp end end @RequestId = params['RequestId'] end end # DescribeFlowDetailInfo请求参数结构体 class DescribeFlowDetailInfoRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param FlowIds: 合同(流程)编号数组,最多支持100个。 # (备注:该参数和合同组编号必须二选一) # @type FlowIds: Array # @param FlowGroupId: 合同组编号(备注:该参数和合同(流程)编号数组必须二选一) # @type FlowGroupId: String # @param Operator: 暂未开放 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :FlowIds, :FlowGroupId, :Operator def initialize(agent=nil, flowids=nil, flowgroupid=nil, operator=nil) @Agent = agent @FlowIds = flowids @FlowGroupId = flowgroupid @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @FlowIds = params['FlowIds'] @FlowGroupId = params['FlowGroupId'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # DescribeFlowDetailInfo返回参数结构体 class DescribeFlowDetailInfoResponse < TencentCloud::Common::AbstractModel # @param ApplicationId: 第三方平台应用号Id # @type ApplicationId: String # @param ProxyOrganizationOpenId: 第三方平台子客企业OpenId # @type ProxyOrganizationOpenId: String # @param FlowInfo: 合同(签署流程)的具体详细描述信息 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FlowInfo: Array # @param FlowGroupId: 合同组编号 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FlowGroupId: String # @param FlowGroupName: 合同组名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FlowGroupName: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :ApplicationId, :ProxyOrganizationOpenId, :FlowInfo, :FlowGroupId, :FlowGroupName, :RequestId def initialize(applicationid=nil, proxyorganizationopenid=nil, flowinfo=nil, flowgroupid=nil, flowgroupname=nil, requestid=nil) @ApplicationId = applicationid @ProxyOrganizationOpenId = proxyorganizationopenid @FlowInfo = flowinfo @FlowGroupId = flowgroupid @FlowGroupName = flowgroupname @RequestId = requestid end def deserialize(params) @ApplicationId = params['ApplicationId'] @ProxyOrganizationOpenId = params['ProxyOrganizationOpenId'] unless params['FlowInfo'].nil? @FlowInfo = [] params['FlowInfo'].each do |i| flowdetailinfo_tmp = FlowDetailInfo.new flowdetailinfo_tmp.deserialize(i) @FlowInfo << flowdetailinfo_tmp end end @FlowGroupId = params['FlowGroupId'] @FlowGroupName = params['FlowGroupName'] @RequestId = params['RequestId'] end end # DescribeResourceUrlsByFlows请求参数结构体 class DescribeResourceUrlsByFlowsRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 # 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param FlowIds: 查询资源所对应的签署流程Id,最多支持50个 # @type FlowIds: Array # @param Operator: 操作者的信息,不用传 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :FlowIds, :Operator def initialize(agent=nil, flowids=nil, operator=nil) @Agent = agent @FlowIds = flowids @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @FlowIds = params['FlowIds'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # DescribeResourceUrlsByFlows返回参数结构体 class DescribeResourceUrlsByFlowsResponse < TencentCloud::Common::AbstractModel # @param FlowResourceUrlInfos: 签署流程资源对应链接信息 # @type FlowResourceUrlInfos: Array # @param ErrorMessages: 创建消息,对应多个合同ID, # 成功为“”,创建失败则对应失败消息 # @type ErrorMessages: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :FlowResourceUrlInfos, :ErrorMessages, :RequestId def initialize(flowresourceurlinfos=nil, errormessages=nil, requestid=nil) @FlowResourceUrlInfos = flowresourceurlinfos @ErrorMessages = errormessages @RequestId = requestid end def deserialize(params) unless params['FlowResourceUrlInfos'].nil? @FlowResourceUrlInfos = [] params['FlowResourceUrlInfos'].each do |i| flowresourceurlinfo_tmp = FlowResourceUrlInfo.new flowresourceurlinfo_tmp.deserialize(i) @FlowResourceUrlInfos << flowresourceurlinfo_tmp end end @ErrorMessages = params['ErrorMessages'] @RequestId = params['RequestId'] end end # DescribeTemplates请求参数结构体 class DescribeTemplatesRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param TemplateId: 模板唯一标识,查询单个模板时使用 # @type TemplateId: String # @param ContentType: 查询内容:0-模板列表及详情(默认),1-仅模板列表 # @type ContentType: Integer # @param Limit: 查询个数,默认20,最大100;在查询列表的时候有效 # @type Limit: Integer # @param Offset: 查询偏移位置,默认0;在查询列表的时候有效 # @type Offset: Integer # @param QueryAllComponents: 是否返回所有组件信息。默认false,只返回发起方控件;true,返回所有签署方控件 # @type QueryAllComponents: Boolean # @param TemplateName: 模糊搜索模板名称,最大长度200 # @type TemplateName: String # @param Operator: 操作者的信息 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` # @param WithPreviewUrl: 是否获取模板预览链接 # @type WithPreviewUrl: Boolean # @param WithPdfUrl: 是否获取模板的PDF文件链接- 第三方应用集成需要开启白名单时才能使用。 # @type WithPdfUrl: Boolean # @param ChannelTemplateId: 模板ID # @type ChannelTemplateId: String attr_accessor :Agent, :TemplateId, :ContentType, :Limit, :Offset, :QueryAllComponents, :TemplateName, :Operator, :WithPreviewUrl, :WithPdfUrl, :ChannelTemplateId def initialize(agent=nil, templateid=nil, contenttype=nil, limit=nil, offset=nil, queryallcomponents=nil, templatename=nil, operator=nil, withpreviewurl=nil, withpdfurl=nil, channeltemplateid=nil) @Agent = agent @TemplateId = templateid @ContentType = contenttype @Limit = limit @Offset = offset @QueryAllComponents = queryallcomponents @TemplateName = templatename @Operator = operator @WithPreviewUrl = withpreviewurl @WithPdfUrl = withpdfurl @ChannelTemplateId = channeltemplateid end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @TemplateId = params['TemplateId'] @ContentType = params['ContentType'] @Limit = params['Limit'] @Offset = params['Offset'] @QueryAllComponents = params['QueryAllComponents'] @TemplateName = params['TemplateName'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end @WithPreviewUrl = params['WithPreviewUrl'] @WithPdfUrl = params['WithPdfUrl'] @ChannelTemplateId = params['ChannelTemplateId'] end end # DescribeTemplates返回参数结构体 class DescribeTemplatesResponse < TencentCloud::Common::AbstractModel # @param Templates: 模板详情 # @type Templates: Array # @param TotalCount: 查询总数 # @type TotalCount: Integer # @param Limit: 查询数量 # @type Limit: Integer # @param Offset: 查询起始偏移 # @type Offset: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Templates, :TotalCount, :Limit, :Offset, :RequestId def initialize(templates=nil, totalcount=nil, limit=nil, offset=nil, requestid=nil) @Templates = templates @TotalCount = totalcount @Limit = limit @Offset = offset @RequestId = requestid end def deserialize(params) unless params['Templates'].nil? @Templates = [] params['Templates'].each do |i| templateinfo_tmp = TemplateInfo.new templateinfo_tmp.deserialize(i) @Templates << templateinfo_tmp end end @TotalCount = params['TotalCount'] @Limit = params['Limit'] @Offset = params['Offset'] @RequestId = params['RequestId'] end end # DescribeUsage请求参数结构体 class DescribeUsageRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用信息,此接口Agent.AppId必填 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param StartDate: 开始时间,例如:2021-03-21 # @type StartDate: String # @param EndDate: 结束时间,例如:2021-06-21; # 开始时间到结束时间的区间长度小于等于90天。 # @type EndDate: String # @param NeedAggregate: 是否汇总数据,默认不汇总。 # 不汇总:返回在统计区间内第三方平台下所有企业的每日明细,即每个企业N条数据,N为统计天数; # 汇总:返回在统计区间内第三方平台下所有企业的汇总后数据,即每个企业一条数据; # @type NeedAggregate: Boolean # @param Limit: 单次返回的最多条目数量。默认为1000,且不能超过1000。 # @type Limit: Integer # @param Offset: 偏移量,默认是0。 # @type Offset: Integer # @param Operator: 暂未开放 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :StartDate, :EndDate, :NeedAggregate, :Limit, :Offset, :Operator def initialize(agent=nil, startdate=nil, enddate=nil, needaggregate=nil, limit=nil, offset=nil, operator=nil) @Agent = agent @StartDate = startdate @EndDate = enddate @NeedAggregate = needaggregate @Limit = limit @Offset = offset @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @StartDate = params['StartDate'] @EndDate = params['EndDate'] @NeedAggregate = params['NeedAggregate'] @Limit = params['Limit'] @Offset = params['Offset'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # DescribeUsage返回参数结构体 class DescribeUsageResponse < TencentCloud::Common::AbstractModel # @param Total: 用量明细条数 # @type Total: Integer # @param Details: 用量明细 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Details: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Total, :Details, :RequestId def initialize(total=nil, details=nil, requestid=nil) @Total = total @Details = details @RequestId = requestid end def deserialize(params) @Total = params['Total'] unless params['Details'].nil? @Details = [] params['Details'].each do |i| usagedetail_tmp = UsageDetail.new usagedetail_tmp.deserialize(i) @Details << usagedetail_tmp end end @RequestId = params['RequestId'] end end # 签署流程下载信息 class DownloadFlowInfo < TencentCloud::Common::AbstractModel # @param FileName: 文件夹名称 # @type FileName: String # @param FlowIdList: 签署流程的标识数组 # @type FlowIdList: Array attr_accessor :FileName, :FlowIdList def initialize(filename=nil, flowidlist=nil) @FileName = filename @FlowIdList = flowidlist end def deserialize(params) @FileName = params['FileName'] @FlowIdList = params['FlowIdList'] end end # 企业扩展服务授权信息 class ExtentServiceAuthInfo < TencentCloud::Common::AbstractModel # @param Type: 扩展服务类型 # AUTO_SIGN 企业静默签(自动签署) # OVERSEA_SIGN 企业与港澳台居民*签署合同 # MOBILE_CHECK_APPROVER 使用手机号验证签署方身份 # PAGING_SEAL 骑缝章 # DOWNLOAD_FLOW 授权渠道下载合同 # @type Type: String # @param Name: 扩展服务名称 # @type Name: String # @param Status: 服务状态 # ENABLE 开启 # DISABLE 关闭 # @type Status: String # @param OperatorOpenId: 最近操作人openid(经办人openid) # 注意:此字段可能返回 null,表示取不到有效值。 # @type OperatorOpenId: String # @param OperateOn: 最近操作时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type OperateOn: Integer attr_accessor :Type, :Name, :Status, :OperatorOpenId, :OperateOn def initialize(type=nil, name=nil, status=nil, operatoropenid=nil, operateon=nil) @Type = type @Name = name @Status = status @OperatorOpenId = operatoropenid @OperateOn = operateon end def deserialize(params) @Type = params['Type'] @Name = params['Name'] @Status = params['Status'] @OperatorOpenId = params['OperatorOpenId'] @OperateOn = params['OperateOn'] end end # 绑定失败的用户角色信息 class FailedCreateRoleData < TencentCloud::Common::AbstractModel # @param UserId: 用户userId # 注意:此字段可能返回 null,表示取不到有效值。 # @type UserId: String # @param RoleIds: 角色RoleId列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type RoleIds: Array attr_accessor :UserId, :RoleIds def initialize(userid=nil, roleids=nil) @UserId = userid @RoleIds = roleids end def deserialize(params) @UserId = params['UserId'] @RoleIds = params['RoleIds'] end end # 此结构体 (Filter) 用于描述查询过滤条件。 class Filter < TencentCloud::Common::AbstractModel # @param Key: 查询过滤条件的Key # @type Key: String # @param Values: 查询过滤条件的Value列表 # @type Values: Array attr_accessor :Key, :Values def initialize(key=nil, values=nil) @Key = key @Values = values end def deserialize(params) @Key = params['Key'] @Values = params['Values'] end end # 签署人的流程信息明细 class FlowApproverDetail < TencentCloud::Common::AbstractModel # @param ReceiptId: 模板配置时候的签署人id,与控件绑定 # @type ReceiptId: String # @param ProxyOrganizationOpenId: 平台企业的第三方id # 注意:此字段可能返回 null,表示取不到有效值。 # @type ProxyOrganizationOpenId: String # @param ProxyOperatorOpenId: 平台企业操作人的第三方id # @type ProxyOperatorOpenId: String # @param ProxyOrganizationName: 平台企业名称 # @type ProxyOrganizationName: String # @param Mobile: 签署人手机号 # @type Mobile: String # @param SignOrder: 签署人签署顺序 # @type SignOrder: Integer # @param ApproveName: 签署人姓名 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ApproveName: String # @param ApproveStatus: 当前签署人的状态, 状态如下 # PENDING 流程等待中 # FILLPENDING 待填写状态 # FILLACCEPT 参与人已经填写 # FILLREJECT 参与人解决填写 # WAITPICKUP 待签收 # ACCEPT 签收 # REJECT 拒签 # DEADLINE 过期没有处理 # CANCEL 取消 # FORWARD 已经转他人处理 # STOP 流程因为其他原因终止 # RELIEVED 已经解除 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ApproveStatus: String # @param ApproveMessage: 签署人信息 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ApproveMessage: String # @param ApproveTime: 签署人签署时间 # @type ApproveTime: Integer # @param ApproveType: 参与者类型 (ORGANIZATION企业/PERSON个人) # 注意:此字段可能返回 null,表示取不到有效值。 # @type ApproveType: String attr_accessor :ReceiptId, :ProxyOrganizationOpenId, :ProxyOperatorOpenId, :ProxyOrganizationName, :Mobile, :SignOrder, :ApproveName, :ApproveStatus, :ApproveMessage, :ApproveTime, :ApproveType def initialize(receiptid=nil, proxyorganizationopenid=nil, proxyoperatoropenid=nil, proxyorganizationname=nil, mobile=nil, signorder=nil, approvename=nil, approvestatus=nil, approvemessage=nil, approvetime=nil, approvetype=nil) @ReceiptId = receiptid @ProxyOrganizationOpenId = proxyorganizationopenid @ProxyOperatorOpenId = proxyoperatoropenid @ProxyOrganizationName = proxyorganizationname @Mobile = mobile @SignOrder = signorder @ApproveName = approvename @ApproveStatus = approvestatus @ApproveMessage = approvemessage @ApproveTime = approvetime @ApproveType = approvetype end def deserialize(params) @ReceiptId = params['ReceiptId'] @ProxyOrganizationOpenId = params['ProxyOrganizationOpenId'] @ProxyOperatorOpenId = params['ProxyOperatorOpenId'] @ProxyOrganizationName = params['ProxyOrganizationName'] @Mobile = params['Mobile'] @SignOrder = params['SignOrder'] @ApproveName = params['ApproveName'] @ApproveStatus = params['ApproveStatus'] @ApproveMessage = params['ApproveMessage'] @ApproveTime = params['ApproveTime'] @ApproveType = params['ApproveType'] end end # 创建签署流程签署人入参。 # 其中签署方FlowApproverInfo需要传递的参数 # 非单C、单B、B2C合同,ApproverType、RecipientId(模板发起合同时)必传,建议都传。其他身份标识 # 1-个人:Name、Mobile必传 # 2-第三方平台子客企业指定经办人:OpenId必传,OrgName必传、OrgOpenId必传; # 3-第三方平台子客企业不指定经办人:OrgName必传、OrgOpenId必传; # 4-非第三方平台子客企业:Name、Mobile必传,OrgName必传,且NotChannelOrganization=True。 # RecipientId参数: # 从DescribeTemplates接口中,可以得到模板下的签署方Recipient列表,根据模板自定义的Rolename在此结构体中确定其RecipientId class FlowApproverInfo < TencentCloud::Common::AbstractModel # @param Name: 签署人姓名,最大长度50个字符 # @type Name: String # @param IdCardType: 签署人身份证件类型 # 1.ID_CARD 居民身份证 # 2.HONGKONG_MACAO_AND_TAIWAN 港澳台居民居住证 # 3.HONGKONG_AND_MACAO 港澳居民来往内地通行证 # @type IdCardType: String # @param IdCardNumber: 签署人证件号 # @type IdCardNumber: String # @param Mobile: 签署人手机号,脱敏显示。大陆手机号为11位,暂不支持海外手机号。 # @type Mobile: String # @param OrganizationName: 企业签署方工商营业执照上的企业名称,签署方为非发起方企业场景下必传,最大长度64个字符; # @type OrganizationName: String # @param NotChannelOrganization: 指定签署人非第三方平台子客企业下员工,在ApproverType为ORGANIZATION时指定。 # 默认为false,即签署人位于同一个第三方平台应用号下;默认为false,即签署人位于同一个第三方应用号下; # @type NotChannelOrganization: Boolean # @param OpenId: 用户侧第三方id,最大长度64个字符 # 当签署方为同一第三方平台下的员工时,该字段若不指定,则发起【待领取】的流程 # @type OpenId: String # @param OrganizationOpenId: 企业签署方在同一第三方平台应用下的其他合作企业OpenId,签署方为非发起方企业场景下必传,最大长度64个字符; # @type OrganizationOpenId: String # @param ApproverType: 签署人类型 # PERSON-个人/自然人; # PERSON_AUTO_SIGN-个人自动签(定制化场景下使用); # ORGANIZATION-企业(企业签署方或模板发起时的企业静默签); # ENTERPRISESERVER-企业静默签(文件发起时的企业静默签字)。 # @type ApproverType: String # @param RecipientId: 签署流程签署人在模板中对应的签署人Id;在非单方签署、以及非B2C签署的场景下必传,用于指定当前签署方在签署流程中的位置; # @type RecipientId: String # @param Deadline: 签署截止时间,默认一年 # @type Deadline: Integer # @param CallbackUrl: 签署完回调url,最大长度1000个字符 # @type CallbackUrl: String # @param SignComponents: 使用PDF文件直接发起合同时,签署人指定的签署控件 # @type SignComponents: Array # @param ComponentLimitType: 个人签署方指定签署控件类型,目前支持:OCR_ESIGN -AI智慧手写签名 # HANDWRITE -手写签名 # @type ComponentLimitType: Array # @param PreReadTime: 合同的强制预览时间:3~300s,未指定则按合同页数计算 # @type PreReadTime: Integer # @param JumpUrl: 签署完前端跳转的url,暂未使用 # @type JumpUrl: String # @param ApproverOption: 签署人个性化能力值 # @type ApproverOption: :class:`Tencentcloud::Essbasic.v20210526.models.ApproverOption` # @param ApproverNeedSignReview: 当前签署方进行签署操作是否需要企业内部审批,true 则为需要 # @type ApproverNeedSignReview: Boolean # @param ApproverVerifyTypes: 签署人查看合同时认证方式, 1-实名查看 2-短信验证码查看(企业签署方不支持该方式) 如果不传默认为1 # 查看合同的认证方式 Flow层级的优先于approver层级的 # @type ApproverVerifyTypes: Array # @param ApproverSignTypes: 签署人签署合同时的认证方式 # 1-人脸认证 2-签署密码 3-运营商三要素(默认为1,2) # @type ApproverSignTypes: Array attr_accessor :Name, :IdCardType, :IdCardNumber, :Mobile, :OrganizationName, :NotChannelOrganization, :OpenId, :OrganizationOpenId, :ApproverType, :RecipientId, :Deadline, :CallbackUrl, :SignComponents, :ComponentLimitType, :PreReadTime, :JumpUrl, :ApproverOption, :ApproverNeedSignReview, :ApproverVerifyTypes, :ApproverSignTypes def initialize(name=nil, idcardtype=nil, idcardnumber=nil, mobile=nil, organizationname=nil, notchannelorganization=nil, openid=nil, organizationopenid=nil, approvertype=nil, recipientid=nil, deadline=nil, callbackurl=nil, signcomponents=nil, componentlimittype=nil, prereadtime=nil, jumpurl=nil, approveroption=nil, approverneedsignreview=nil, approververifytypes=nil, approversigntypes=nil) @Name = name @IdCardType = idcardtype @IdCardNumber = idcardnumber @Mobile = mobile @OrganizationName = organizationname @NotChannelOrganization = notchannelorganization @OpenId = openid @OrganizationOpenId = organizationopenid @ApproverType = approvertype @RecipientId = recipientid @Deadline = deadline @CallbackUrl = callbackurl @SignComponents = signcomponents @ComponentLimitType = componentlimittype @PreReadTime = prereadtime @JumpUrl = jumpurl @ApproverOption = approveroption @ApproverNeedSignReview = approverneedsignreview @ApproverVerifyTypes = approververifytypes @ApproverSignTypes = approversigntypes end def deserialize(params) @Name = params['Name'] @IdCardType = params['IdCardType'] @IdCardNumber = params['IdCardNumber'] @Mobile = params['Mobile'] @OrganizationName = params['OrganizationName'] @NotChannelOrganization = params['NotChannelOrganization'] @OpenId = params['OpenId'] @OrganizationOpenId = params['OrganizationOpenId'] @ApproverType = params['ApproverType'] @RecipientId = params['RecipientId'] @Deadline = params['Deadline'] @CallbackUrl = params['CallbackUrl'] unless params['SignComponents'].nil? @SignComponents = [] params['SignComponents'].each do |i| component_tmp = Component.new component_tmp.deserialize(i) @SignComponents << component_tmp end end @ComponentLimitType = params['ComponentLimitType'] @PreReadTime = params['PreReadTime'] @JumpUrl = params['JumpUrl'] unless params['ApproverOption'].nil? @ApproverOption = ApproverOption.new @ApproverOption.deserialize(params['ApproverOption']) end @ApproverNeedSignReview = params['ApproverNeedSignReview'] @ApproverVerifyTypes = params['ApproverVerifyTypes'] @ApproverSignTypes = params['ApproverSignTypes'] end end # 签署人签署链接信息 class FlowApproverUrlInfo < TencentCloud::Common::AbstractModel # @param SignUrl: 签署链接,注意该链接有效期为30分钟,同时需要注意保密,不要外泄给无关用户。 # @type SignUrl: String # @param Mobile: 签署人手机号 # @type Mobile: String # @param Name: 签署人姓名 # @type Name: String # @param ApproverType: 签署人类型 PERSON-个人 # @type ApproverType: String attr_accessor :SignUrl, :Mobile, :Name, :ApproverType def initialize(signurl=nil, mobile=nil, name=nil, approvertype=nil) @SignUrl = signurl @Mobile = mobile @Name = name @ApproverType = approvertype end def deserialize(params) @SignUrl = params['SignUrl'] @Mobile = params['Mobile'] @Name = params['Name'] @ApproverType = params['ApproverType'] end end # 此结构体(FlowDetailInfo)描述的是合同(流程)的详细信息 class FlowDetailInfo < TencentCloud::Common::AbstractModel # @param FlowId: 合同(流程)的Id # @type FlowId: String # @param FlowName: 合同(流程)的名字 # @type FlowName: String # @param FlowType: 合同(流程)的类型 # @type FlowType: String # @param FlowStatus: 合同(流程)的状态, 状态如下 # INIT 还没发起 # PART 部分签署 # REJECT 拒签 # ALL 全部签署 # DEADLINE 流签 # CANCEL 取消 # RELIEVED 解除 # @type FlowStatus: String # @param FlowMessage: 合同(流程)的信息 # @type FlowMessage: String # @param CreateOn: 合同(流程)的创建时间戳 # @type CreateOn: Integer # @param DeadLine: 合同(流程)的签署截止时间戳 # @type DeadLine: Integer # @param CustomData: 用户自定义数据 # @type CustomData: String # @param FlowApproverInfos: 合同(流程)的签署人数组 # @type FlowApproverInfos: Array # @param CcInfos: 合同(流程)关注方信息列表 # @type CcInfos: Array attr_accessor :FlowId, :FlowName, :FlowType, :FlowStatus, :FlowMessage, :CreateOn, :DeadLine, :CustomData, :FlowApproverInfos, :CcInfos def initialize(flowid=nil, flowname=nil, flowtype=nil, flowstatus=nil, flowmessage=nil, createon=nil, deadline=nil, customdata=nil, flowapproverinfos=nil, ccinfos=nil) @FlowId = flowid @FlowName = flowname @FlowType = flowtype @FlowStatus = flowstatus @FlowMessage = flowmessage @CreateOn = createon @DeadLine = deadline @CustomData = customdata @FlowApproverInfos = flowapproverinfos @CcInfos = ccinfos end def deserialize(params) @FlowId = params['FlowId'] @FlowName = params['FlowName'] @FlowType = params['FlowType'] @FlowStatus = params['FlowStatus'] @FlowMessage = params['FlowMessage'] @CreateOn = params['CreateOn'] @DeadLine = params['DeadLine'] @CustomData = params['CustomData'] unless params['FlowApproverInfos'].nil? @FlowApproverInfos = [] params['FlowApproverInfos'].each do |i| flowapproverdetail_tmp = FlowApproverDetail.new flowapproverdetail_tmp.deserialize(i) @FlowApproverInfos << flowapproverdetail_tmp end end unless params['CcInfos'].nil? @CcInfos = [] params['CcInfos'].each do |i| flowapproverdetail_tmp = FlowApproverDetail.new flowapproverdetail_tmp.deserialize(i) @CcInfos << flowapproverdetail_tmp end end end end # 合同组中每个子合同的发起信息 class FlowFileInfo < TencentCloud::Common::AbstractModel # @param FileIds: 签署文件资源Id列表,目前仅支持单个文件 # @type FileIds: Array # @param FlowName: 签署流程名称,长度不超过200个字符 # @type FlowName: String # @param FlowApprovers: 签署流程签约方列表,最多不超过5个参与方 # @type FlowApprovers: Array # @param Deadline: 签署流程截止时间,十位数时间戳,最大值为33162419560,即3020年 # @type Deadline: Integer # @param FlowDescription: 签署流程的描述,长度不超过1000个字符 # @type FlowDescription: String # @param FlowType: 签署流程的类型,长度不超过255个字符 # @type FlowType: String # @param CallbackUrl: 签署流程回调地址,长度不超过255个字符 # @type CallbackUrl: String # @param CustomerData: 第三方应用的业务信息,最大长度1000个字符。发起自动签署时,需设置对应自动签署场景,目前仅支持场景:处方单-E_PRESCRIPTION_AUTO_SIGN # @type CustomerData: String # @param Unordered: 合同签署顺序类型(无序签,顺序签),默认为false,即有序签署 # @type Unordered: Boolean # @param CustomShowMap: 合同显示的页卡模板,说明:只支持{合同名称}, {发起方企业}, {发起方姓名}, {签署方N企业}, {签署方N姓名},且N不能超过签署人的数量,N从1开始 # @type CustomShowMap: String # @param NeedSignReview: 本企业(发起方企业)是否需要签署审批 # @type NeedSignReview: Boolean attr_accessor :FileIds, :FlowName, :FlowApprovers, :Deadline, :FlowDescription, :FlowType, :CallbackUrl, :CustomerData, :Unordered, :CustomShowMap, :NeedSignReview def initialize(fileids=nil, flowname=nil, flowapprovers=nil, deadline=nil, flowdescription=nil, flowtype=nil, callbackurl=nil, customerdata=nil, unordered=nil, customshowmap=nil, needsignreview=nil) @FileIds = fileids @FlowName = flowname @FlowApprovers = flowapprovers @Deadline = deadline @FlowDescription = flowdescription @FlowType = flowtype @CallbackUrl = callbackurl @CustomerData = customerdata @Unordered = unordered @CustomShowMap = customshowmap @NeedSignReview = needsignreview end def deserialize(params) @FileIds = params['FileIds'] @FlowName = params['FlowName'] unless params['FlowApprovers'].nil? @FlowApprovers = [] params['FlowApprovers'].each do |i| flowapproverinfo_tmp = FlowApproverInfo.new flowapproverinfo_tmp.deserialize(i) @FlowApprovers << flowapproverinfo_tmp end end @Deadline = params['Deadline'] @FlowDescription = params['FlowDescription'] @FlowType = params['FlowType'] @CallbackUrl = params['CallbackUrl'] @CustomerData = params['CustomerData'] @Unordered = params['Unordered'] @CustomShowMap = params['CustomShowMap'] @NeedSignReview = params['NeedSignReview'] end end # 此结构体 (FlowInfo) 用于描述签署流程信息。 # 【数据表格传参说明】 # 当模板的 ComponentType='DYNAMIC_TABLE'时( 第三方应用集成或集成版),FormField.ComponentValue需要传递json格式的字符串参数,用于确定表头&填充数据表格(支持内容的单元格合并) # 输入示例1: # ``` # { # "headers":[ # { # "content":"head1" # }, # { # "content":"head2" # }, # { # "content":"head3" # } # ], # "rowCount":3, # "body":{ # "cells":[ # { # "rowStart":1, # "rowEnd":1, # "columnStart":1, # "columnEnd":1, # "content":"123" # }, # { # "rowStart":2, # "rowEnd":3, # "columnStart":1, # "columnEnd":2, # "content":"456" # }, # { # "rowStart":3, # "rowEnd":3, # "columnStart":3, # "columnEnd":3, # "content":"789" # } # ] # } # } # ``` # 输入示例2(表格表头宽度比例配置): # ``` # { # "headers":[ # { # "content":"head1", # "widthPercent": 30 # }, # { # "content":"head2", # "widthPercent": 30 # }, # { # "content":"head3", # "widthPercent": 40 # } # ], # "rowCount":3, # "body":{ # "cells":[ # { # "rowStart":1, # "rowEnd":1, # "columnStart":1, # "columnEnd":1, # "content":"123" # }, # { # "rowStart":2, # "rowEnd":3, # "columnStart":1, # "columnEnd":2, # "content":"456" # }, # { # "rowStart":3, # "rowEnd":3, # "columnStart":3, # "columnEnd":3, # "content":"789" # } # ] # } # } # ``` # 表格参数说明 # | 名称 | 类型 | 描述 | # | ------------------- | ------- | ------------------------------------------------- | # | headers | Array | 表头:不超过10列,不支持单元格合并,字数不超过100 | # | rowCount | Integer | 表格内容最大行数 | # | cells.N.rowStart | Integer | 单元格坐标:行起始index | # | cells.N.rowEnd | Integer | 单元格坐标:行结束index | # | cells.N.columnStart | Integer | 单元格坐标:列起始index | # | cells.N.columnEnd | Integer | 单元格坐标:列结束index | # | cells.N.content | String | 单元格内容,字数不超过100 | # 表格参数headers说明 # | 名称 | 类型 | 描述 | # | ------------------- | ------- | ------------------------------------------------- | # | widthPercent | Integer | 表头单元格列占总表头的比例,例如1:30表示 此列占表头的30%,不填写时列宽度平均拆分;例如2:总2列,某一列填写40,剩余列可以为空,按照60计算。;例如3:总3列,某一列填写30,剩余2列可以为空,分别为(100-30)/2=35 | # | content | String | 表头单元格内容,字数不超过100 | class FlowInfo < TencentCloud::Common::AbstractModel # @param FlowName: 合同名字,最大长度200个字符 # @type FlowName: String # @param Deadline: 签署截止时间戳,超过有效签署时间则该签署流程失败,默认一年 # @type Deadline: Integer # @param TemplateId: 模板ID # @type TemplateId: String # @param FlowApprovers: 多个签署人信息,最大支持50个签署方 # @type FlowApprovers: Array # @param FormFields: 表单K-V对列表 # @type FormFields: Array # @param CallbackUrl: 回调地址,最大长度1000个字符 # @type CallbackUrl: String # @param FlowType: 合同类型,如:1. “劳务”;2. “销售”;3. “租赁”;4. “其他”,最大长度200个字符 # @type FlowType: String # @param FlowDescription: 合同描述,最大长度1000个字符 # @type FlowDescription: String # @param CustomerData: 第三方应用平台的业务信息,最大长度1000个字符。发起自动签署时,需设置对应自动签署场景,目前仅支持场景:处方单-E_PRESCRIPTION_AUTO_SIGN # @type CustomerData: String # @param CustomShowMap: 合同显示的页卡模板,说明:只支持{合同名称}, {发起方企业}, {发起方姓名}, {签署方N企业}, {签署方N姓名},且N不能超过签署人的数量,N从1开始 # @type CustomShowMap: String # @param CcInfos: 被抄送人的信息列表,抄送功能暂不开放 # @type CcInfos: Array # @param NeedSignReview: 发起方企业的签署人进行签署操作是否需要企业内部审批。 # 若设置为true,审核结果需通过接口 ChannelCreateFlowSignReview 通知电子签,审核通过后,发起方企业签署人方可进行签署操作,否则会阻塞其签署操作。 # 注:企业可以通过此功能与企业内部的审批流程进行关联,支持手动、静默签署合同。 # @type NeedSignReview: Boolean # @param CcNotifyType: 给关注人发送短信通知的类型,0-合同发起时通知 1-签署完成后通知 # @type CcNotifyType: Integer attr_accessor :FlowName, :Deadline, :TemplateId, :FlowApprovers, :FormFields, :CallbackUrl, :FlowType, :FlowDescription, :CustomerData, :CustomShowMap, :CcInfos, :NeedSignReview, :CcNotifyType def initialize(flowname=nil, deadline=nil, templateid=nil, flowapprovers=nil, formfields=nil, callbackurl=nil, flowtype=nil, flowdescription=nil, customerdata=nil, customshowmap=nil, ccinfos=nil, needsignreview=nil, ccnotifytype=nil) @FlowName = flowname @Deadline = deadline @TemplateId = templateid @FlowApprovers = flowapprovers @FormFields = formfields @CallbackUrl = callbackurl @FlowType = flowtype @FlowDescription = flowdescription @CustomerData = customerdata @CustomShowMap = customshowmap @CcInfos = ccinfos @NeedSignReview = needsignreview @CcNotifyType = ccnotifytype end def deserialize(params) @FlowName = params['FlowName'] @Deadline = params['Deadline'] @TemplateId = params['TemplateId'] unless params['FlowApprovers'].nil? @FlowApprovers = [] params['FlowApprovers'].each do |i| flowapproverinfo_tmp = FlowApproverInfo.new flowapproverinfo_tmp.deserialize(i) @FlowApprovers << flowapproverinfo_tmp end end unless params['FormFields'].nil? @FormFields = [] params['FormFields'].each do |i| formfield_tmp = FormField.new formfield_tmp.deserialize(i) @FormFields << formfield_tmp end end @CallbackUrl = params['CallbackUrl'] @FlowType = params['FlowType'] @FlowDescription = params['FlowDescription'] @CustomerData = params['CustomerData'] @CustomShowMap = params['CustomShowMap'] unless params['CcInfos'].nil? @CcInfos = [] params['CcInfos'].each do |i| ccinfo_tmp = CcInfo.new ccinfo_tmp.deserialize(i) @CcInfos << ccinfo_tmp end end @NeedSignReview = params['NeedSignReview'] @CcNotifyType = params['CcNotifyType'] end end # 流程对应资源链接信息 class FlowResourceUrlInfo < TencentCloud::Common::AbstractModel # @param FlowId: 流程对应Id # 注意:此字段可能返回 null,表示取不到有效值。 # @type FlowId: String # @param ResourceUrlInfos: 流程对应资源链接信息数组 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ResourceUrlInfos: Array attr_accessor :FlowId, :ResourceUrlInfos def initialize(flowid=nil, resourceurlinfos=nil) @FlowId = flowid @ResourceUrlInfos = resourceurlinfos end def deserialize(params) @FlowId = params['FlowId'] unless params['ResourceUrlInfos'].nil? @ResourceUrlInfos = [] params['ResourceUrlInfos'].each do |i| resourceurlinfo_tmp = ResourceUrlInfo.new resourceurlinfo_tmp.deserialize(i) @ResourceUrlInfos << resourceurlinfo_tmp end end end end # 此结构 (FormField) 用于描述内容控件填充结构。 class FormField < TencentCloud::Common::AbstractModel # @param ComponentValue: 控件填充vaule,ComponentType和传入值类型对应关系: # TEXT - 文本内容 # MULTI_LINE_TEXT - 文本内容 # CHECK_BOX - true/false # FILL_IMAGE、ATTACHMENT - 附件的FileId,需要通过UploadFiles接口上传获取 # SELECTOR - 选项值 # DYNAMIC_TABLE - 传入json格式的表格内容,具体见数据结构FlowInfo:https://cloud.tencent.com/document/api/1420/61525#FlowInfo # @type ComponentValue: String # @param ComponentId: 表单域或控件的ID,跟ComponentName二选一,不能全为空; # CreateFlowsByTemplates 接口不使用此字段。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ComponentId: String # @param ComponentName: 控件的名字,跟ComponentId二选一,不能全为空 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ComponentName: String attr_accessor :ComponentValue, :ComponentId, :ComponentName def initialize(componentvalue=nil, componentid=nil, componentname=nil) @ComponentValue = componentvalue @ComponentId = componentid @ComponentName = componentname end def deserialize(params) @ComponentValue = params['ComponentValue'] @ComponentId = params['ComponentId'] @ComponentName = params['ComponentName'] end end # GetDownloadFlowUrl请求参数结构体 class GetDownloadFlowUrlRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param DownLoadFlows: 文件夹数组,签署流程总数不能超过50个,一个文件夹下,不能超过20个签署流程 # @type DownLoadFlows: Array # @param Operator: 操作者的信息,不用传 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :DownLoadFlows, :Operator def initialize(agent=nil, downloadflows=nil, operator=nil) @Agent = agent @DownLoadFlows = downloadflows @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end unless params['DownLoadFlows'].nil? @DownLoadFlows = [] params['DownLoadFlows'].each do |i| downloadflowinfo_tmp = DownloadFlowInfo.new downloadflowinfo_tmp.deserialize(i) @DownLoadFlows << downloadflowinfo_tmp end end unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # GetDownloadFlowUrl返回参数结构体 class GetDownloadFlowUrlResponse < TencentCloud::Common::AbstractModel # @param DownLoadUrl: 合同(流程)下载地址 # @type DownLoadUrl: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :DownLoadUrl, :RequestId def initialize(downloadurl=nil, requestid=nil) @DownLoadUrl = downloadurl @RequestId = requestid end def deserialize(params) @DownLoadUrl = params['DownLoadUrl'] @RequestId = params['RequestId'] end end # ModifyExtendedService请求参数结构体 class ModifyExtendedServiceRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # 注: 此接口 参数Agent. ProxyOperator.OpenId 需要传递超管或者法人的OpenId # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param ServiceType: 扩展服务类型 # AUTO_SIGN 企业静默签(自动签署) # OVERSEA_SIGN 企业与港澳台居民*签署合同 # MOBILE_CHECK_APPROVER 使用手机号验证签署方身份 # PAGING_SEAL 骑缝章 # DOWNLOAD_FLOW 授权渠道下载合同 # @type ServiceType: String # @param Operate: 操作类型 # OPEN:开通 # CLOSE:关闭 # @type Operate: String attr_accessor :Agent, :ServiceType, :Operate def initialize(agent=nil, servicetype=nil, operate=nil) @Agent = agent @ServiceType = servicetype @Operate = operate end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @ServiceType = params['ServiceType'] @Operate = params['Operate'] end end # ModifyExtendedService返回参数结构体 class ModifyExtendedServiceResponse < TencentCloud::Common::AbstractModel # @param OperateUrl: 操作跳转链接,有效期24小时 # 若操作时没有返回跳转链接,表示无需跳转操作,此时会直接开通/关闭服务。 # 当操作类型是 OPEN 且 扩展服务类型是 AUTO_SIGN 或 DOWNLOAD_FLOW 或者 OVERSEA_SIGN 时返回操作链接, # 返回的链接需要平台方自行触达超管或法人,超管或法人点击链接完成服务开通操作。 # @type OperateUrl: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :OperateUrl, :RequestId def initialize(operateurl=nil, requestid=nil) @OperateUrl = operateurl @RequestId = requestid end def deserialize(params) @OperateUrl = params['OperateUrl'] @RequestId = params['RequestId'] end end # 持有的电子印章信息 class OccupiedSeal < TencentCloud::Common::AbstractModel # @param SealId: 电子印章编号 # @type SealId: String # @param SealName: 电子印章名称 # @type SealName: String # @param CreateOn: 电子印章授权时间戳 # @type CreateOn: Integer # @param Creator: 电子印章授权人 # @type Creator: String # @param SealPolicyId: 电子印章策略Id # @type SealPolicyId: String # @param SealStatus: 印章状态,有以下六种:CHECKING(审核中)SUCCESS(已启用)FAIL(审核拒绝)CHECKING-SADM(待超管审核)DISABLE(已停用)STOPPED(已终止) # @type SealStatus: String # @param FailReason: 审核失败原因 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FailReason: String # @param Url: 印章图片url,5分钟内有效 # @type Url: String # @param SealType: 印章类型 # @type SealType: String # @param IsAllTime: 用印申请是否为永久授权 # @type IsAllTime: Boolean # @param AuthorizedUsers: 授权人列表 # @type AuthorizedUsers: Array attr_accessor :SealId, :SealName, :CreateOn, :Creator, :SealPolicyId, :SealStatus, :FailReason, :Url, :SealType, :IsAllTime, :AuthorizedUsers def initialize(sealid=nil, sealname=nil, createon=nil, creator=nil, sealpolicyid=nil, sealstatus=nil, failreason=nil, url=nil, sealtype=nil, isalltime=nil, authorizedusers=nil) @SealId = sealid @SealName = sealname @CreateOn = createon @Creator = creator @SealPolicyId = sealpolicyid @SealStatus = sealstatus @FailReason = failreason @Url = url @SealType = sealtype @IsAllTime = isalltime @AuthorizedUsers = authorizedusers end def deserialize(params) @SealId = params['SealId'] @SealName = params['SealName'] @CreateOn = params['CreateOn'] @Creator = params['Creator'] @SealPolicyId = params['SealPolicyId'] @SealStatus = params['SealStatus'] @FailReason = params['FailReason'] @Url = params['Url'] @SealType = params['SealType'] @IsAllTime = params['IsAllTime'] unless params['AuthorizedUsers'].nil? @AuthorizedUsers = [] params['AuthorizedUsers'].each do |i| authorizeduser_tmp = AuthorizedUser.new authorizeduser_tmp.deserialize(i) @AuthorizedUsers << authorizeduser_tmp end end end end # OperateChannelTemplate请求参数结构体 class OperateChannelTemplateRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param OperateType: 操作类型,查询:"SELECT",删除:"DELETE",更新:"UPDATE" # @type OperateType: String # @param TemplateId: 第三方应用平台模板库模板唯一标识 # @type TemplateId: String # @param ProxyOrganizationOpenIds: 合作企业方第三方机构唯一标识数据,支持多个, 用","进行分隔 # @type ProxyOrganizationOpenIds: String # @param AuthTag: 模板可见性, 全部可见-"all", 部分可见-"part" # @type AuthTag: String # @param Operator: 暂未开放 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :OperateType, :TemplateId, :ProxyOrganizationOpenIds, :AuthTag, :Operator def initialize(agent=nil, operatetype=nil, templateid=nil, proxyorganizationopenids=nil, authtag=nil, operator=nil) @Agent = agent @OperateType = operatetype @TemplateId = templateid @ProxyOrganizationOpenIds = proxyorganizationopenids @AuthTag = authtag @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @OperateType = params['OperateType'] @TemplateId = params['TemplateId'] @ProxyOrganizationOpenIds = params['ProxyOrganizationOpenIds'] @AuthTag = params['AuthTag'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # OperateChannelTemplate返回参数结构体 class OperateChannelTemplateResponse < TencentCloud::Common::AbstractModel # @param AppId: 腾讯电子签颁发给第三方应用平台的应用ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type AppId: String # @param TemplateId: 第三方应用平台模板库模板唯一标识 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TemplateId: String # @param OperateResult: 全部成功-"all-success",部分成功-"part-success", 全部失败-"fail"失败的会在FailMessageList中展示 # 注意:此字段可能返回 null,表示取不到有效值。 # @type OperateResult: String # @param AuthTag: 模板可见性, 全部可见-"all", 部分可见-"part" # 注意:此字段可能返回 null,表示取不到有效值。 # @type AuthTag: String # @param ProxyOrganizationOpenIds: 合作企业方第三方机构唯一标识数据 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ProxyOrganizationOpenIds: Array # @param FailMessageList: 操作失败信息数组 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FailMessageList: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :AppId, :TemplateId, :OperateResult, :AuthTag, :ProxyOrganizationOpenIds, :FailMessageList, :RequestId def initialize(appid=nil, templateid=nil, operateresult=nil, authtag=nil, proxyorganizationopenids=nil, failmessagelist=nil, requestid=nil) @AppId = appid @TemplateId = templateid @OperateResult = operateresult @AuthTag = authtag @ProxyOrganizationOpenIds = proxyorganizationopenids @FailMessageList = failmessagelist @RequestId = requestid end def deserialize(params) @AppId = params['AppId'] @TemplateId = params['TemplateId'] @OperateResult = params['OperateResult'] @AuthTag = params['AuthTag'] @ProxyOrganizationOpenIds = params['ProxyOrganizationOpenIds'] unless params['FailMessageList'].nil? @FailMessageList = [] params['FailMessageList'].each do |i| authfailmessage_tmp = AuthFailMessage.new authfailmessage_tmp.deserialize(i) @FailMessageList << authfailmessage_tmp end end @RequestId = params['RequestId'] end end # 机构信息 class OrganizationInfo < TencentCloud::Common::AbstractModel # @param OrganizationOpenId: 用户在渠道的机构编号 # @type OrganizationOpenId: String # @param ClientIp: 用户真实的IP # @type ClientIp: String # @param ProxyIp: 机构的代理IP # @type ProxyIp: String # @param OrganizationId: 机构在平台的编号 # @type OrganizationId: String # @param Channel: 用户渠道 # @type Channel: String attr_accessor :OrganizationOpenId, :ClientIp, :ProxyIp, :OrganizationId, :Channel def initialize(organizationopenid=nil, clientip=nil, proxyip=nil, organizationid=nil, channel=nil) @OrganizationOpenId = organizationopenid @ClientIp = clientip @ProxyIp = proxyip @OrganizationId = organizationid @Channel = channel end def deserialize(params) @OrganizationOpenId = params['OrganizationOpenId'] @ClientIp = params['ClientIp'] @ProxyIp = params['ProxyIp'] @OrganizationId = params['OrganizationId'] @Channel = params['Channel'] end end # 合同文件验签单个结果结构体 class PdfVerifyResult < TencentCloud::Common::AbstractModel # @param VerifyResult: 验签结果 # @type VerifyResult: Integer # @param SignPlatform: 签署平台 # @type SignPlatform: String # @param SignerName: 签署人名称 # @type SignerName: String # @param SignTime: 签署时间 # @type SignTime: Integer # @param SignAlgorithm: 签名算法 # @type SignAlgorithm: String # @param CertSn: 签名证书序列号 # @type CertSn: String # @param CertNotBefore: 证书起始时间 # @type CertNotBefore: Integer # @param CertNotAfter: 证书过期时间 # @type CertNotAfter: Integer # @param SignType: 签名类型 # @type SignType: Integer # @param ComponentPosX: 签名域横坐标 # @type ComponentPosX: Float # @param ComponentPosY: 签名域纵坐标 # @type ComponentPosY: Float # @param ComponentWidth: 签名域宽度 # @type ComponentWidth: Float # @param ComponentHeight: 签名域高度 # @type ComponentHeight: Float # @param ComponentPage: 签名域所在页码 # @type ComponentPage: Integer attr_accessor :VerifyResult, :SignPlatform, :SignerName, :SignTime, :SignAlgorithm, :CertSn, :CertNotBefore, :CertNotAfter, :SignType, :ComponentPosX, :ComponentPosY, :ComponentWidth, :ComponentHeight, :ComponentPage def initialize(verifyresult=nil, signplatform=nil, signername=nil, signtime=nil, signalgorithm=nil, certsn=nil, certnotbefore=nil, certnotafter=nil, signtype=nil, componentposx=nil, componentposy=nil, componentwidth=nil, componentheight=nil, componentpage=nil) @VerifyResult = verifyresult @SignPlatform = signplatform @SignerName = signername @SignTime = signtime @SignAlgorithm = signalgorithm @CertSn = certsn @CertNotBefore = certnotbefore @CertNotAfter = certnotafter @SignType = signtype @ComponentPosX = componentposx @ComponentPosY = componentposy @ComponentWidth = componentwidth @ComponentHeight = componentheight @ComponentPage = componentpage end def deserialize(params) @VerifyResult = params['VerifyResult'] @SignPlatform = params['SignPlatform'] @SignerName = params['SignerName'] @SignTime = params['SignTime'] @SignAlgorithm = params['SignAlgorithm'] @CertSn = params['CertSn'] @CertNotBefore = params['CertNotBefore'] @CertNotAfter = params['CertNotAfter'] @SignType = params['SignType'] @ComponentPosX = params['ComponentPosX'] @ComponentPosY = params['ComponentPosY'] @ComponentWidth = params['ComponentWidth'] @ComponentHeight = params['ComponentHeight'] @ComponentPage = params['ComponentPage'] end end # PrepareFlows请求参数结构体 class PrepareFlowsRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.ProxyOrganizationOpenId、Agent. ProxyOperator.OpenId、Agent.AppId 和 Agent.ProxyAppId 均必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param FlowInfos: 多个合同(签署流程)信息,最大支持20个签署流程。 # @type FlowInfos: Array # @param JumpUrl: 操作完成后的跳转地址,最大长度200 # @type JumpUrl: String # @param Operator: 暂未开放 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :FlowInfos, :JumpUrl, :Operator def initialize(agent=nil, flowinfos=nil, jumpurl=nil, operator=nil) @Agent = agent @FlowInfos = flowinfos @JumpUrl = jumpurl @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end unless params['FlowInfos'].nil? @FlowInfos = [] params['FlowInfos'].each do |i| flowinfo_tmp = FlowInfo.new flowinfo_tmp.deserialize(i) @FlowInfos << flowinfo_tmp end end @JumpUrl = params['JumpUrl'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # PrepareFlows返回参数结构体 class PrepareFlowsResponse < TencentCloud::Common::AbstractModel # @param ConfirmUrl: 待发起文件确认页 # @type ConfirmUrl: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :ConfirmUrl, :RequestId def initialize(confirmurl=nil, requestid=nil) @ConfirmUrl = confirmurl @RequestId = requestid end def deserialize(params) @ConfirmUrl = params['ConfirmUrl'] @RequestId = params['RequestId'] end end # 合作企业经办人列表信息 class ProxyOrganizationOperator < TencentCloud::Common::AbstractModel # @param Id: 对应Agent-ProxyOperator-OpenId。第三方应用平台自定义,对子客企业员的唯一标识。一个OpenId在一个子客企业内唯一对应一个真实员工,不可在其他子客企业内重复使用。(例如,可以使用经办人企业名+员工身份证的hash值,需要第三方应用平台保存),最大64位字符串 # @type Id: String # @param Name: 经办人姓名,最大长度50个字符 # @type Name: String # @param IdCardType: 经办人身份证件类型 # 1.ID_CARD 居民身份证 # 2.HONGKONG_MACAO_AND_TAIWAN 港澳台居民居住证 # 3.HONGKONG_AND_MACAO 港澳居民来往内地通行证 # @type IdCardType: String # @param IdCardNumber: 经办人证件号 # @type IdCardNumber: String # @param Mobile: 经办人手机号,大陆手机号输入11位,暂不支持海外手机号。 # @type Mobile: String # @param DefaultRole: 默认角色,值为以下三个对应的英文: # 业务管理员:admin # 经办人:channel-normal-operator # 业务员:channel-sales-man # @type DefaultRole: String attr_accessor :Id, :Name, :IdCardType, :IdCardNumber, :Mobile, :DefaultRole def initialize(id=nil, name=nil, idcardtype=nil, idcardnumber=nil, mobile=nil, defaultrole=nil) @Id = id @Name = name @IdCardType = idcardtype @IdCardNumber = idcardnumber @Mobile = mobile @DefaultRole = defaultrole end def deserialize(params) @Id = params['Id'] @Name = params['Name'] @IdCardType = params['IdCardType'] @IdCardNumber = params['IdCardNumber'] @Mobile = params['Mobile'] @DefaultRole = params['DefaultRole'] end end # 签署参与者信息 class Recipient < TencentCloud::Common::AbstractModel # @param RecipientId: 签署人唯一标识 # @type RecipientId: String # @param RecipientType: 签署方类型:ENTERPRISE-企业INDIVIDUAL-自然人 # @type RecipientType: String # @param Description: 描述 # @type Description: String # @param RoleName: 签署方备注信息 # @type RoleName: String # @param RequireValidation: 是否需要校验 # @type RequireValidation: Boolean # @param RequireSign: 是否必须填写 # @type RequireSign: Boolean # @param SignType: 签署类型 # @type SignType: Integer # @param RoutingOrder: 签署顺序:数字越小优先级越高 # @type RoutingOrder: Integer # @param IsPromoter: 是否是发起方 # @type IsPromoter: Boolean attr_accessor :RecipientId, :RecipientType, :Description, :RoleName, :RequireValidation, :RequireSign, :SignType, :RoutingOrder, :IsPromoter def initialize(recipientid=nil, recipienttype=nil, description=nil, rolename=nil, requirevalidation=nil, requiresign=nil, signtype=nil, routingorder=nil, ispromoter=nil) @RecipientId = recipientid @RecipientType = recipienttype @Description = description @RoleName = rolename @RequireValidation = requirevalidation @RequireSign = requiresign @SignType = signtype @RoutingOrder = routingorder @IsPromoter = ispromoter end def deserialize(params) @RecipientId = params['RecipientId'] @RecipientType = params['RecipientType'] @Description = params['Description'] @RoleName = params['RoleName'] @RequireValidation = params['RequireValidation'] @RequireSign = params['RequireSign'] @SignType = params['SignType'] @RoutingOrder = params['RoutingOrder'] @IsPromoter = params['IsPromoter'] end end # 解除协议的签署人,如不指定,默认使用待解除流程(即原流程)中的签署人。 # 注意:不支持更换C端(个人身份类型)签署人,如果原流程中含有C端签署人,默认使用原流程中的该签署人。 # 如果需要指定B端(机构身份类型)签署人,其中ReleasedApprover需要传递的参数如下: # ApproverNumber, OrganizationName, ApproverType必传。 # 对于其他身份标识 # - 子客企业指定经办人:OpenId必传,OrganizationOpenId必传; # - 非子客企业:Name、Mobile必传。 class ReleasedApprover < TencentCloud::Common::AbstractModel # @param OrganizationName: 企业签署方工商营业执照上的企业名称,签署方为非发起方企业场景下必传,最大长度64个字符 # @type OrganizationName: String # @param ApproverNumber: 签署人在原流程中的签署人列表中的顺序序号(从0开始,按顺序依次递增),如果不清楚原流程中的签署人列表,可以通过DescribeFlows接口查看 # @type ApproverNumber: Integer # @param ApproverType: 签署人类型,目前仅支持 # ORGANIZATION-企业 # @type ApproverType: String # @param Name: 签署人姓名,最大长度50个字符 # @type Name: String # @param IdCardType: 签署人身份证件类型 # 1.ID_CARD 居民身份证 # 2.HONGKONG_MACAO_AND_TAIWAN 港澳台居民居住证 # 3.HONGKONG_AND_MACAO 港澳居民来往内地通行证 # @type IdCardType: String # @param IdCardNumber: 签署人证件号 # @type IdCardNumber: String # @param Mobile: 签署人手机号,脱敏显示。大陆手机号为11位,暂不支持海外手机号 # @type Mobile: String # @param OrganizationOpenId: 企业签署方在同一第三方应用下的其他合作企业OpenId,签署方为非发起方企业场景下必传,最大长度64个字符 # @type OrganizationOpenId: String # @param OpenId: 用户侧第三方id,最大长度64个字符 # 当签署方为同一第三方应用下的员工时,该字必传 # @type OpenId: String attr_accessor :OrganizationName, :ApproverNumber, :ApproverType, :Name, :IdCardType, :IdCardNumber, :Mobile, :OrganizationOpenId, :OpenId def initialize(organizationname=nil, approvernumber=nil, approvertype=nil, name=nil, idcardtype=nil, idcardnumber=nil, mobile=nil, organizationopenid=nil, openid=nil) @OrganizationName = organizationname @ApproverNumber = approvernumber @ApproverType = approvertype @Name = name @IdCardType = idcardtype @IdCardNumber = idcardnumber @Mobile = mobile @OrganizationOpenId = organizationopenid @OpenId = openid end def deserialize(params) @OrganizationName = params['OrganizationName'] @ApproverNumber = params['ApproverNumber'] @ApproverType = params['ApproverType'] @Name = params['Name'] @IdCardType = params['IdCardType'] @IdCardNumber = params['IdCardNumber'] @Mobile = params['Mobile'] @OrganizationOpenId = params['OrganizationOpenId'] @OpenId = params['OpenId'] end end # 解除协议文档中内容信息,包括但不限于:解除理由、解除后仍然有效的条款-保留条款、原合同事项处理-费用结算、原合同事项处理-其他事项、其他约定等。 class RelieveInfo < TencentCloud::Common::AbstractModel # @param Reason: 解除理由,最大支持200个字 # @type Reason: String # @param RemainInForceItem: 解除后仍然有效的条款,保留条款,最大支持200个字 # @type RemainInForceItem: String # @param OriginalExpenseSettlement: 原合同事项处理-费用结算,最大支持200个字 # @type OriginalExpenseSettlement: String # @param OriginalOtherSettlement: 原合同事项处理-其他事项,最大支持200个字 # @type OriginalOtherSettlement: String # @param OtherDeals: 其他约定,最大支持200个字 # @type OtherDeals: String attr_accessor :Reason, :RemainInForceItem, :OriginalExpenseSettlement, :OriginalOtherSettlement, :OtherDeals def initialize(reason=nil, remaininforceitem=nil, originalexpensesettlement=nil, originalothersettlement=nil, otherdeals=nil) @Reason = reason @RemainInForceItem = remaininforceitem @OriginalExpenseSettlement = originalexpensesettlement @OriginalOtherSettlement = originalothersettlement @OtherDeals = otherdeals end def deserialize(params) @Reason = params['Reason'] @RemainInForceItem = params['RemainInForceItem'] @OriginalExpenseSettlement = params['OriginalExpenseSettlement'] @OriginalOtherSettlement = params['OriginalOtherSettlement'] @OtherDeals = params['OtherDeals'] end end # 催办接口返回详细信息 class RemindFlowRecords < TencentCloud::Common::AbstractModel # @param CanRemind: 是否能够催办 # @type CanRemind: Boolean # @param FlowId: 合同id # @type FlowId: String # @param RemindMessage: 催办详情 # @type RemindMessage: String attr_accessor :CanRemind, :FlowId, :RemindMessage def initialize(canremind=nil, flowid=nil, remindmessage=nil) @CanRemind = canremind @FlowId = flowid @RemindMessage = remindmessage end def deserialize(params) @CanRemind = params['CanRemind'] @FlowId = params['FlowId'] @RemindMessage = params['RemindMessage'] end end # 资源链接信息 class ResourceUrlInfo < TencentCloud::Common::AbstractModel # @param Url: 资源链接地址,过期时间5分钟 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Url: String # @param Name: 资源名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Name: String # @param Type: 资源类型 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Type: String attr_accessor :Url, :Name, :Type def initialize(url=nil, name=nil, type=nil) @Url = url @Name = name @Type = type end def deserialize(params) @Url = params['Url'] @Name = params['Name'] @Type = params['Type'] end end # 一码多扫签署二维码对象 class SignQrCode < TencentCloud::Common::AbstractModel # @param QrCodeId: 二维码id # @type QrCodeId: String # @param QrCodeUrl: 二维码url # @type QrCodeUrl: String # @param ExpiredTime: 二维码过期时间 # @type ExpiredTime: Integer attr_accessor :QrCodeId, :QrCodeUrl, :ExpiredTime def initialize(qrcodeid=nil, qrcodeurl=nil, expiredtime=nil) @QrCodeId = qrcodeid @QrCodeUrl = qrcodeurl @ExpiredTime = expiredtime end def deserialize(params) @QrCodeId = params['QrCodeId'] @QrCodeUrl = params['QrCodeUrl'] @ExpiredTime = params['ExpiredTime'] end end # 一码多扫签署二维码签署信息 class SignUrl < TencentCloud::Common::AbstractModel # @param AppSignUrl: 小程序签署链接 # @type AppSignUrl: String # @param EffectiveTime: 签署链接有效时间 # @type EffectiveTime: String # @param HttpSignUrl: 移动端签署链接 # @type HttpSignUrl: String attr_accessor :AppSignUrl, :EffectiveTime, :HttpSignUrl def initialize(appsignurl=nil, effectivetime=nil, httpsignurl=nil) @AppSignUrl = appsignurl @EffectiveTime = effectivetime @HttpSignUrl = httpsignurl end def deserialize(params) @AppSignUrl = params['AppSignUrl'] @EffectiveTime = params['EffectiveTime'] @HttpSignUrl = params['HttpSignUrl'] end end # 签署链接内容 class SignUrlInfo < TencentCloud::Common::AbstractModel # @param SignUrl: 签署链接,过期时间为30天 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SignUrl: String # @param Deadline: 合同过期时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Deadline: Integer # @param SignOrder: 当流程为顺序签署此参数有效时,数字越小优先级越高,暂不支持并行签署 可选 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SignOrder: Integer # @param SignId: 签署人编号 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SignId: String # @param CustomUserId: 自定义用户编号 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CustomUserId: String # @param Name: 用户姓名 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Name: String # @param Mobile: 用户手机号码 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Mobile: String # @param OrganizationName: 签署参与者机构名字 # 注意:此字段可能返回 null,表示取不到有效值。 # @type OrganizationName: String # @param ApproverType: 参与者类型: # ORGANIZATION 企业经办人 # PERSON 自然人 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ApproverType: String # @param IdCardNumber: 经办人身份证号 # 注意:此字段可能返回 null,表示取不到有效值。 # @type IdCardNumber: String # @param FlowId: 签署链接对应流程Id # 注意:此字段可能返回 null,表示取不到有效值。 # @type FlowId: String # @param OpenId: 企业经办人 用户在渠道的编号 # 注意:此字段可能返回 null,表示取不到有效值。 # @type OpenId: String # @param FlowGroupId: 合同组签署链接对应的合同组id # 注意:此字段可能返回 null,表示取不到有效值。 # @type FlowGroupId: String attr_accessor :SignUrl, :Deadline, :SignOrder, :SignId, :CustomUserId, :Name, :Mobile, :OrganizationName, :ApproverType, :IdCardNumber, :FlowId, :OpenId, :FlowGroupId def initialize(signurl=nil, deadline=nil, signorder=nil, signid=nil, customuserid=nil, name=nil, mobile=nil, organizationname=nil, approvertype=nil, idcardnumber=nil, flowid=nil, openid=nil, flowgroupid=nil) @SignUrl = signurl @Deadline = deadline @SignOrder = signorder @SignId = signid @CustomUserId = customuserid @Name = name @Mobile = mobile @OrganizationName = organizationname @ApproverType = approvertype @IdCardNumber = idcardnumber @FlowId = flowid @OpenId = openid @FlowGroupId = flowgroupid end def deserialize(params) @SignUrl = params['SignUrl'] @Deadline = params['Deadline'] @SignOrder = params['SignOrder'] @SignId = params['SignId'] @CustomUserId = params['CustomUserId'] @Name = params['Name'] @Mobile = params['Mobile'] @OrganizationName = params['OrganizationName'] @ApproverType = params['ApproverType'] @IdCardNumber = params['IdCardNumber'] @FlowId = params['FlowId'] @OpenId = params['OpenId'] @FlowGroupId = params['FlowGroupId'] end end # 企业员工信息 class Staff < TencentCloud::Common::AbstractModel # @param UserId: 员工在电子签平台的id # @type UserId: String # @param DisplayName: 显示的员工名 # @type DisplayName: String # @param Mobile: 员工手机号 # @type Mobile: String # @param Email: 员工邮箱 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Email: String # @param OpenId: 员工在第三方平台id # 注意:此字段可能返回 null,表示取不到有效值。 # @type OpenId: String # @param Roles: 员工角色 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Roles: Array # @param Department: 员工部门 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Department: :class:`Tencentcloud::Essbasic.v20210526.models.Department` # @param Verified: 员工是否实名 # @type Verified: Boolean # @param CreatedOn: 员工创建时间戳 # @type CreatedOn: Integer # @param VerifiedOn: 员工实名时间戳 # @type VerifiedOn: Integer # @param QuiteJob: 员工是否离职:0-未离职,1-离职 # @type QuiteJob: Integer attr_accessor :UserId, :DisplayName, :Mobile, :Email, :OpenId, :Roles, :Department, :Verified, :CreatedOn, :VerifiedOn, :QuiteJob def initialize(userid=nil, displayname=nil, mobile=nil, email=nil, openid=nil, roles=nil, department=nil, verified=nil, createdon=nil, verifiedon=nil, quitejob=nil) @UserId = userid @DisplayName = displayname @Mobile = mobile @Email = email @OpenId = openid @Roles = roles @Department = department @Verified = verified @CreatedOn = createdon @VerifiedOn = verifiedon @QuiteJob = quitejob end def deserialize(params) @UserId = params['UserId'] @DisplayName = params['DisplayName'] @Mobile = params['Mobile'] @Email = params['Email'] @OpenId = params['OpenId'] unless params['Roles'].nil? @Roles = [] params['Roles'].each do |i| staffrole_tmp = StaffRole.new staffrole_tmp.deserialize(i) @Roles << staffrole_tmp end end unless params['Department'].nil? @Department = Department.new @Department.deserialize(params['Department']) end @Verified = params['Verified'] @CreatedOn = params['CreatedOn'] @VerifiedOn = params['VerifiedOn'] @QuiteJob = params['QuiteJob'] end end # 第三方应用集成员工角色信息 class StaffRole < TencentCloud::Common::AbstractModel # @param RoleId: 角色id # 注意:此字段可能返回 null,表示取不到有效值。 # @type RoleId: String # @param RoleName: 角色名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type RoleName: String attr_accessor :RoleId, :RoleName def initialize(roleid=nil, rolename=nil) @RoleId = roleid @RoleName = rolename end def deserialize(params) @RoleId = params['RoleId'] @RoleName = params['RoleName'] end end # 同步经办人失败原因 class SyncFailReason < TencentCloud::Common::AbstractModel # @param Id: 经办人Id # @type Id: String # @param Message: 失败原因 # 例如:Id不符合规范、证件号码不合法等 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Message: String attr_accessor :Id, :Message def initialize(id=nil, message=nil) @Id = id @Message = message end def deserialize(params) @Id = params['Id'] @Message = params['Message'] end end # SyncProxyOrganizationOperators请求参数结构体 class SyncProxyOrganizationOperatorsRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息。 此接口Agent.AppId 和 Agent.ProxyOrganizationOpenId必填。 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param OperatorType: 操作类型,新增:"CREATE",修改:"UPDATE",离职:"RESIGN" # @type OperatorType: String # @param ProxyOrganizationOperators: 经办人信息列表,最大长度200 # @type ProxyOrganizationOperators: Array # @param Operator: 暂未开放 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :OperatorType, :ProxyOrganizationOperators, :Operator def initialize(agent=nil, operatortype=nil, proxyorganizationoperators=nil, operator=nil) @Agent = agent @OperatorType = operatortype @ProxyOrganizationOperators = proxyorganizationoperators @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @OperatorType = params['OperatorType'] unless params['ProxyOrganizationOperators'].nil? @ProxyOrganizationOperators = [] params['ProxyOrganizationOperators'].each do |i| proxyorganizationoperator_tmp = ProxyOrganizationOperator.new proxyorganizationoperator_tmp.deserialize(i) @ProxyOrganizationOperators << proxyorganizationoperator_tmp end end unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # SyncProxyOrganizationOperators返回参数结构体 class SyncProxyOrganizationOperatorsResponse < TencentCloud::Common::AbstractModel # @param Status: Status 同步状态,全部同步失败接口会直接报错 # 1-成功 # 2-部分成功 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Status: Integer # @param FailedList: 同步失败经办人及其失败原因 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FailedList: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Status, :FailedList, :RequestId def initialize(status=nil, failedlist=nil, requestid=nil) @Status = status @FailedList = failedlist @RequestId = requestid end def deserialize(params) @Status = params['Status'] unless params['FailedList'].nil? @FailedList = [] params['FailedList'].each do |i| syncfailreason_tmp = SyncFailReason.new syncfailreason_tmp.deserialize(i) @FailedList << syncfailreason_tmp end end @RequestId = params['RequestId'] end end # SyncProxyOrganization请求参数结构体 class SyncProxyOrganizationRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用信息 # 此接口Agent.AppId、Agent.ProxyOrganizationOpenId必填 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param ProxyOrganizationName: 第三方平台子客企业名称,最大长度64个字符 # @type ProxyOrganizationName: String # @param BusinessLicense: 营业执照正面照(PNG或JPG) base64格式, 大小不超过5M # @type BusinessLicense: String # @param UniformSocialCreditCode: 第三方平台子客企业统一社会信用代码,最大长度200个字符 # @type UniformSocialCreditCode: String # @param ProxyLegalName: 第三方平台子客企业法人/负责人姓名 # @type ProxyLegalName: String # @param Operator: 暂未开放 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :ProxyOrganizationName, :BusinessLicense, :UniformSocialCreditCode, :ProxyLegalName, :Operator def initialize(agent=nil, proxyorganizationname=nil, businesslicense=nil, uniformsocialcreditcode=nil, proxylegalname=nil, operator=nil) @Agent = agent @ProxyOrganizationName = proxyorganizationname @BusinessLicense = businesslicense @UniformSocialCreditCode = uniformsocialcreditcode @ProxyLegalName = proxylegalname @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @ProxyOrganizationName = params['ProxyOrganizationName'] @BusinessLicense = params['BusinessLicense'] @UniformSocialCreditCode = params['UniformSocialCreditCode'] @ProxyLegalName = params['ProxyLegalName'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # SyncProxyOrganization返回参数结构体 class SyncProxyOrganizationResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # 复杂文档合成任务的任务信息 class TaskInfo < TencentCloud::Common::AbstractModel # @param TaskId: 合成任务Id,可以通过 ChannelGetTaskResultApi 接口获取任务信息 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TaskId: String # @param TaskStatus: 任务状态:READY - 任务已完成;NOTREADY - 任务未完成; # 注意:此字段可能返回 null,表示取不到有效值。 # @type TaskStatus: String attr_accessor :TaskId, :TaskStatus def initialize(taskid=nil, taskstatus=nil) @TaskId = taskid @TaskStatus = taskstatus end def deserialize(params) @TaskId = params['TaskId'] @TaskStatus = params['TaskStatus'] end end # 此结构体 (TemplateInfo) 用于描述模板的信息。 class TemplateInfo < TencentCloud::Common::AbstractModel # @param TemplateId: 模板ID # @type TemplateId: String # @param TemplateName: 模板名字 # @type TemplateName: String # @param Description: 模板描述信息 # @type Description: String # @param Components: 模板控件信息结构 # @type Components: Array # @param Recipients: 模板中的流程参与人信息 # @type Recipients: Array # @param SignComponents: 签署区模板信息结构 # @type SignComponents: Array # @param TemplateType: 模板类型:1-静默签;3-普通模板 # @type TemplateType: Integer # @param IsPromoter: 是否是发起人 ,已弃用 # @type IsPromoter: Boolean # @param Creator: 模板的创建者信息 # @type Creator: String # @param CreatedOn: 模板创建的时间戳(精确到秒) # @type CreatedOn: Integer # @param PreviewUrl: 模板的H5预览链接,可以通过浏览器打开此链接预览模板,或者嵌入到iframe中预览模板。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type PreviewUrl: String # @param PdfUrl: 第三方应用集成-模板PDF文件链接 # 注意:此字段可能返回 null,表示取不到有效值。 # @type PdfUrl: String # @param ChannelTemplateId: 关联的平台企业模板ID # @type ChannelTemplateId: String # @param ChannelTemplateName: 关联的平台企业模板名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ChannelTemplateName: String # @param ChannelAutoSave: 0-需要子客企业手动领取平台企业的模板(默认); 1-平台自动设置子客模板 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ChannelAutoSave: Integer # @param TemplateVersion: 模板版本,全数字字符。默认为空,初始版本为yyyyMMdd001。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TemplateVersion: String attr_accessor :TemplateId, :TemplateName, :Description, :Components, :Recipients, :SignComponents, :TemplateType, :IsPromoter, :Creator, :CreatedOn, :PreviewUrl, :PdfUrl, :ChannelTemplateId, :ChannelTemplateName, :ChannelAutoSave, :TemplateVersion def initialize(templateid=nil, templatename=nil, description=nil, components=nil, recipients=nil, signcomponents=nil, templatetype=nil, ispromoter=nil, creator=nil, createdon=nil, previewurl=nil, pdfurl=nil, channeltemplateid=nil, channeltemplatename=nil, channelautosave=nil, templateversion=nil) @TemplateId = templateid @TemplateName = templatename @Description = description @Components = components @Recipients = recipients @SignComponents = signcomponents @TemplateType = templatetype @IsPromoter = ispromoter @Creator = creator @CreatedOn = createdon @PreviewUrl = previewurl @PdfUrl = pdfurl @ChannelTemplateId = channeltemplateid @ChannelTemplateName = channeltemplatename @ChannelAutoSave = channelautosave @TemplateVersion = templateversion end def deserialize(params) @TemplateId = params['TemplateId'] @TemplateName = params['TemplateName'] @Description = params['Description'] unless params['Components'].nil? @Components = [] params['Components'].each do |i| component_tmp = Component.new component_tmp.deserialize(i) @Components << component_tmp end end unless params['Recipients'].nil? @Recipients = [] params['Recipients'].each do |i| recipient_tmp = Recipient.new recipient_tmp.deserialize(i) @Recipients << recipient_tmp end end unless params['SignComponents'].nil? @SignComponents = [] params['SignComponents'].each do |i| component_tmp = Component.new component_tmp.deserialize(i) @SignComponents << component_tmp end end @TemplateType = params['TemplateType'] @IsPromoter = params['IsPromoter'] @Creator = params['Creator'] @CreatedOn = params['CreatedOn'] @PreviewUrl = params['PreviewUrl'] @PdfUrl = params['PdfUrl'] @ChannelTemplateId = params['ChannelTemplateId'] @ChannelTemplateName = params['ChannelTemplateName'] @ChannelAutoSave = params['ChannelAutoSave'] @TemplateVersion = params['TemplateVersion'] end end # 此结构体 (UploadFile) 用于描述多文件上传的文件信息。 class UploadFile < TencentCloud::Common::AbstractModel # @param FileBody: Base64编码后的文件内容 # @type FileBody: String # @param FileName: 文件名 # @type FileName: String attr_accessor :FileBody, :FileName def initialize(filebody=nil, filename=nil) @FileBody = filebody @FileName = filename end def deserialize(params) @FileBody = params['FileBody'] @FileName = params['FileName'] end end # UploadFiles请求参数结构体 class UploadFilesRequest < TencentCloud::Common::AbstractModel # @param Agent: 应用相关信息,若是第三方应用集成调用 appid 和proxyappid 必填 # @type Agent: :class:`Tencentcloud::Essbasic.v20210526.models.Agent` # @param BusinessType: 文件对应业务类型 # 1. TEMPLATE - 模板; 文件类型:.pdf/.doc/.docx/.html # 2. DOCUMENT - 签署过程及签署后的合同文档/图片控件 文件类型:.pdf/.doc/.docx/.jpg/.png/.xls.xlsx/.html # @type BusinessType: String # @param FileInfos: 上传文件内容数组,最多支持20个文件 # @type FileInfos: Array # @param Operator: 操作者的信息 # @type Operator: :class:`Tencentcloud::Essbasic.v20210526.models.UserInfo` attr_accessor :Agent, :BusinessType, :FileInfos, :Operator def initialize(agent=nil, businesstype=nil, fileinfos=nil, operator=nil) @Agent = agent @BusinessType = businesstype @FileInfos = fileinfos @Operator = operator end def deserialize(params) unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @BusinessType = params['BusinessType'] unless params['FileInfos'].nil? @FileInfos = [] params['FileInfos'].each do |i| uploadfile_tmp = UploadFile.new uploadfile_tmp.deserialize(i) @FileInfos << uploadfile_tmp end end unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # UploadFiles返回参数结构体 class UploadFilesResponse < TencentCloud::Common::AbstractModel # @param FileIds: 文件id数组,有效期一个小时;有效期内此文件id可以反复使用 # @type FileIds: Array # @param TotalCount: 上传成功文件数量 # @type TotalCount: Integer # @param FileUrls: 文件Url # @type FileUrls: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :FileIds, :TotalCount, :FileUrls, :RequestId def initialize(fileids=nil, totalcount=nil, fileurls=nil, requestid=nil) @FileIds = fileids @TotalCount = totalcount @FileUrls = fileurls @RequestId = requestid end def deserialize(params) @FileIds = params['FileIds'] @TotalCount = params['TotalCount'] @FileUrls = params['FileUrls'] @RequestId = params['RequestId'] end end # 用量明细 class UsageDetail < TencentCloud::Common::AbstractModel # @param ProxyOrganizationOpenId: 子客企业唯一标识 # @type ProxyOrganizationOpenId: String # @param ProxyOrganizationName: 子客企业名 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ProxyOrganizationName: String # @param Date: 日期,当需要汇总数据时日期为空 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Date: String # @param Usage: 消耗数量 # @type Usage: Integer # @param Cancel: 撤回数量 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Cancel: Integer # @param FlowChannel: 消耗渠道 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FlowChannel: String attr_accessor :ProxyOrganizationOpenId, :ProxyOrganizationName, :Date, :Usage, :Cancel, :FlowChannel def initialize(proxyorganizationopenid=nil, proxyorganizationname=nil, date=nil, usage=nil, cancel=nil, flowchannel=nil) @ProxyOrganizationOpenId = proxyorganizationopenid @ProxyOrganizationName = proxyorganizationname @Date = date @Usage = usage @Cancel = cancel @FlowChannel = flowchannel end def deserialize(params) @ProxyOrganizationOpenId = params['ProxyOrganizationOpenId'] @ProxyOrganizationName = params['ProxyOrganizationName'] @Date = params['Date'] @Usage = params['Usage'] @Cancel = params['Cancel'] @FlowChannel = params['FlowChannel'] end end # 接口调用者信息 class UserInfo < TencentCloud::Common::AbstractModel # @param OpenId: 第三方应用平台自定义,对应第三方平台子客企业员的唯一标识。一个OpenId在一个子客企业内唯一对应一个真实员工,不可在其他子客企业内重复使用。(例如,可以使用经办人企业名+员工身份证的hash值,需要第三方应用平台保存),最大64位字符串 # @type OpenId: String # @param Channel: 内部参数,暂未开放使用 # @type Channel: String # @param CustomUserId: 内部参数,暂未开放使用 # @type CustomUserId: String # @param ClientIp: 内部参数,暂未开放使用 # @type ClientIp: String # @param ProxyIp: 内部参数,暂未开放使用 # @type ProxyIp: String attr_accessor :OpenId, :Channel, :CustomUserId, :ClientIp, :ProxyIp def initialize(openid=nil, channel=nil, customuserid=nil, clientip=nil, proxyip=nil) @OpenId = openid @Channel = channel @CustomUserId = customuserid @ClientIp = clientip @ProxyIp = proxyip end def deserialize(params) @OpenId = params['OpenId'] @Channel = params['Channel'] @CustomUserId = params['CustomUserId'] @ClientIp = params['ClientIp'] @ProxyIp = params['ProxyIp'] end end end end end