# 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 Ess
module V20201111
# 应用相关信息
class Agent < TencentCloud::Common::AbstractModel
def initialize()
end
def deserialize(params)
end
end
# 参与者信息
class ApproverInfo < TencentCloud::Common::AbstractModel
# @param ApproverType: 参与者类型:
# 0:企业
# 1:个人
# 3:企业静默签署
# 注:类型为3(企业静默签署)时,此接口会默认完成该签署方的签署。静默签署仅进行盖章操作,不能自动签名。
# @type ApproverType: Integer
# @param ApproverName: 本环节需要操作人的名字
# @type ApproverName: String
# @param ApproverMobile: 本环节需要操作人的手机号
# @type ApproverMobile: String
# @param SignComponents: 本环节操作人签署控件配置
# @type SignComponents: Array
# @param OrganizationName: 如果是企业,则为企业的名字
# @type OrganizationName: String
# @param ApproverIdCardNumber: 身份证号
# @type ApproverIdCardNumber: String
# @param ApproverIdCardType: 证件类型
# ID_CARD 身份证
# HONGKONG_AND_MACAO 港澳居民来往内地通行证
# HONGKONG_MACAO_AND_TAIWAN 港澳台居民居住证(格式同居民身份证)
# @type ApproverIdCardType: String
# @param NotifyType: sms--短信,none--不通知
# @type NotifyType: String
# @param ApproverRole: 1--收款人、2--开具人、3--见证人
# @type ApproverRole: Integer
# @param VerifyChannel: 签署意愿确认渠道,WEIXINAPP:人脸识别
# @type VerifyChannel: Array
# @param PreReadTime: 合同的强制预览时间:3~300s,未指定则按合同页数计算
# @type PreReadTime: Integer
# @param UserId: 签署人userId,传此字段则不用传姓名、手机号
# @type UserId: String
# @param ApproverSource: 签署人用户来源,企微侧用户请传入:WEWORKAPP
# @type ApproverSource: String
# @param CustomApproverTag: 客户自定义签署人标识,64位长度,保证唯一,非企微场景不使用此字段
# @type CustomApproverTag: String
# @param ApproverOption: 签署人个性化能力值
# @type ApproverOption: :class:`Tencentcloud::Ess.v20201111.models.ApproverOption`
attr_accessor :ApproverType, :ApproverName, :ApproverMobile, :SignComponents, :OrganizationName, :ApproverIdCardNumber, :ApproverIdCardType, :NotifyType, :ApproverRole, :VerifyChannel, :PreReadTime, :UserId, :ApproverSource, :CustomApproverTag, :ApproverOption
def initialize(approvertype=nil, approvername=nil, approvermobile=nil, signcomponents=nil, organizationname=nil, approveridcardnumber=nil, approveridcardtype=nil, notifytype=nil, approverrole=nil, verifychannel=nil, prereadtime=nil, userid=nil, approversource=nil, customapprovertag=nil, approveroption=nil)
@ApproverType = approvertype
@ApproverName = approvername
@ApproverMobile = approvermobile
@SignComponents = signcomponents
@OrganizationName = organizationname
@ApproverIdCardNumber = approveridcardnumber
@ApproverIdCardType = approveridcardtype
@NotifyType = notifytype
@ApproverRole = approverrole
@VerifyChannel = verifychannel
@PreReadTime = prereadtime
@UserId = userid
@ApproverSource = approversource
@CustomApproverTag = customapprovertag
@ApproverOption = approveroption
end
def deserialize(params)
@ApproverType = params['ApproverType']
@ApproverName = params['ApproverName']
@ApproverMobile = params['ApproverMobile']
unless params['SignComponents'].nil?
@SignComponents = []
params['SignComponents'].each do |i|
component_tmp = Component.new
component_tmp.deserialize(i)
@SignComponents << component_tmp
end
end
@OrganizationName = params['OrganizationName']
@ApproverIdCardNumber = params['ApproverIdCardNumber']
@ApproverIdCardType = params['ApproverIdCardType']
@NotifyType = params['NotifyType']
@ApproverRole = params['ApproverRole']
@VerifyChannel = params['VerifyChannel']
@PreReadTime = params['PreReadTime']
@UserId = params['UserId']
@ApproverSource = params['ApproverSource']
@CustomApproverTag = params['CustomApproverTag']
unless params['ApproverOption'].nil?
@ApproverOption = ApproverOption.new
@ApproverOption.deserialize(params['ApproverOption'])
end
end
end
# 签署人个性化能力信息
class ApproverOption < TencentCloud::Common::AbstractModel
# @param NoRefuse: 是否可以拒签 false-可以拒签,默认 true-不可以拒签
# @type NoRefuse: Boolean
# @param NoTransfer: 是否可以转发 false-可以转发,默认 true-不可以转发
# @type NoTransfer: Boolean
attr_accessor :NoRefuse, :NoTransfer
def initialize(norefuse=nil, notransfer=nil)
@NoRefuse = norefuse
@NoTransfer = notransfer
end
def deserialize(params)
@NoRefuse = params['NoRefuse']
@NoTransfer = params['NoTransfer']
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 AuthorizedUser < TencentCloud::Common::AbstractModel
# @param UserId: 用户id
# @type UserId: String
attr_accessor :UserId
def initialize(userid=nil)
@UserId = userid
end
def deserialize(params)
@UserId = params['UserId']
end
end
# 此结构体 (Caller) 用于描述调用方属性。
class Caller < TencentCloud::Common::AbstractModel
# @param ApplicationId: 应用号
# @type ApplicationId: String
# @param OrganizationId: 主机构ID
# @type OrganizationId: String
# @param OperatorId: 经办人的用户ID
# @type OperatorId: String
# @param SubOrganizationId: 下属机构ID
# @type SubOrganizationId: String
attr_accessor :ApplicationId, :OrganizationId, :OperatorId, :SubOrganizationId
def initialize(applicationid=nil, organizationid=nil, operatorid=nil, suborganizationid=nil)
@ApplicationId = applicationid
@OrganizationId = organizationid
@OperatorId = operatorid
@SubOrganizationId = suborganizationid
end
def deserialize(params)
@ApplicationId = params['ApplicationId']
@OrganizationId = params['OrganizationId']
@OperatorId = params['OperatorId']
@SubOrganizationId = params['SubOrganizationId']
end
end
# CancelFlow请求参数结构体
class CancelFlowRequest < TencentCloud::Common::AbstractModel
# @param Operator: 调用方用户信息,userId 必填
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @param FlowId: 签署流程id
# @type FlowId: String
# @param CancelMessage: 撤销原因,最长200个字符;
# @type CancelMessage: String
# @param Agent: 应用相关信息
# @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent`
attr_accessor :Operator, :FlowId, :CancelMessage, :Agent
def initialize(operator=nil, flowid=nil, cancelmessage=nil, agent=nil)
@Operator = operator
@FlowId = flowid
@CancelMessage = cancelmessage
@Agent = agent
end
def deserialize(params)
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
@FlowId = params['FlowId']
@CancelMessage = params['CancelMessage']
unless params['Agent'].nil?
@Agent = Agent.new
@Agent.deserialize(params['Agent'])
end
end
end
# CancelFlow返回参数结构体
class CancelFlowResponse < 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
# CancelMultiFlowSignQRCode请求参数结构体
class CancelMultiFlowSignQRCodeRequest < TencentCloud::Common::AbstractModel
# @param Operator: 用户信息
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @param QrCodeId: 二维码id
# @type QrCodeId: String
# @param Agent: 应用信息
# @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent`
attr_accessor :Operator, :QrCodeId, :Agent
def initialize(operator=nil, qrcodeid=nil, agent=nil)
@Operator = operator
@QrCodeId = qrcodeid
@Agent = agent
end
def deserialize(params)
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
@QrCodeId = params['QrCodeId']
unless params['Agent'].nil?
@Agent = Agent.new
@Agent.deserialize(params['Agent'])
end
end
end
# CancelMultiFlowSignQRCode返回参数结构体
class CancelMultiFlowSignQRCodeResponse < 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 CcInfo < TencentCloud::Common::AbstractModel
# @param Mobile: 被抄送人手机号
# @type Mobile: String
attr_accessor :Mobile
def initialize(mobile=nil)
@Mobile = mobile
end
def deserialize(params)
@Mobile = params['Mobile']
end
end
# 模板控件信息
class Component < TencentCloud::Common::AbstractModel
# @param ComponentType: 如果是Component控件类型,则可选的字段为:
# TEXT - 普通文本控件;
# MULTI_LINE_TEXT - 多行文本控件;
# CHECK_BOX - 勾选框控件;
# FILL_IMAGE - 图片控件;
# DYNAMIC_TABLE - 动态表格控件;
# ATTACHMENT - 附件控件;
# SELECTOR - 选择器控件;
# DATE - 日期控件;默认是格式化为xxxx年xx月xx日;
# DISTRICT - 省市区行政区划控件;
# 如果是SignComponent控件类型,则可选的字段为
# SIGN_SEAL - 签署印章控件;
# SIGN_DATE - 签署日期控件;
# SIGN_SIGNATURE - 用户签名控件;
# SIGN_PERSONAL_SEAL - 个人签署印章控件(使用文件发起暂不支持此类型);
# SIGN_PAGING_SEAL - 骑缝章;若文件发起,需要对应填充ComponentPosY、ComponentWidth、ComponentHeight
# SIGN_OPINION - 签署意见控件,用户需要根据配置的签署意见内容,完成对意见内容的确认
# 表单域的控件不能作为印章和签名控件
# @type ComponentType: String
# @param FileIndex: 控件所属文件的序号(模板中的resourceId排列序号,取值为:0-N)
# @type FileIndex: Integer
# @param ComponentHeight: 参数控件高度,单位pt
# @type ComponentHeight: Float
# @param ComponentWidth: 参数控件宽度,单位pt
# @type ComponentWidth: Float
# @param ComponentPage: 参数控件所在页码,取值为:1-N
# @type ComponentPage: Integer
# @param ComponentPosX: 参数控件X位置,单位pt
# @type ComponentPosX: Float
# @param ComponentPosY: 参数控件Y位置,单位pt
# @type ComponentPosY: Float
# @param ComponentId: GenerateMode==KEYWORD 指定关键字
# @type ComponentId: String
# @param ComponentName: GenerateMode==FIELD 指定表单域名称
# @type ComponentName: String
# @param ComponentRequired: 是否必选,默认为false
# @type ComponentRequired: Boolean
# @param ComponentRecipientId: 控件关联的签署人ID
# @type ComponentRecipientId: String
# @param ComponentExtra: 扩展参数:
# 为JSON格式。
# 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 IsFormType: 是否是表单域类型,默认不存在
# @type IsFormType: Boolean
# @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
# DATE - 默认是格式化为xxxx年xx月xx日
# SIGN_SEAL - 印章ID,于控制台查询获取
# SIGN_PAGING_SEAL - 可以指定印章ID,于控制台查询获取
# @type ComponentValue: String
# @param GenerateMode: NORMAL 正常模式,使用坐标制定签署控件位置
# FIELD 表单域,需使用ComponentName指定表单域名称
# KEYWORD 关键字,使用ComponentId指定关键字
# @type GenerateMode: String
# @param ComponentDateFontSize: 日期签署控件的字号,默认为 12
# @type ComponentDateFontSize: Integer
# @param ChannelComponentId: 渠道版控件 id 标识
# @type ChannelComponentId: String
# @param OffsetX: 指定关键字时横坐标偏移量,单位pt
# @type OffsetX: Float
# @param OffsetY: 指定关键字时纵坐标偏移量,单位pt
# @type OffsetY: Float
# @param ChannelComponentSource: //渠道子客控件来源。0-渠道指定;1-用户自定义
# @type ChannelComponentSource: Integer
# @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 :ComponentType, :FileIndex, :ComponentHeight, :ComponentWidth, :ComponentPage, :ComponentPosX, :ComponentPosY, :ComponentId, :ComponentName, :ComponentRequired, :ComponentRecipientId, :ComponentExtra, :IsFormType, :ComponentValue, :GenerateMode, :ComponentDateFontSize, :ChannelComponentId, :OffsetX, :OffsetY, :ChannelComponentSource, :KeywordOrder, :KeywordPage, :RelativeLocation, :KeywordIndexes
def initialize(componenttype=nil, fileindex=nil, componentheight=nil, componentwidth=nil, componentpage=nil, componentposx=nil, componentposy=nil, componentid=nil, componentname=nil, componentrequired=nil, componentrecipientid=nil, componentextra=nil, isformtype=nil, componentvalue=nil, generatemode=nil, componentdatefontsize=nil, channelcomponentid=nil, offsetx=nil, offsety=nil, channelcomponentsource=nil, keywordorder=nil, keywordpage=nil, relativelocation=nil, keywordindexes=nil)
@ComponentType = componenttype
@FileIndex = fileindex
@ComponentHeight = componentheight
@ComponentWidth = componentwidth
@ComponentPage = componentpage
@ComponentPosX = componentposx
@ComponentPosY = componentposy
@ComponentId = componentid
@ComponentName = componentname
@ComponentRequired = componentrequired
@ComponentRecipientId = componentrecipientid
@ComponentExtra = componentextra
@IsFormType = isformtype
@ComponentValue = componentvalue
@GenerateMode = generatemode
@ComponentDateFontSize = componentdatefontsize
@ChannelComponentId = channelcomponentid
@OffsetX = offsetx
@OffsetY = offsety
@ChannelComponentSource = channelcomponentsource
@KeywordOrder = keywordorder
@KeywordPage = keywordpage
@RelativeLocation = relativelocation
@KeywordIndexes = keywordindexes
end
def deserialize(params)
@ComponentType = params['ComponentType']
@FileIndex = params['FileIndex']
@ComponentHeight = params['ComponentHeight']
@ComponentWidth = params['ComponentWidth']
@ComponentPage = params['ComponentPage']
@ComponentPosX = params['ComponentPosX']
@ComponentPosY = params['ComponentPosY']
@ComponentId = params['ComponentId']
@ComponentName = params['ComponentName']
@ComponentRequired = params['ComponentRequired']
@ComponentRecipientId = params['ComponentRecipientId']
@ComponentExtra = params['ComponentExtra']
@IsFormType = params['IsFormType']
@ComponentValue = params['ComponentValue']
@GenerateMode = params['GenerateMode']
@ComponentDateFontSize = params['ComponentDateFontSize']
@ChannelComponentId = params['ChannelComponentId']
@OffsetX = params['OffsetX']
@OffsetY = params['OffsetY']
@ChannelComponentSource = params['ChannelComponentSource']
@KeywordOrder = params['KeywordOrder']
@KeywordPage = params['KeywordPage']
@RelativeLocation = params['RelativeLocation']
@KeywordIndexes = params['KeywordIndexes']
end
end
# CreateBatchCancelFlowUrl请求参数结构体
class CreateBatchCancelFlowUrlRequest < TencentCloud::Common::AbstractModel
# @param Operator: 调用方用户信息,userId 必填
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @param FlowIds: 需要执行撤回的签署流程id数组,最多100个
# @type FlowIds: Array
attr_accessor :Operator, :FlowIds
def initialize(operator=nil, flowids=nil)
@Operator = operator
@FlowIds = flowids
end
def deserialize(params)
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
@FlowIds = params['FlowIds']
end
end
# CreateBatchCancelFlowUrl返回参数结构体
class CreateBatchCancelFlowUrlResponse < TencentCloud::Common::AbstractModel
# @param BatchCancelFlowUrl: 批量撤回签署流程链接
# @type BatchCancelFlowUrl: String
# @param FailMessages: 签署流程撤回失败信息
# @type FailMessages: Array
# @param UrlExpireOn: 签署连接过期时间字符串:年月日-时分秒
# @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
# CreateConvertTaskApi请求参数结构体
class CreateConvertTaskApiRequest < TencentCloud::Common::AbstractModel
# @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::Ess.v20201111.models.UserInfo`
# @param Agent: 应用号信息
# @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent`
# @param Organization: 暂未开放
# @type Organization: :class:`Tencentcloud::Ess.v20201111.models.OrganizationInfo`
attr_accessor :ResourceType, :ResourceName, :ResourceId, :Operator, :Agent, :Organization
def initialize(resourcetype=nil, resourcename=nil, resourceid=nil, operator=nil, agent=nil, organization=nil)
@ResourceType = resourcetype
@ResourceName = resourcename
@ResourceId = resourceid
@Operator = operator
@Agent = agent
@Organization = organization
end
def deserialize(params)
@ResourceType = params['ResourceType']
@ResourceName = params['ResourceName']
@ResourceId = params['ResourceId']
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
unless params['Agent'].nil?
@Agent = Agent.new
@Agent.deserialize(params['Agent'])
end
unless params['Organization'].nil?
@Organization = OrganizationInfo.new
@Organization.deserialize(params['Organization'])
end
end
end
# CreateConvertTaskApi返回参数结构体
class CreateConvertTaskApiResponse < 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
# CreateDocument请求参数结构体
class CreateDocumentRequest < TencentCloud::Common::AbstractModel
# @param Operator: 调用方用户信息,userId 必填
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @param FlowId: 签署流程编号,由CreateFlow接口返回
# @type FlowId: String
# @param TemplateId: 用户上传的模板ID
# @type TemplateId: String
# @param FileNames: 文件名列表,单个文件名最大长度200个字符,暂时仅支持单文件发起
# @type FileNames: Array
# @param FormFields: 内容控件信息数组
# @type FormFields: Array
# @param NeedPreview: 是否需要生成预览文件 默认不生成;
# 预览链接有效期300秒;
# @type NeedPreview: Boolean
# @param PreviewType: 预览链接类型 默认:0-文件流, 1- H5链接 注意:此参数在NeedPreview 为true 时有效,
# @type PreviewType: Integer
# @param Agent: 应用相关信息
# @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent`
# @param ClientToken: 客户端Token,保持接口幂等性,最大长度64个字符
# @type ClientToken: String
attr_accessor :Operator, :FlowId, :TemplateId, :FileNames, :FormFields, :NeedPreview, :PreviewType, :Agent, :ClientToken
def initialize(operator=nil, flowid=nil, templateid=nil, filenames=nil, formfields=nil, needpreview=nil, previewtype=nil, agent=nil, clienttoken=nil)
@Operator = operator
@FlowId = flowid
@TemplateId = templateid
@FileNames = filenames
@FormFields = formfields
@NeedPreview = needpreview
@PreviewType = previewtype
@Agent = agent
@ClientToken = clienttoken
end
def deserialize(params)
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
@FlowId = params['FlowId']
@TemplateId = params['TemplateId']
@FileNames = params['FileNames']
unless params['FormFields'].nil?
@FormFields = []
params['FormFields'].each do |i|
formfield_tmp = FormField.new
formfield_tmp.deserialize(i)
@FormFields << formfield_tmp
end
end
@NeedPreview = params['NeedPreview']
@PreviewType = params['PreviewType']
unless params['Agent'].nil?
@Agent = Agent.new
@Agent.deserialize(params['Agent'])
end
@ClientToken = params['ClientToken']
end
end
# CreateDocument返回参数结构体
class CreateDocumentResponse < TencentCloud::Common::AbstractModel
# @param DocumentId: 签署流程电子文档ID
# @type DocumentId: String
# @param PreviewFileUrl: 签署流程文件的预览地址, 5分钟内有效。仅当NeedPreview为true 时返回
# 注意:此字段可能返回 null,表示取不到有效值。
# @type PreviewFileUrl: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :DocumentId, :PreviewFileUrl, :RequestId
def initialize(documentid=nil, previewfileurl=nil, requestid=nil)
@DocumentId = documentid
@PreviewFileUrl = previewfileurl
@RequestId = requestid
end
def deserialize(params)
@DocumentId = params['DocumentId']
@PreviewFileUrl = params['PreviewFileUrl']
@RequestId = params['RequestId']
end
end
# CreateFlowApprovers请求参数结构体
class CreateFlowApproversRequest < TencentCloud::Common::AbstractModel
# @param Operator: 调用方用户信息,userId 必填
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @param FlowId: 签署流程编号
# @type FlowId: String
# @param Approvers: 补充签署人信息
# @type Approvers: Array
attr_accessor :Operator, :FlowId, :Approvers
def initialize(operator=nil, flowid=nil, approvers=nil)
@Operator = operator
@FlowId = flowid
@Approvers = approvers
end
def deserialize(params)
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
@FlowId = params['FlowId']
unless params['Approvers'].nil?
@Approvers = []
params['Approvers'].each do |i|
fillapproverinfo_tmp = FillApproverInfo.new
fillapproverinfo_tmp.deserialize(i)
@Approvers << fillapproverinfo_tmp
end
end
end
end
# CreateFlowApprovers返回参数结构体
class CreateFlowApproversResponse < 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
# CreateFlowByFiles请求参数结构体
class CreateFlowByFilesRequest < TencentCloud::Common::AbstractModel
# @param Operator: 调用方用户信息,userId 必填
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @param FlowName: 签署流程名称,最大长度200个字符
# @type FlowName: String
# @param Approvers: 签署参与者信息,最大限制50方
# @type Approvers: Array
# @param FileIds: 签署pdf文件的资源编号列表,通过UploadFiles接口获取,暂时仅支持单文件发起
# @type FileIds: Array
# @param FlowType: 签署流程的类型(如销售合同/入职合同等),最大长度200个字符
# @type FlowType: String
# @param Components: 经办人内容控件配置
# @type Components: Array
# @param CcInfos: 被抄送人的信息列表。
# 注:此功能为白名单功能,若有需要,请联系电子签客服开白使用
# @type CcInfos: Array
# @param NeedPreview: 是否需要预览,true:预览模式,false:非预览(默认);
# 预览链接有效期300秒;
# 注:如果使用“预览模式”,出参会返回合同预览链接 PreviewUrl,不会正式发起合同,且出参不会返回签署流程编号 FlowId;如果使用“非预览”,则会正常返回签署流程编号 FlowId,不会生成合同预览链接 PreviewUrl。
# @type NeedPreview: Boolean
# @param PreviewType: 预览链接类型 默认:0-文件流, 1- H5链接 注意:此参数在NeedPreview 为true 时有效,
# @type PreviewType: Integer
# @param Deadline: 签署流程的签署截止时间。
# 值为unix时间戳,精确到秒,不传默认为当前时间一年后
# @type Deadline: Integer
# @param Unordered: 发送类型:
# true:无序签
# false:有序签
# 注:默认为false(有序签)
# @type Unordered: Boolean
# @param CustomShowMap: 合同显示的页卡模板,说明:只支持{合同名称}, {发起方企业}, {发起方姓名}, {签署方N企业}, {签署方N姓名},且N不能超过签署人的数量,N从1开始
# @type CustomShowMap: String
# @param NeedSignReview: 发起方企业的签署人进行签署操作是否需要企业内部审批。使用此功能需要发起方企业有参与签署。
# 若设置为true,审核结果需通过接口 CreateFlowSignReview 通知电子签,审核通过后,发起方企业签署人方可进行签署操作,否则会阻塞其签署操作。
# 注:企业可以通过此功能与企业内部的审批流程进行关联,支持手动、静默签署合同。
# @type NeedSignReview: Boolean
# @param UserData: 用户自定义字段,回调的时候会进行透传,长度需要小于20480
# @type UserData: String
# @param Agent: 应用号信息
# @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent`
# @param ApproverVerifyType: 签署人校验方式
# VerifyCheck: 人脸识别(默认)
# MobileCheck:手机号验证
# 参数说明:可选人脸识别或手机号验证两种方式,若选择后者,未实名个人签署方在签署合同时,无需经过实名认证和意愿确认两次人脸识别,该能力仅适用于个人签署方。
# @type ApproverVerifyType: String
# @param FlowDescription: 签署流程描述,最大长度1000个字符
# @type FlowDescription: String
# @param SignBeanTag: 标识是否允许发起后添加控件。0为不允许1为允许。如果为1,创建的时候不能有签署控件,只能创建后添加。注意发起后添加控件功能不支持添加骑缝章和签批控件
# @type SignBeanTag: Integer
attr_accessor :Operator, :FlowName, :Approvers, :FileIds, :FlowType, :Components, :CcInfos, :NeedPreview, :PreviewType, :Deadline, :Unordered, :CustomShowMap, :NeedSignReview, :UserData, :Agent, :ApproverVerifyType, :FlowDescription, :SignBeanTag
def initialize(operator=nil, flowname=nil, approvers=nil, fileids=nil, flowtype=nil, components=nil, ccinfos=nil, needpreview=nil, previewtype=nil, deadline=nil, unordered=nil, customshowmap=nil, needsignreview=nil, userdata=nil, agent=nil, approververifytype=nil, flowdescription=nil, signbeantag=nil)
@Operator = operator
@FlowName = flowname
@Approvers = approvers
@FileIds = fileids
@FlowType = flowtype
@Components = components
@CcInfos = ccinfos
@NeedPreview = needpreview
@PreviewType = previewtype
@Deadline = deadline
@Unordered = unordered
@CustomShowMap = customshowmap
@NeedSignReview = needsignreview
@UserData = userdata
@Agent = agent
@ApproverVerifyType = approververifytype
@FlowDescription = flowdescription
@SignBeanTag = signbeantag
end
def deserialize(params)
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
@FlowName = params['FlowName']
unless params['Approvers'].nil?
@Approvers = []
params['Approvers'].each do |i|
approverinfo_tmp = ApproverInfo.new
approverinfo_tmp.deserialize(i)
@Approvers << approverinfo_tmp
end
end
@FileIds = params['FileIds']
@FlowType = params['FlowType']
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['CcInfos'].nil?
@CcInfos = []
params['CcInfos'].each do |i|
ccinfo_tmp = CcInfo.new
ccinfo_tmp.deserialize(i)
@CcInfos << ccinfo_tmp
end
end
@NeedPreview = params['NeedPreview']
@PreviewType = params['PreviewType']
@Deadline = params['Deadline']
@Unordered = params['Unordered']
@CustomShowMap = params['CustomShowMap']
@NeedSignReview = params['NeedSignReview']
@UserData = params['UserData']
unless params['Agent'].nil?
@Agent = Agent.new
@Agent.deserialize(params['Agent'])
end
@ApproverVerifyType = params['ApproverVerifyType']
@FlowDescription = params['FlowDescription']
@SignBeanTag = params['SignBeanTag']
end
end
# CreateFlowByFiles返回参数结构体
class CreateFlowByFilesResponse < TencentCloud::Common::AbstractModel
# @param FlowId: 签署流程编号。
# 注:如入参 是否需要预览 NeedPreview 设置为 true,不会正式发起合同,此处不会有值返回;如入参 是否需要预览 NeedPreview 设置为 false,此处会正常返回签署流程编号 FlowId。
# @type FlowId: String
# @param PreviewUrl: 合同预览链接。
# 注:如入参 是否需要预览 NeedPreview 设置为 true,会开启“预览模式”,此处会返回预览链接;如入参 是否需要预览 NeedPreview 设置为 false,此处不会有值返回。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type PreviewUrl: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :FlowId, :PreviewUrl, :RequestId
def initialize(flowid=nil, previewurl=nil, requestid=nil)
@FlowId = flowid
@PreviewUrl = previewurl
@RequestId = requestid
end
def deserialize(params)
@FlowId = params['FlowId']
@PreviewUrl = params['PreviewUrl']
@RequestId = params['RequestId']
end
end
# CreateFlowEvidenceReport请求参数结构体
class CreateFlowEvidenceReportRequest < TencentCloud::Common::AbstractModel
# @param Operator: 调用方用户信息,userId 必填
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @param FlowId: 签署流程编号
# @type FlowId: String
attr_accessor :Operator, :FlowId
def initialize(operator=nil, flowid=nil)
@Operator = operator
@FlowId = flowid
end
def deserialize(params)
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
@FlowId = params['FlowId']
end
end
# CreateFlowEvidenceReport返回参数结构体
class CreateFlowEvidenceReportResponse < TencentCloud::Common::AbstractModel
# @param ReportId: 出证报告 ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ReportId: String
# @param ReportUrl: 废除,字段无效
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ReportUrl: String
# @param Status: 执行中:EvidenceStatusExecuting
# 成功:EvidenceStatusSuccess
# 失败:EvidenceStatusFailed
# @type Status: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :ReportId, :ReportUrl, :Status, :RequestId
def initialize(reportid=nil, reporturl=nil, status=nil, requestid=nil)
@ReportId = reportid
@ReportUrl = reporturl
@Status = status
@RequestId = requestid
end
def deserialize(params)
@ReportId = params['ReportId']
@ReportUrl = params['ReportUrl']
@Status = params['Status']
@RequestId = params['RequestId']
end
end
# CreateFlow请求参数结构体
class CreateFlowRequest < TencentCloud::Common::AbstractModel
# @param Operator: 调用方用户信息,userId 必填
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @param FlowName: 签署流程名称,最大长度200个字符
# @type FlowName: String
# @param Approvers: 签署流程参与者信息,最大限制50方
# @type Approvers: Array
# @param FlowType: 签署流程的类型(如销售合同/入职合同等),最大长度200个字符
# @type FlowType: String
# @param ClientToken: 客户端Token,保持接口幂等性,最大长度64个字符
# @type ClientToken: String
# @param RelatedFlowId: 暂未开放
# @type RelatedFlowId: String
# @param DeadLine: 签署流程的签署截止时间。
# 值为unix时间戳,精确到秒,不传默认为当前时间一年后
# @type DeadLine: Integer
# @param UserData: 用户自定义字段,回调的时候会进行透传,长度需要小于20480
# @type UserData: String
# @param FlowDescription: 签署流程描述,最大长度1000个字符
# @type FlowDescription: String
# @param Unordered: 发送类型:
# true:无序签
# false:有序签
# 注:默认为false(有序签),请和模板中的配置保持一致
# @type Unordered: Boolean
# @param CustomShowMap: 合同显示的页卡模板,说明:只支持{合同名称}, {发起方企业}, {发起方姓名}, {签署方N企业}, {签署方N姓名},且N不能超过签署人的数量,N从1开始
# @type CustomShowMap: String
# @param NeedSignReview: 发起方企业的签署人进行签署操作是否需要企业内部审批。使用此功能需要发起方企业有参与签署。
# 若设置为true,审核结果需通过接口 CreateFlowSignReview 通知电子签,审核通过后,发起方企业签署人方可进行签署操作,否则会阻塞其签署操作。
# 注:企业可以通过此功能与企业内部的审批流程进行关联,支持手动、静默签署合同。
# @type NeedSignReview: Boolean
# @param CallbackUrl: 暂未开放
# @type CallbackUrl: String
# @param Agent: 应用相关信息
# @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent`
attr_accessor :Operator, :FlowName, :Approvers, :FlowType, :ClientToken, :RelatedFlowId, :DeadLine, :UserData, :FlowDescription, :Unordered, :CustomShowMap, :NeedSignReview, :CallbackUrl, :Agent
def initialize(operator=nil, flowname=nil, approvers=nil, flowtype=nil, clienttoken=nil, relatedflowid=nil, deadline=nil, userdata=nil, flowdescription=nil, unordered=nil, customshowmap=nil, needsignreview=nil, callbackurl=nil, agent=nil)
@Operator = operator
@FlowName = flowname
@Approvers = approvers
@FlowType = flowtype
@ClientToken = clienttoken
@RelatedFlowId = relatedflowid
@DeadLine = deadline
@UserData = userdata
@FlowDescription = flowdescription
@Unordered = unordered
@CustomShowMap = customshowmap
@NeedSignReview = needsignreview
@CallbackUrl = callbackurl
@Agent = agent
end
def deserialize(params)
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
@FlowName = params['FlowName']
unless params['Approvers'].nil?
@Approvers = []
params['Approvers'].each do |i|
flowcreateapprover_tmp = FlowCreateApprover.new
flowcreateapprover_tmp.deserialize(i)
@Approvers << flowcreateapprover_tmp
end
end
@FlowType = params['FlowType']
@ClientToken = params['ClientToken']
@RelatedFlowId = params['RelatedFlowId']
@DeadLine = params['DeadLine']
@UserData = params['UserData']
@FlowDescription = params['FlowDescription']
@Unordered = params['Unordered']
@CustomShowMap = params['CustomShowMap']
@NeedSignReview = params['NeedSignReview']
@CallbackUrl = params['CallbackUrl']
unless params['Agent'].nil?
@Agent = Agent.new
@Agent.deserialize(params['Agent'])
end
end
end
# CreateFlow返回参数结构体
class CreateFlowResponse < 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
# CreateFlowSignReview请求参数结构体
class CreateFlowSignReviewRequest < TencentCloud::Common::AbstractModel
# @param Operator: 调用方用户信息,userId 必填
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @param FlowId: 签署流程编号
# @type FlowId: String
# @param ReviewType: 企业内部审核结果
# PASS: 通过
# REJECT: 拒绝
# @type ReviewType: String
# @param ReviewMessage: 审核原因
# 当ReviewType 是REJECT 时此字段必填,字符串长度不超过200
# @type ReviewMessage: String
# @param Agent: 应用相关信息
# @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent`
attr_accessor :Operator, :FlowId, :ReviewType, :ReviewMessage, :Agent
def initialize(operator=nil, flowid=nil, reviewtype=nil, reviewmessage=nil, agent=nil)
@Operator = operator
@FlowId = flowid
@ReviewType = reviewtype
@ReviewMessage = reviewmessage
@Agent = agent
end
def deserialize(params)
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
@FlowId = params['FlowId']
@ReviewType = params['ReviewType']
@ReviewMessage = params['ReviewMessage']
unless params['Agent'].nil?
@Agent = Agent.new
@Agent.deserialize(params['Agent'])
end
end
end
# CreateFlowSignReview返回参数结构体
class CreateFlowSignReviewResponse < 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
# CreateIntegrationEmployees请求参数结构体
class CreateIntegrationEmployeesRequest < TencentCloud::Common::AbstractModel
# @param Operator: 操作人信息,userId必填
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @param Employees: 待创建员工的信息,Mobile和DisplayName必填
# @type Employees: Array
attr_accessor :Operator, :Employees
def initialize(operator=nil, employees=nil)
@Operator = operator
@Employees = employees
end
def deserialize(params)
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
unless params['Employees'].nil?
@Employees = []
params['Employees'].each do |i|
staff_tmp = Staff.new
staff_tmp.deserialize(i)
@Employees << staff_tmp
end
end
end
end
# CreateIntegrationEmployees返回参数结构体
class CreateIntegrationEmployeesResponse < TencentCloud::Common::AbstractModel
# @param CreateEmployeeResult: 创建员工的结果
# @type CreateEmployeeResult: :class:`Tencentcloud::Ess.v20201111.models.CreateStaffResult`
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :CreateEmployeeResult, :RequestId
def initialize(createemployeeresult=nil, requestid=nil)
@CreateEmployeeResult = createemployeeresult
@RequestId = requestid
end
def deserialize(params)
unless params['CreateEmployeeResult'].nil?
@CreateEmployeeResult = CreateStaffResult.new
@CreateEmployeeResult.deserialize(params['CreateEmployeeResult'])
end
@RequestId = params['RequestId']
end
end
# CreateMultiFlowSignQRCode请求参数结构体
class CreateMultiFlowSignQRCodeRequest < TencentCloud::Common::AbstractModel
# @param Operator: 用户信息
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @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 Agent: 应用信息
# @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent`
# @param ApproverRestrictions: 限制二维码用户条件(已弃用)
# @type ApproverRestrictions: :class:`Tencentcloud::Ess.v20201111.models.ApproverRestriction`
attr_accessor :Operator, :TemplateId, :FlowName, :MaxFlowNum, :FlowEffectiveDay, :QrEffectiveDay, :Restrictions, :CallbackUrl, :Agent, :ApproverRestrictions
def initialize(operator=nil, templateid=nil, flowname=nil, maxflownum=nil, floweffectiveday=nil, qreffectiveday=nil, restrictions=nil, callbackurl=nil, agent=nil, approverrestrictions=nil)
@Operator = operator
@TemplateId = templateid
@FlowName = flowname
@MaxFlowNum = maxflownum
@FlowEffectiveDay = floweffectiveday
@QrEffectiveDay = qreffectiveday
@Restrictions = restrictions
@CallbackUrl = callbackurl
@Agent = agent
@ApproverRestrictions = approverrestrictions
end
def deserialize(params)
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
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['Agent'].nil?
@Agent = Agent.new
@Agent.deserialize(params['Agent'])
end
unless params['ApproverRestrictions'].nil?
@ApproverRestrictions = ApproverRestriction.new
@ApproverRestrictions.deserialize(params['ApproverRestrictions'])
end
end
end
# CreateMultiFlowSignQRCode返回参数结构体
class CreateMultiFlowSignQRCodeResponse < TencentCloud::Common::AbstractModel
# @param QrCode: 签署二维码对象
# @type QrCode: :class:`Tencentcloud::Ess.v20201111.models.SignQrCode`
# @param SignUrls: 签署链接对象
# @type SignUrls: :class:`Tencentcloud::Ess.v20201111.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
# CreatePrepareFlow请求参数结构体
class CreatePrepareFlowRequest < TencentCloud::Common::AbstractModel
# @param Operator: 调用方用户信息,userId 必填
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @param ResourceId: 资源Id,通过多文件上传(UploadFiles)接口获得
# @type ResourceId: String
# @param FlowName: 合同名称
# @type FlowName: String
# @param Unordered: 是否顺序签署(true:无序签,false:顺序签)
# @type Unordered: Boolean
# @param Deadline: 签署流程的签署截止时间。
# 值为unix时间戳,精确到秒,不传默认为当前时间一年后
# @type Deadline: Integer
# @param UserFlowTypeId: 用户自定义合同类型
# @type UserFlowTypeId: String
# @param Approvers: 签署流程参与者信息,最大限制50方
# @type Approvers: Array
# @param IntelligentStatus: 打开智能添加填写区(默认开启,打开:"OPEN" 关闭:"CLOSE")
# @type IntelligentStatus: String
attr_accessor :Operator, :ResourceId, :FlowName, :Unordered, :Deadline, :UserFlowTypeId, :Approvers, :IntelligentStatus
def initialize(operator=nil, resourceid=nil, flowname=nil, unordered=nil, deadline=nil, userflowtypeid=nil, approvers=nil, intelligentstatus=nil)
@Operator = operator
@ResourceId = resourceid
@FlowName = flowname
@Unordered = unordered
@Deadline = deadline
@UserFlowTypeId = userflowtypeid
@Approvers = approvers
@IntelligentStatus = intelligentstatus
end
def deserialize(params)
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
@ResourceId = params['ResourceId']
@FlowName = params['FlowName']
@Unordered = params['Unordered']
@Deadline = params['Deadline']
@UserFlowTypeId = params['UserFlowTypeId']
unless params['Approvers'].nil?
@Approvers = []
params['Approvers'].each do |i|
flowcreateapprover_tmp = FlowCreateApprover.new
flowcreateapprover_tmp.deserialize(i)
@Approvers << flowcreateapprover_tmp
end
end
@IntelligentStatus = params['IntelligentStatus']
end
end
# CreatePrepareFlow返回参数结构体
class CreatePrepareFlowResponse < TencentCloud::Common::AbstractModel
# @param Url: 快速发起预览链接
# @type Url: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Url, :RequestId
def initialize(url=nil, requestid=nil)
@Url = url
@RequestId = requestid
end
def deserialize(params)
@Url = params['Url']
@RequestId = params['RequestId']
end
end
# CreateSchemeUrl请求参数结构体
class CreateSchemeUrlRequest < TencentCloud::Common::AbstractModel
# @param Operator: 调用方用户信息,userId 必填
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @param OrganizationName: 企业名称
# @type OrganizationName: String
# @param Name: 姓名,最大长度50个字符
# @type Name: String
# @param Mobile: 手机号,大陆手机号11位
# @type Mobile: String
# @param EndPoint: 链接类型
# HTTP:跳转电子签小程序的http_url,
# APP:第三方APP或小程序跳转电子签小程序的path。
# 默认为HTTP类型
# @type EndPoint: String
# @param FlowId: 签署流程编号 (PathType=1时必传)
# @type FlowId: String
# @param PathType: 跳转页面 1: 小程序合同详情 2: 小程序合同列表页 0: 不传, 默认主页
# @type PathType: Integer
# @param AutoJumpBack: 是否自动回跳 true:是, false:否。该参数只针对"APP" 类型的签署链接有效
# @type AutoJumpBack: Boolean
# @param Agent: 应用相关信息
# @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent`
attr_accessor :Operator, :OrganizationName, :Name, :Mobile, :EndPoint, :FlowId, :PathType, :AutoJumpBack, :Agent
def initialize(operator=nil, organizationname=nil, name=nil, mobile=nil, endpoint=nil, flowid=nil, pathtype=nil, autojumpback=nil, agent=nil)
@Operator = operator
@OrganizationName = organizationname
@Name = name
@Mobile = mobile
@EndPoint = endpoint
@FlowId = flowid
@PathType = pathtype
@AutoJumpBack = autojumpback
@Agent = agent
end
def deserialize(params)
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
@OrganizationName = params['OrganizationName']
@Name = params['Name']
@Mobile = params['Mobile']
@EndPoint = params['EndPoint']
@FlowId = params['FlowId']
@PathType = params['PathType']
@AutoJumpBack = params['AutoJumpBack']
unless params['Agent'].nil?
@Agent = Agent.new
@Agent.deserialize(params['Agent'])
end
end
end
# CreateSchemeUrl返回参数结构体
class CreateSchemeUrlResponse < TencentCloud::Common::AbstractModel
# @param SchemeUrl: 小程序链接地址
# @type SchemeUrl: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :SchemeUrl, :RequestId
def initialize(schemeurl=nil, requestid=nil)
@SchemeUrl = schemeurl
@RequestId = requestid
end
def deserialize(params)
@SchemeUrl = params['SchemeUrl']
@RequestId = params['RequestId']
end
end
# 创建员工的结果
class CreateStaffResult < TencentCloud::Common::AbstractModel
# @param SuccessEmployeeData: 创建员工的成功列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SuccessEmployeeData: Array
# @param FailedEmployeeData: 创建员工的失败列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FailedEmployeeData: Array
attr_accessor :SuccessEmployeeData, :FailedEmployeeData
def initialize(successemployeedata=nil, failedemployeedata=nil)
@SuccessEmployeeData = successemployeedata
@FailedEmployeeData = failedemployeedata
end
def deserialize(params)
unless params['SuccessEmployeeData'].nil?
@SuccessEmployeeData = []
params['SuccessEmployeeData'].each do |i|
successcreatestaffdata_tmp = SuccessCreateStaffData.new
successcreatestaffdata_tmp.deserialize(i)
@SuccessEmployeeData << successcreatestaffdata_tmp
end
end
unless params['FailedEmployeeData'].nil?
@FailedEmployeeData = []
params['FailedEmployeeData'].each do |i|
failedcreatestaffdata_tmp = FailedCreateStaffData.new
failedcreatestaffdata_tmp.deserialize(i)
@FailedEmployeeData << failedcreatestaffdata_tmp
end
end
end
end
# DeleteIntegrationEmployees请求参数结构体
class DeleteIntegrationEmployeesRequest < TencentCloud::Common::AbstractModel
# @param Operator: 操作人信息,userId必填
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @param Employees: 待移除员工的信息,userId和openId二选一,必填一个
# @type Employees: Array
attr_accessor :Operator, :Employees
def initialize(operator=nil, employees=nil)
@Operator = operator
@Employees = employees
end
def deserialize(params)
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
unless params['Employees'].nil?
@Employees = []
params['Employees'].each do |i|
staff_tmp = Staff.new
staff_tmp.deserialize(i)
@Employees << staff_tmp
end
end
end
end
# DeleteIntegrationEmployees返回参数结构体
class DeleteIntegrationEmployeesResponse < TencentCloud::Common::AbstractModel
# @param DeleteEmployeeResult: 员工删除数据
# @type DeleteEmployeeResult: :class:`Tencentcloud::Ess.v20201111.models.DeleteStaffsResult`
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :DeleteEmployeeResult, :RequestId
def initialize(deleteemployeeresult=nil, requestid=nil)
@DeleteEmployeeResult = deleteemployeeresult
@RequestId = requestid
end
def deserialize(params)
unless params['DeleteEmployeeResult'].nil?
@DeleteEmployeeResult = DeleteStaffsResult.new
@DeleteEmployeeResult.deserialize(params['DeleteEmployeeResult'])
end
@RequestId = params['RequestId']
end
end
# 删除员工结果
class DeleteStaffsResult < TencentCloud::Common::AbstractModel
# @param SuccessEmployeeData: 删除员工的成功数据
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SuccessEmployeeData: Array
# @param FailedEmployeeData: 删除员工的失败数据
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FailedEmployeeData: Array
attr_accessor :SuccessEmployeeData, :FailedEmployeeData
def initialize(successemployeedata=nil, failedemployeedata=nil)
@SuccessEmployeeData = successemployeedata
@FailedEmployeeData = failedemployeedata
end
def deserialize(params)
unless params['SuccessEmployeeData'].nil?
@SuccessEmployeeData = []
params['SuccessEmployeeData'].each do |i|
successdeletestaffdata_tmp = SuccessDeleteStaffData.new
successdeletestaffdata_tmp.deserialize(i)
@SuccessEmployeeData << successdeletestaffdata_tmp
end
end
unless params['FailedEmployeeData'].nil?
@FailedEmployeeData = []
params['FailedEmployeeData'].each do |i|
faileddeletestaffdata_tmp = FailedDeleteStaffData.new
faileddeletestaffdata_tmp.deserialize(i)
@FailedEmployeeData << faileddeletestaffdata_tmp
end
end
end
end
# 集成版员工部门信息
class Department < TencentCloud::Common::AbstractModel
# @param DepartmentId: 部门id
# @type DepartmentId: String
# @param DepartmentName: 部门名称
# @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
# DescribeFileUrls请求参数结构体
class DescribeFileUrlsRequest < TencentCloud::Common::AbstractModel
# @param Operator: 调用方用户信息,UserId 必填
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @param BusinessType: 文件对应的业务类型,目前支持:
# - 流程 "FLOW",如需下载合同文件请选择此项
# - 模板 "TEMPLATE"
# - 文档 "DOCUMENT"
# - 印章 “SEAL”
# @type BusinessType: String
# @param BusinessIds: 业务编号的数组,如流程编号、模板编号、文档编号、印章编号。如需下载合同文件请传入FlowId
# 最大支持20个资源
# @type BusinessIds: Array
# @param FileName: 下载后的文件命名,只有FileType为zip的时候生效
# @type FileName: String
# @param FileType: 文件类型,"JPG", "PDF","ZIP"等
# @type FileType: String
# @param Offset: 指定资源起始偏移量,默认0
# @type Offset: Integer
# @param Limit: 指定资源数量,查询全部资源则传入-1
# @type Limit: Integer
# @param UrlTtl: 下载url过期时间,单位秒。0: 按默认值5分钟,允许范围:1s~24x60x60s(1天)
# @type UrlTtl: Integer
# @param CcToken: 暂不开放
# @type CcToken: String
# @param Scene: 暂不开放
# @type Scene: String
# @param Agent: 应用相关信息
# @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent`
attr_accessor :Operator, :BusinessType, :BusinessIds, :FileName, :FileType, :Offset, :Limit, :UrlTtl, :CcToken, :Scene, :Agent
def initialize(operator=nil, businesstype=nil, businessids=nil, filename=nil, filetype=nil, offset=nil, limit=nil, urlttl=nil, cctoken=nil, scene=nil, agent=nil)
@Operator = operator
@BusinessType = businesstype
@BusinessIds = businessids
@FileName = filename
@FileType = filetype
@Offset = offset
@Limit = limit
@UrlTtl = urlttl
@CcToken = cctoken
@Scene = scene
@Agent = agent
end
def deserialize(params)
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
@BusinessType = params['BusinessType']
@BusinessIds = params['BusinessIds']
@FileName = params['FileName']
@FileType = params['FileType']
@Offset = params['Offset']
@Limit = params['Limit']
@UrlTtl = params['UrlTtl']
@CcToken = params['CcToken']
@Scene = params['Scene']
unless params['Agent'].nil?
@Agent = Agent.new
@Agent.deserialize(params['Agent'])
end
end
end
# DescribeFileUrls返回参数结构体
class DescribeFileUrlsResponse < TencentCloud::Common::AbstractModel
# @param FileUrls: URL信息
# @type FileUrls: Array
# @param TotalCount: URL数量
# @type TotalCount: Integer
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :FileUrls, :TotalCount, :RequestId
def initialize(fileurls=nil, totalcount=nil, requestid=nil)
@FileUrls = fileurls
@TotalCount = totalcount
@RequestId = requestid
end
def deserialize(params)
unless params['FileUrls'].nil?
@FileUrls = []
params['FileUrls'].each do |i|
fileurl_tmp = FileUrl.new
fileurl_tmp.deserialize(i)
@FileUrls << fileurl_tmp
end
end
@TotalCount = params['TotalCount']
@RequestId = params['RequestId']
end
end
# DescribeFlowBriefs请求参数结构体
class DescribeFlowBriefsRequest < TencentCloud::Common::AbstractModel
# @param Operator: 调用方用户信息,userId 必填
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @param FlowIds: 需要查询的流程ID列表,限制最大20个
# @type FlowIds: Array
# @param Agent: 应用相关信息
# @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent`
attr_accessor :Operator, :FlowIds, :Agent
def initialize(operator=nil, flowids=nil, agent=nil)
@Operator = operator
@FlowIds = flowids
@Agent = agent
end
def deserialize(params)
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
@FlowIds = params['FlowIds']
unless params['Agent'].nil?
@Agent = Agent.new
@Agent.deserialize(params['Agent'])
end
end
end
# DescribeFlowBriefs返回参数结构体
class DescribeFlowBriefsResponse < TencentCloud::Common::AbstractModel
# @param FlowBriefs: 流程列表
# @type FlowBriefs: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :FlowBriefs, :RequestId
def initialize(flowbriefs=nil, requestid=nil)
@FlowBriefs = flowbriefs
@RequestId = requestid
end
def deserialize(params)
unless params['FlowBriefs'].nil?
@FlowBriefs = []
params['FlowBriefs'].each do |i|
flowbrief_tmp = FlowBrief.new
flowbrief_tmp.deserialize(i)
@FlowBriefs << flowbrief_tmp
end
end
@RequestId = params['RequestId']
end
end
# DescribeFlowEvidenceReport请求参数结构体
class DescribeFlowEvidenceReportRequest < TencentCloud::Common::AbstractModel
# @param Operator: 调用方用户信息,userId 必填
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @param ReportId: 出证报告编号
# @type ReportId: String
attr_accessor :Operator, :ReportId
def initialize(operator=nil, reportid=nil)
@Operator = operator
@ReportId = reportid
end
def deserialize(params)
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
@ReportId = params['ReportId']
end
end
# DescribeFlowEvidenceReport返回参数结构体
class DescribeFlowEvidenceReportResponse < 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
# DescribeFlowInfo请求参数结构体
class DescribeFlowInfoRequest < TencentCloud::Common::AbstractModel
# @param FlowIds: 需要查询的流程ID列表,限制最大100个
# @type FlowIds: Array
# @param Operator: 调用方用户信息
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
attr_accessor :FlowIds, :Operator
def initialize(flowids=nil, operator=nil)
@FlowIds = flowids
@Operator = operator
end
def deserialize(params)
@FlowIds = params['FlowIds']
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
end
end
# DescribeFlowInfo返回参数结构体
class DescribeFlowInfoResponse < TencentCloud::Common::AbstractModel
# @param FlowDetailInfos: 签署流程信息
# @type FlowDetailInfos: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :FlowDetailInfos, :RequestId
def initialize(flowdetailinfos=nil, requestid=nil)
@FlowDetailInfos = flowdetailinfos
@RequestId = requestid
end
def deserialize(params)
unless params['FlowDetailInfos'].nil?
@FlowDetailInfos = []
params['FlowDetailInfos'].each do |i|
flowdetailinfo_tmp = FlowDetailInfo.new
flowdetailinfo_tmp.deserialize(i)
@FlowDetailInfos << flowdetailinfo_tmp
end
end
@RequestId = params['RequestId']
end
end
# DescribeFlowTemplates请求参数结构体
class DescribeFlowTemplatesRequest < TencentCloud::Common::AbstractModel
# @param Operator: 调用方用户信息,userId 必填
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @param Organization: 企业组织相关信息
# @type Organization: :class:`Tencentcloud::Ess.v20201111.models.OrganizationInfo`
# @param Agent: 应用相关信息
# @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent`
# @param Offset: 查询偏移位置,默认0
# @type Offset: Integer
# @param Limit: 查询个数,默认20,最大200
# @type Limit: Integer
# @param Filters: 搜索条件,具体参考Filter结构体。本接口取值:template-id:按照【 **模板唯一标识** 】进行过滤
# @type Filters: Array
# @param ApplicationId: 这个参数跟下面的IsChannel参数配合使用。
# IsChannel=false时,ApplicationId参数不起任何作用。
# IsChannel=true时,ApplicationId为空,查询所有渠道模板列表;ApplicationId不为空,查询指定渠道下的模板列表
# ApplicationId为空,查询渠道模板列表
# @type ApplicationId: String
# @param IsChannel: 默认为false,查询SaaS模板库列表;
# 为true,查询渠道模板库管理列表
# @type IsChannel: Boolean
# @param GenerateSource: 暂未开放
# @type GenerateSource: Integer
# @param ContentType: 查询内容:0-模板列表及详情(默认),1-仅模板列表
# @type ContentType: Integer
attr_accessor :Operator, :Organization, :Agent, :Offset, :Limit, :Filters, :ApplicationId, :IsChannel, :GenerateSource, :ContentType
def initialize(operator=nil, organization=nil, agent=nil, offset=nil, limit=nil, filters=nil, applicationid=nil, ischannel=nil, generatesource=nil, contenttype=nil)
@Operator = operator
@Organization = organization
@Agent = agent
@Offset = offset
@Limit = limit
@Filters = filters
@ApplicationId = applicationid
@IsChannel = ischannel
@GenerateSource = generatesource
@ContentType = contenttype
end
def deserialize(params)
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
unless params['Organization'].nil?
@Organization = OrganizationInfo.new
@Organization.deserialize(params['Organization'])
end
unless params['Agent'].nil?
@Agent = Agent.new
@Agent.deserialize(params['Agent'])
end
@Offset = params['Offset']
@Limit = params['Limit']
unless params['Filters'].nil?
@Filters = []
params['Filters'].each do |i|
filter_tmp = Filter.new
filter_tmp.deserialize(i)
@Filters << filter_tmp
end
end
@ApplicationId = params['ApplicationId']
@IsChannel = params['IsChannel']
@GenerateSource = params['GenerateSource']
@ContentType = params['ContentType']
end
end
# DescribeFlowTemplates返回参数结构体
class DescribeFlowTemplatesResponse < TencentCloud::Common::AbstractModel
# @param Templates: 模板详情列表
# @type Templates: Array
# @param TotalCount: 查询到的总个数
# @type TotalCount: Integer
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Templates, :TotalCount, :RequestId
def initialize(templates=nil, totalcount=nil, requestid=nil)
@Templates = templates
@TotalCount = totalcount
@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']
@RequestId = params['RequestId']
end
end
# DescribeIntegrationEmployees请求参数结构体
class DescribeIntegrationEmployeesRequest < TencentCloud::Common::AbstractModel
# @param Operator: 操作人信息,userId必填
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @param Limit: 返回最大数量,最大为20
# @type Limit: Integer
# @param Filters: 查询过滤实名用户,Key为Status,Values为["IsVerified"]
# 根据第三方系统openId过滤查询员工时,Key为StaffOpenId,Values为["OpenId","OpenId",...]
# @type Filters: Array
# @param Offset: 偏移量,默认为0,最大为20000
# @type Offset: Integer
attr_accessor :Operator, :Limit, :Filters, :Offset
def initialize(operator=nil, limit=nil, filters=nil, offset=nil)
@Operator = operator
@Limit = limit
@Filters = filters
@Offset = offset
end
def deserialize(params)
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
@Limit = params['Limit']
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']
end
end
# DescribeIntegrationEmployees返回参数结构体
class DescribeIntegrationEmployeesResponse < 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
# DescribeOrganizationSeals请求参数结构体
class DescribeOrganizationSealsRequest < TencentCloud::Common::AbstractModel
# @param Operator: 调用方用户信息,userId 必填
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @param Limit: 返回最大数量,最大为100
# @type Limit: Integer
# @param Offset: 偏移量,默认为0,最大为20000
# @type Offset: Integer
# @param InfoType: 查询信息类型,为0时不返回授权用户,为1时返回
# @type InfoType: Integer
# @param SealId: 印章id(没有输入返回所有)
# @type SealId: String
attr_accessor :Operator, :Limit, :Offset, :InfoType, :SealId
def initialize(operator=nil, limit=nil, offset=nil, infotype=nil, sealid=nil)
@Operator = operator
@Limit = limit
@Offset = offset
@InfoType = infotype
@SealId = sealid
end
def deserialize(params)
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
@Limit = params['Limit']
@Offset = params['Offset']
@InfoType = params['InfoType']
@SealId = params['SealId']
end
end
# DescribeOrganizationSeals返回参数结构体
class DescribeOrganizationSealsResponse < 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
# DescribeThirdPartyAuthCode请求参数结构体
class DescribeThirdPartyAuthCodeRequest < TencentCloud::Common::AbstractModel
# @param AuthCode: 电子签小程序跳转客户小程序时携带的授权查看码
# @type AuthCode: String
attr_accessor :AuthCode
def initialize(authcode=nil)
@AuthCode = authcode
end
def deserialize(params)
@AuthCode = params['AuthCode']
end
end
# DescribeThirdPartyAuthCode返回参数结构体
class DescribeThirdPartyAuthCodeResponse < TencentCloud::Common::AbstractModel
# @param VerifyStatus: 用户是否实名,VERIFIED 为实名,UNVERIFIED 未实名
# @type VerifyStatus: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :VerifyStatus, :RequestId
def initialize(verifystatus=nil, requestid=nil)
@VerifyStatus = verifystatus
@RequestId = requestid
end
def deserialize(params)
@VerifyStatus = params['VerifyStatus']
@RequestId = params['RequestId']
end
end
# 创建员工的失败数据
class FailedCreateStaffData < TencentCloud::Common::AbstractModel
# @param DisplayName: 员工名
# @type DisplayName: String
# @param Mobile: 员工手机号
# @type Mobile: String
# @param Reason: 失败原因
# @type Reason: String
attr_accessor :DisplayName, :Mobile, :Reason
def initialize(displayname=nil, mobile=nil, reason=nil)
@DisplayName = displayname
@Mobile = mobile
@Reason = reason
end
def deserialize(params)
@DisplayName = params['DisplayName']
@Mobile = params['Mobile']
@Reason = params['Reason']
end
end
# 删除员工失败数据
class FailedDeleteStaffData < TencentCloud::Common::AbstractModel
# @param UserId: 员工在电子签的userId
# 注意:此字段可能返回 null,表示取不到有效值。
# @type UserId: String
# @param OpenId: 员工在第三方平台的openId
# 注意:此字段可能返回 null,表示取不到有效值。
# @type OpenId: String
# @param Reason: 失败原因
# @type Reason: String
attr_accessor :UserId, :OpenId, :Reason
def initialize(userid=nil, openid=nil, reason=nil)
@UserId = userid
@OpenId = openid
@Reason = reason
end
def deserialize(params)
@UserId = params['UserId']
@OpenId = params['OpenId']
@Reason = params['Reason']
end
end
# 二期接口返回的模板中文件的信息结构
class FileInfo < TencentCloud::Common::AbstractModel
# @param FileId: 文件Id
# @type FileId: String
# @param FileName: 文件名
# @type FileName: String
# @param FileSize: 文件大小,单位为Byte
# @type FileSize: Integer
# @param CreatedOn: 文件上传时间,10位时间戳(精确到秒)
# @type CreatedOn: Integer
attr_accessor :FileId, :FileName, :FileSize, :CreatedOn
def initialize(fileid=nil, filename=nil, filesize=nil, createdon=nil)
@FileId = fileid
@FileName = filename
@FileSize = filesize
@CreatedOn = createdon
end
def deserialize(params)
@FileId = params['FileId']
@FileName = params['FileName']
@FileSize = params['FileSize']
@CreatedOn = params['CreatedOn']
end
end
# 下载文件的URL信息
class FileUrl < TencentCloud::Common::AbstractModel
# @param Url: 下载文件的URL
# @type Url: String
# @param Option: 下载文件的附加信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Option: String
attr_accessor :Url, :Option
def initialize(url=nil, option=nil)
@Url = url
@Option = option
end
def deserialize(params)
@Url = params['Url']
@Option = params['Option']
end
end
# 补充签署人信息
class FillApproverInfo < TencentCloud::Common::AbstractModel
# @param RecipientId: 签署人签署Id
# @type RecipientId: String
# @param ApproverSource: 签署人来源
# WEWORKAPP: 企业微信
# @type ApproverSource: String
# @param CustomUserId: 企业自定义账号Id
# WEWORKAPP场景下指企业自有应用获取企微明文的userid
# @type CustomUserId: String
attr_accessor :RecipientId, :ApproverSource, :CustomUserId
def initialize(recipientid=nil, approversource=nil, customuserid=nil)
@RecipientId = recipientid
@ApproverSource = approversource
@CustomUserId = customuserid
end
def deserialize(params)
@RecipientId = params['RecipientId']
@ApproverSource = params['ApproverSource']
@CustomUserId = params['CustomUserId']
end
end
# 查询过滤条件
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 ApproveMessage: 签署人信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ApproveMessage: String
# @param ApproveName: 签署人名字
# @type ApproveName: String
# @param ApproveStatus: 签署人的状态
# 0:还没有发起
# 1:流程中 没有开始处理
# 2:待处理
# 3:签署态
# 4:拒绝态
# 5:过期没人处理
# 6:取消态
# 7:还没有预发起
# 8:待填写
# 9:因为各种原因而终止
# @type ApproveStatus: Integer
# @param ReceiptId: 模板配置时候的签署人id,与控件绑定
# @type ReceiptId: String
# @param CustomUserId: 客户自定义userId
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CustomUserId: String
# @param Mobile: 签署人手机号
# @type Mobile: String
# @param SignOrder: 签署顺序
# @type SignOrder: Integer
# @param ApproveTime: 签署人签署时间
# @type ApproveTime: Integer
# @param ApproveType: 参与者类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ApproveType: String
# @param ApproverSource: 签署人侧用户来源
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ApproverSource: String
# @param CustomApproverTag: 客户自定义签署人标识
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CustomApproverTag: String
# @param OrganizationId: 签署人企业Id
# 注意:此字段可能返回 null,表示取不到有效值。
# @type OrganizationId: String
# @param OrganizationName: 签署人企业名称
# 注意:此字段可能返回 null,表示取不到有效值。
# @type OrganizationName: String
attr_accessor :ApproveMessage, :ApproveName, :ApproveStatus, :ReceiptId, :CustomUserId, :Mobile, :SignOrder, :ApproveTime, :ApproveType, :ApproverSource, :CustomApproverTag, :OrganizationId, :OrganizationName
def initialize(approvemessage=nil, approvename=nil, approvestatus=nil, receiptid=nil, customuserid=nil, mobile=nil, signorder=nil, approvetime=nil, approvetype=nil, approversource=nil, customapprovertag=nil, organizationid=nil, organizationname=nil)
@ApproveMessage = approvemessage
@ApproveName = approvename
@ApproveStatus = approvestatus
@ReceiptId = receiptid
@CustomUserId = customuserid
@Mobile = mobile
@SignOrder = signorder
@ApproveTime = approvetime
@ApproveType = approvetype
@ApproverSource = approversource
@CustomApproverTag = customapprovertag
@OrganizationId = organizationid
@OrganizationName = organizationname
end
def deserialize(params)
@ApproveMessage = params['ApproveMessage']
@ApproveName = params['ApproveName']
@ApproveStatus = params['ApproveStatus']
@ReceiptId = params['ReceiptId']
@CustomUserId = params['CustomUserId']
@Mobile = params['Mobile']
@SignOrder = params['SignOrder']
@ApproveTime = params['ApproveTime']
@ApproveType = params['ApproveType']
@ApproverSource = params['ApproverSource']
@CustomApproverTag = params['CustomApproverTag']
@OrganizationId = params['OrganizationId']
@OrganizationName = params['OrganizationName']
end
end
# 流程信息摘要
class FlowBrief < TencentCloud::Common::AbstractModel
# @param FlowId: 流程的编号
# @type FlowId: String
# @param FlowName: 流程的名称
# @type FlowName: String
# @param FlowDescription: 流程的描述
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FlowDescription: String
# @param FlowType: 流程的类型
# @type FlowType: String
# @param FlowStatus: 流程状态
# - `0` 还没有发起
# - `1` 未签署
# - `2` 部分签署
# - `3` 已退回
# - `4` 完成签署
# - `5` 已过期
# - `6` 已取消
# - `7` 还没有预发起
# - `8` 等待填写
# - `9` 部分填写
# - `10` 拒填
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FlowStatus: Integer
# @param CreatedOn: 流程创建的时间戳
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CreatedOn: Integer
# @param FlowMessage: 拒签或者取消的原因描述
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FlowMessage: String
attr_accessor :FlowId, :FlowName, :FlowDescription, :FlowType, :FlowStatus, :CreatedOn, :FlowMessage
def initialize(flowid=nil, flowname=nil, flowdescription=nil, flowtype=nil, flowstatus=nil, createdon=nil, flowmessage=nil)
@FlowId = flowid
@FlowName = flowname
@FlowDescription = flowdescription
@FlowType = flowtype
@FlowStatus = flowstatus
@CreatedOn = createdon
@FlowMessage = flowmessage
end
def deserialize(params)
@FlowId = params['FlowId']
@FlowName = params['FlowName']
@FlowDescription = params['FlowDescription']
@FlowType = params['FlowType']
@FlowStatus = params['FlowStatus']
@CreatedOn = params['CreatedOn']
@FlowMessage = params['FlowMessage']
end
end
# 创建流程的签署方信息
class FlowCreateApprover < TencentCloud::Common::AbstractModel
# @param ApproverType: 参与者类型:
# 0:企业
# 1:个人
# 3:企业静默签署
# 注:类型为3(企业静默签署)时,此接口会默认完成该签署方的签署。静默签署仅进行盖章操作,不能自动签名。
# @type ApproverType: Integer
# @param OrganizationName: 如果签署方为企业,需要填入企业全称
# @type OrganizationName: String
# @param ApproverName: 签署方经办人姓名
# @type ApproverName: String
# @param ApproverMobile: 签署方经办人手机号码
# @type ApproverMobile: String
# @param ApproverIdCardType: 签署方经办人证件类型ID_CARD 身份证
# HONGKONG_AND_MACAO 港澳居民来往内地通行证
# HONGKONG_MACAO_AND_TAIWAN 港澳台居民居住证(格式同居民身份证)
# @type ApproverIdCardType: String
# @param ApproverIdCardNumber: 签署方经办人证件号码
# @type ApproverIdCardNumber: String
# @param RecipientId: 签署方经办人在模板中的角色ID
# @type RecipientId: String
# @param VerifyChannel: 签署意愿确认渠道,WEIXINAPP:人脸识别
# @type VerifyChannel: Array
# @param NotifyType: 是否发送短信,sms--短信通知,none--不通知,默认为sms;发起方=签署方时不发送短信
# @type NotifyType: String
# @param IsFullText: 签署前置条件:是否需要阅读全文,默认为不需要
# @type IsFullText: Boolean
# @param PreReadTime: 签署前置条件:阅读时长限制,单位秒,默认为不需要
# @type PreReadTime: Integer
# @param UserId: 签署方经办人的用户ID,和签署方经办人姓名+手机号+证件必须有一个。
# @type UserId: String
# @param Required: 当前只支持true,默认为true
# @type Required: Boolean
# @param ApproverSource: 签署人用户来源,企微侧用户请传入:WEWORKAPP
# @type ApproverSource: String
# @param CustomApproverTag: 客户自定义签署人标识,64位长度,保证唯一。非企微场景不使用此字段
# @type CustomApproverTag: String
# @param RegisterInfo: 快速注册相关信息,目前暂未开放!
# @type RegisterInfo: :class:`Tencentcloud::Ess.v20201111.models.RegisterInfo`
# @param ApproverOption: 签署人个性化能力值
# @type ApproverOption: :class:`Tencentcloud::Ess.v20201111.models.ApproverOption`
attr_accessor :ApproverType, :OrganizationName, :ApproverName, :ApproverMobile, :ApproverIdCardType, :ApproverIdCardNumber, :RecipientId, :VerifyChannel, :NotifyType, :IsFullText, :PreReadTime, :UserId, :Required, :ApproverSource, :CustomApproverTag, :RegisterInfo, :ApproverOption
def initialize(approvertype=nil, organizationname=nil, approvername=nil, approvermobile=nil, approveridcardtype=nil, approveridcardnumber=nil, recipientid=nil, verifychannel=nil, notifytype=nil, isfulltext=nil, prereadtime=nil, userid=nil, required=nil, approversource=nil, customapprovertag=nil, registerinfo=nil, approveroption=nil)
@ApproverType = approvertype
@OrganizationName = organizationname
@ApproverName = approvername
@ApproverMobile = approvermobile
@ApproverIdCardType = approveridcardtype
@ApproverIdCardNumber = approveridcardnumber
@RecipientId = recipientid
@VerifyChannel = verifychannel
@NotifyType = notifytype
@IsFullText = isfulltext
@PreReadTime = prereadtime
@UserId = userid
@Required = required
@ApproverSource = approversource
@CustomApproverTag = customapprovertag
@RegisterInfo = registerinfo
@ApproverOption = approveroption
end
def deserialize(params)
@ApproverType = params['ApproverType']
@OrganizationName = params['OrganizationName']
@ApproverName = params['ApproverName']
@ApproverMobile = params['ApproverMobile']
@ApproverIdCardType = params['ApproverIdCardType']
@ApproverIdCardNumber = params['ApproverIdCardNumber']
@RecipientId = params['RecipientId']
@VerifyChannel = params['VerifyChannel']
@NotifyType = params['NotifyType']
@IsFullText = params['IsFullText']
@PreReadTime = params['PreReadTime']
@UserId = params['UserId']
@Required = params['Required']
@ApproverSource = params['ApproverSource']
@CustomApproverTag = params['CustomApproverTag']
unless params['RegisterInfo'].nil?
@RegisterInfo = RegisterInfo.new
@RegisterInfo.deserialize(params['RegisterInfo'])
end
unless params['ApproverOption'].nil?
@ApproverOption = ApproverOption.new
@ApproverOption.deserialize(params['ApproverOption'])
end
end
end
# 此结构体(FlowDetailInfo)描述的是合同(流程)的详细信息
class FlowDetailInfo < TencentCloud::Common::AbstractModel
# @param FlowId: 合同(流程)的Id
# @type FlowId: String
# @param FlowName: 合同(流程)的名字
# @type FlowName: String
# @param FlowType: 合同(流程)的类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FlowType: String
# @param FlowStatus: 合同(流程)的状态
# 1:未签署
# 2:部分签署
# 3:已退回
# 4:完成签署
# 5:已过期
# 6:已取消
# @type FlowStatus: Integer
# @param FlowMessage: 合同(流程)的信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FlowMessage: String
# @param FlowDescription: 流程的描述
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FlowDescription: String
# @param CreatedOn: 合同(流程)的创建时间戳
# @type CreatedOn: Integer
# @param FlowApproverInfos: 合同(流程)的签署人数组
# @type FlowApproverInfos: Array
attr_accessor :FlowId, :FlowName, :FlowType, :FlowStatus, :FlowMessage, :FlowDescription, :CreatedOn, :FlowApproverInfos
def initialize(flowid=nil, flowname=nil, flowtype=nil, flowstatus=nil, flowmessage=nil, flowdescription=nil, createdon=nil, flowapproverinfos=nil)
@FlowId = flowid
@FlowName = flowname
@FlowType = flowtype
@FlowStatus = flowstatus
@FlowMessage = flowmessage
@FlowDescription = flowdescription
@CreatedOn = createdon
@FlowApproverInfos = flowapproverinfos
end
def deserialize(params)
@FlowId = params['FlowId']
@FlowName = params['FlowName']
@FlowType = params['FlowType']
@FlowStatus = params['FlowStatus']
@FlowMessage = params['FlowMessage']
@FlowDescription = params['FlowDescription']
@CreatedOn = params['CreatedOn']
unless params['FlowApproverInfos'].nil?
@FlowApproverInfos = []
params['FlowApproverInfos'].each do |i|
flowapproverdetail_tmp = FlowApproverDetail.new
flowapproverdetail_tmp.deserialize(i)
@FlowApproverInfos << flowapproverdetail_tmp
end
end
end
end
# 电子文档的控件填充信息。按照控件类型进行相应的填充。
# 【数据表格传参说明】
# 当模板的 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 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选择一项传入即可
# @type ComponentId: String
# @param ComponentName: 控件名字,最大长度不超过30字符,和ComponentId选择一项传入即可
# @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
# GetTaskResultApi请求参数结构体
class GetTaskResultApiRequest < TencentCloud::Common::AbstractModel
# @param TaskId: 任务Id,通过CreateConvertTaskApi得到
# @type TaskId: String
# @param Operator: 操作人信息
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @param Agent: 应用号信息
# @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent`
# @param Organization: 暂未开放
# @type Organization: :class:`Tencentcloud::Ess.v20201111.models.OrganizationInfo`
attr_accessor :TaskId, :Operator, :Agent, :Organization
def initialize(taskid=nil, operator=nil, agent=nil, organization=nil)
@TaskId = taskid
@Operator = operator
@Agent = agent
@Organization = organization
end
def deserialize(params)
@TaskId = params['TaskId']
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
unless params['Agent'].nil?
@Agent = Agent.new
@Agent.deserialize(params['Agent'])
end
unless params['Organization'].nil?
@Organization = OrganizationInfo.new
@Organization.deserialize(params['Organization'])
end
end
end
# GetTaskResultApi返回参数结构体
class GetTaskResultApiResponse < 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 RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :TaskId, :TaskStatus, :TaskMessage, :ResourceId, :RequestId
def initialize(taskid=nil, taskstatus=nil, taskmessage=nil, resourceid=nil, requestid=nil)
@TaskId = taskid
@TaskStatus = taskstatus
@TaskMessage = taskmessage
@ResourceId = resourceid
@RequestId = requestid
end
def deserialize(params)
@TaskId = params['TaskId']
@TaskStatus = params['TaskStatus']
@TaskMessage = params['TaskMessage']
@ResourceId = params['ResourceId']
@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: 授权人列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @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
# 机构信息
class OrganizationInfo < TencentCloud::Common::AbstractModel
# @param OrganizationId: 机构在平台的编号
# @type OrganizationId: String
# @param Channel: 用户渠道
# @type Channel: String
# @param OrganizationOpenId: 用户在渠道的机构编号
# @type OrganizationOpenId: String
# @param ClientIp: 用户真实的IP
# @type ClientIp: String
# @param ProxyIp: 机构的代理IP
# @type ProxyIp: String
attr_accessor :OrganizationId, :Channel, :OrganizationOpenId, :ClientIp, :ProxyIp
def initialize(organizationid=nil, channel=nil, organizationopenid=nil, clientip=nil, proxyip=nil)
@OrganizationId = organizationid
@Channel = channel
@OrganizationOpenId = organizationopenid
@ClientIp = clientip
@ProxyIp = proxyip
end
def deserialize(params)
@OrganizationId = params['OrganizationId']
@Channel = params['Channel']
@OrganizationOpenId = params['OrganizationOpenId']
@ClientIp = params['ClientIp']
@ProxyIp = params['ProxyIp']
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 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, :ComponentPosX, :ComponentPosY, :ComponentWidth, :ComponentHeight, :ComponentPage
def initialize(verifyresult=nil, signplatform=nil, signername=nil, signtime=nil, signalgorithm=nil, certsn=nil, certnotbefore=nil, certnotafter=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
@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']
@ComponentPosX = params['ComponentPosX']
@ComponentPosY = params['ComponentPosY']
@ComponentWidth = params['ComponentWidth']
@ComponentHeight = params['ComponentHeight']
@ComponentPage = params['ComponentPage']
end
end
# 签署参与者信息
class Recipient < TencentCloud::Common::AbstractModel
# @param RecipientId: 签署参与者ID
# @type RecipientId: String
# @param RecipientType: 参与者类型(ENTERPRISE/INDIVIDUAL)
# @type RecipientType: String
# @param Description: 描述信息
# @type Description: String
# @param RoleName: 角色名称
# @type RoleName: String
# @param RequireValidation: 是否需要验证,默认为false
# @type RequireValidation: Boolean
# @param RequireSign: 是否需要签署,默认为true
# @type RequireSign: Boolean
# @param RoutingOrder: 添加序列
# @type RoutingOrder: Integer
# @param RequireDelivery: 是否需要发送,默认为true
# @type RequireDelivery: Boolean
# @param Email: 邮箱地址
# @type Email: String
# @param Mobile: 电话号码
# @type Mobile: String
# @param UserId: 关联的用户ID
# @type UserId: String
# @param DeliveryMethod: 发送方式(EMAIL/MOBILE)
# @type DeliveryMethod: String
# @param RecipientExtra: 附属信息
# @type RecipientExtra: String
attr_accessor :RecipientId, :RecipientType, :Description, :RoleName, :RequireValidation, :RequireSign, :RoutingOrder, :RequireDelivery, :Email, :Mobile, :UserId, :DeliveryMethod, :RecipientExtra
def initialize(recipientid=nil, recipienttype=nil, description=nil, rolename=nil, requirevalidation=nil, requiresign=nil, routingorder=nil, requiredelivery=nil, email=nil, mobile=nil, userid=nil, deliverymethod=nil, recipientextra=nil)
@RecipientId = recipientid
@RecipientType = recipienttype
@Description = description
@RoleName = rolename
@RequireValidation = requirevalidation
@RequireSign = requiresign
@RoutingOrder = routingorder
@RequireDelivery = requiredelivery
@Email = email
@Mobile = mobile
@UserId = userid
@DeliveryMethod = deliverymethod
@RecipientExtra = recipientextra
end
def deserialize(params)
@RecipientId = params['RecipientId']
@RecipientType = params['RecipientType']
@Description = params['Description']
@RoleName = params['RoleName']
@RequireValidation = params['RequireValidation']
@RequireSign = params['RequireSign']
@RoutingOrder = params['RoutingOrder']
@RequireDelivery = params['RequireDelivery']
@Email = params['Email']
@Mobile = params['Mobile']
@UserId = params['UserId']
@DeliveryMethod = params['DeliveryMethod']
@RecipientExtra = params['RecipientExtra']
end
end
# 发起流程快速注册相关信息
class RegisterInfo < TencentCloud::Common::AbstractModel
# @param LegalName: 法人姓名
# @type LegalName: String
# @param Uscc: 社会统一信用代码
# @type Uscc: String
attr_accessor :LegalName, :Uscc
def initialize(legalname=nil, uscc=nil)
@LegalName = legalname
@Uscc = uscc
end
def deserialize(params)
@LegalName = params['LegalName']
@Uscc = params['Uscc']
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 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::Ess.v20201111.models.Department`
# @param Verified: 员工是否实名
# @type Verified: Boolean
# @param CreatedOn: 员工创建时间戳
# @type CreatedOn: Integer
# @param VerifiedOn: 员工实名时间戳
# 注意:此字段可能返回 null,表示取不到有效值。
# @type VerifiedOn: Integer
# @param QuiteJob: 员工是否离职:0-未离职,1-离职
# 注意:此字段可能返回 null,表示取不到有效值。
# @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
# StartFlow请求参数结构体
class StartFlowRequest < TencentCloud::Common::AbstractModel
# @param Operator: 调用方用户信息,userId 必填
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
# @param FlowId: 签署流程编号,由CreateFlow接口返回
# @type FlowId: String
# @param ClientToken: 客户端Token,保持接口幂等性,最大长度64个字符
# @type ClientToken: String
# @param Agent: 应用相关信息
# @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent`
attr_accessor :Operator, :FlowId, :ClientToken, :Agent
def initialize(operator=nil, flowid=nil, clienttoken=nil, agent=nil)
@Operator = operator
@FlowId = flowid
@ClientToken = clienttoken
@Agent = agent
end
def deserialize(params)
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
@FlowId = params['FlowId']
@ClientToken = params['ClientToken']
unless params['Agent'].nil?
@Agent = Agent.new
@Agent.deserialize(params['Agent'])
end
end
end
# StartFlow返回参数结构体
class StartFlowResponse < TencentCloud::Common::AbstractModel
# @param Status: 返回描述,START-发起成功, REVIEW-提交审核成功,EXECUTING-已提交发起任务
# @type Status: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Status, :RequestId
def initialize(status=nil, requestid=nil)
@Status = status
@RequestId = requestid
end
def deserialize(params)
@Status = params['Status']
@RequestId = params['RequestId']
end
end
# 创建员工的成功数据
class SuccessCreateStaffData < TencentCloud::Common::AbstractModel
# @param DisplayName: 员工名
# @type DisplayName: String
# @param Mobile: 员工手机号
# @type Mobile: String
# @param UserId: 员工在电子签平台的id
# @type UserId: String
attr_accessor :DisplayName, :Mobile, :UserId
def initialize(displayname=nil, mobile=nil, userid=nil)
@DisplayName = displayname
@Mobile = mobile
@UserId = userid
end
def deserialize(params)
@DisplayName = params['DisplayName']
@Mobile = params['Mobile']
@UserId = params['UserId']
end
end
# 删除员工的成功数据
class SuccessDeleteStaffData < TencentCloud::Common::AbstractModel
# @param DisplayName: 员工名
# @type DisplayName: String
# @param Mobile: 员工手机号
# @type Mobile: String
# @param UserId: 员工在电子签平台的id
# @type UserId: String
attr_accessor :DisplayName, :Mobile, :UserId
def initialize(displayname=nil, mobile=nil, userid=nil)
@DisplayName = displayname
@Mobile = mobile
@UserId = userid
end
def deserialize(params)
@DisplayName = params['DisplayName']
@Mobile = params['Mobile']
@UserId = params['UserId']
end
end
# 二期接口返回的模板的信息结构
class TemplateInfo < TencentCloud::Common::AbstractModel
# @param TemplateId: 模板ID
# @type TemplateId: String
# @param TemplateName: 模板名字
# @type TemplateName: String
# @param Description: 模板描述信息
# @type Description: String
# @param DocumentResourceIds: 模板关联的资源IDs
# @type DocumentResourceIds: Array
# @param FileInfos: 返回的文件信息结构
# @type FileInfos: Array
# @param AttachmentResourceIds: 附件关联的资源ID是
# @type AttachmentResourceIds: Array
# @param SignOrder: 签署顺序
# @type SignOrder: Array
# @param Recipients: 签署参与者的信息
# @type Recipients: Array
# @param Components: 模板信息结构
# @type Components: Array
# @param SignComponents: 签署区模板信息结构
# @type SignComponents: Array
# @param Status: 模板状态(-1:不可用;0:草稿态;1:正式态)
# @type Status: Integer
# @param Creator: 模板的创建人
# @type Creator: String
# @param CreatedOn: 模板创建的时间戳(精确到秒)
# @type CreatedOn: Integer
# @param Promoter: 发起人角色信息
# @type Promoter: :class:`Tencentcloud::Ess.v20201111.models.Recipient`
# @param OrganizationId: 模板创建组织id
# @type OrganizationId: String
# @param PreviewUrl: 模板预览链接
# 注意:此字段可能返回 null,表示取不到有效值。
# @type PreviewUrl: String
# @param TemplateVersion: 模板版本。默认为空时,全数字字符,初始版本为yyyyMMdd001。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TemplateVersion: String
# @param Published: 模板是否已发布。true-已发布;false-未发布
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Published: Boolean
attr_accessor :TemplateId, :TemplateName, :Description, :DocumentResourceIds, :FileInfos, :AttachmentResourceIds, :SignOrder, :Recipients, :Components, :SignComponents, :Status, :Creator, :CreatedOn, :Promoter, :OrganizationId, :PreviewUrl, :TemplateVersion, :Published
def initialize(templateid=nil, templatename=nil, description=nil, documentresourceids=nil, fileinfos=nil, attachmentresourceids=nil, signorder=nil, recipients=nil, components=nil, signcomponents=nil, status=nil, creator=nil, createdon=nil, promoter=nil, organizationid=nil, previewurl=nil, templateversion=nil, published=nil)
@TemplateId = templateid
@TemplateName = templatename
@Description = description
@DocumentResourceIds = documentresourceids
@FileInfos = fileinfos
@AttachmentResourceIds = attachmentresourceids
@SignOrder = signorder
@Recipients = recipients
@Components = components
@SignComponents = signcomponents
@Status = status
@Creator = creator
@CreatedOn = createdon
@Promoter = promoter
@OrganizationId = organizationid
@PreviewUrl = previewurl
@TemplateVersion = templateversion
@Published = published
end
def deserialize(params)
@TemplateId = params['TemplateId']
@TemplateName = params['TemplateName']
@Description = params['Description']
@DocumentResourceIds = params['DocumentResourceIds']
unless params['FileInfos'].nil?
@FileInfos = []
params['FileInfos'].each do |i|
fileinfo_tmp = FileInfo.new
fileinfo_tmp.deserialize(i)
@FileInfos << fileinfo_tmp
end
end
@AttachmentResourceIds = params['AttachmentResourceIds']
@SignOrder = params['SignOrder']
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['Components'].nil?
@Components = []
params['Components'].each do |i|
component_tmp = Component.new
component_tmp.deserialize(i)
@Components << component_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
@Status = params['Status']
@Creator = params['Creator']
@CreatedOn = params['CreatedOn']
unless params['Promoter'].nil?
@Promoter = Recipient.new
@Promoter.deserialize(params['Promoter'])
end
@OrganizationId = params['OrganizationId']
@PreviewUrl = params['PreviewUrl']
@TemplateVersion = params['TemplateVersion']
@Published = params['Published']
end
end
# 此结构体 (UploadFile) 用于描述多文件上传的文件信息。
class UploadFile < TencentCloud::Common::AbstractModel
# @param FileBody: Base64编码后的文件内容
# @type FileBody: String
# @param FileName: 文件名,最大长度不超过200字符
# @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 BusinessType: 文件对应业务类型
# 1. TEMPLATE - 模板; 文件类型:.pdf/.doc/.docx/.html
# 2. DOCUMENT - 签署过程及签署后的合同文档/图片控件 文件类型:.pdf/.doc/.docx/.jpg/.png/.xls.xlsx/.html
# 3. SEAL - 印章; 文件类型:.jpg/.jpeg/.png
# @type BusinessType: String
# @param Caller: 调用方信息,其中OperatorId为必填字段,即用户的UserId
# @type Caller: :class:`Tencentcloud::Ess.v20201111.models.Caller`
# @param FileInfos: 上传文件内容数组,最多支持20个文件
# @type FileInfos: Array
# @param FileType: 文件类型, 默认通过文件内容解析得到文件类型,客户可以显示的说明上传文件的类型。
# 如:PDF 表示上传的文件 xxx.pdf的文件类型是 PDF
# @type FileType: String
# @param CoverRect: 此参数只对 PDF 文件有效。是否将pdf灰色矩阵置白
# true--是,处理置白
# 默认为false--否,不处理
# @type CoverRect: Boolean
# @param CustomIds: 用户自定义ID数组,与上传文件一一对应
# @type CustomIds: Array
# @param FileUrls: 不再使用,上传文件链接数组,最多支持20个URL
# @type FileUrls: String
attr_accessor :BusinessType, :Caller, :FileInfos, :FileType, :CoverRect, :CustomIds, :FileUrls
def initialize(businesstype=nil, caller=nil, fileinfos=nil, filetype=nil, coverrect=nil, customids=nil, fileurls=nil)
@BusinessType = businesstype
@Caller = caller
@FileInfos = fileinfos
@FileType = filetype
@CoverRect = coverrect
@CustomIds = customids
@FileUrls = fileurls
end
def deserialize(params)
@BusinessType = params['BusinessType']
unless params['Caller'].nil?
@Caller = Caller.new
@Caller.deserialize(params['Caller'])
end
unless params['FileInfos'].nil?
@FileInfos = []
params['FileInfos'].each do |i|
uploadfile_tmp = UploadFile.new
uploadfile_tmp.deserialize(i)
@FileInfos << uploadfile_tmp
end
end
@FileType = params['FileType']
@CoverRect = params['CoverRect']
@CustomIds = params['CustomIds']
@FileUrls = params['FileUrls']
end
end
# UploadFiles返回参数结构体
class UploadFilesResponse < TencentCloud::Common::AbstractModel
# @param FileIds: 文件id数组
# @type FileIds: Array
# @param TotalCount: 上传成功文件数量
# @type TotalCount: Integer
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :FileIds, :TotalCount, :RequestId
def initialize(fileids=nil, totalcount=nil, requestid=nil)
@FileIds = fileids
@TotalCount = totalcount
@RequestId = requestid
end
def deserialize(params)
@FileIds = params['FileIds']
@TotalCount = params['TotalCount']
@RequestId = params['RequestId']
end
end
# 用户信息
class UserInfo < TencentCloud::Common::AbstractModel
# @param UserId: 用户在平台的编号
# @type UserId: String
# @param Channel: 用户的来源渠道
# @type Channel: String
# @param OpenId: 用户在渠道的编号
# @type OpenId: String
# @param ClientIp: 用户真实IP
# @type ClientIp: String
# @param ProxyIp: 用户代理IP
# @type ProxyIp: String
attr_accessor :UserId, :Channel, :OpenId, :ClientIp, :ProxyIp
def initialize(userid=nil, channel=nil, openid=nil, clientip=nil, proxyip=nil)
@UserId = userid
@Channel = channel
@OpenId = openid
@ClientIp = clientip
@ProxyIp = proxyip
end
def deserialize(params)
@UserId = params['UserId']
@Channel = params['Channel']
@OpenId = params['OpenId']
@ClientIp = params['ClientIp']
@ProxyIp = params['ProxyIp']
end
end
# VerifyPdf请求参数结构体
class VerifyPdfRequest < TencentCloud::Common::AbstractModel
# @param FlowId: 合同Id,流程Id
# @type FlowId: String
# @param Operator: 调用方用户信息,userId 必填
# @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo`
attr_accessor :FlowId, :Operator
def initialize(flowid=nil, operator=nil)
@FlowId = flowid
@Operator = operator
end
def deserialize(params)
@FlowId = params['FlowId']
unless params['Operator'].nil?
@Operator = UserInfo.new
@Operator.deserialize(params['Operator'])
end
end
end
# VerifyPdf返回参数结构体
class VerifyPdfResponse < 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
end
end
end