# 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 Admin < TencentCloud::Common::AbstractModel # @param Name: 超管名 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Name: String # @param Mobile: 超管手机号 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Mobile: String attr_accessor :Name, :Mobile def initialize(name=nil, mobile=nil) @Name = name @Mobile = mobile end def deserialize(params) @Name = params['Name'] @Mobile = params['Mobile'] end end # 代理相关应用信息,如集团主企业代子企业操作 class Agent < TencentCloud::Common::AbstractModel # @param AppId: 代理机构的应用编号,32位字符串,一般不用传 # @type AppId: String # @param ProxyAppId: 被代理机构的应用号,一般不用传 # @type ProxyAppId: String # @param ProxyOrganizationId: 被代理机构在电子签平台的机构编号,集团代理下场景必传 # @type ProxyOrganizationId: String # @param ProxyOperator: 被代理机构的经办人,一般不用传 # @type ProxyOperator: String attr_accessor :AppId, :ProxyAppId, :ProxyOrganizationId, :ProxyOperator def initialize(appid=nil, proxyappid=nil, proxyorganizationid=nil, proxyoperator=nil) @AppId = appid @ProxyAppId = proxyappid @ProxyOrganizationId = proxyorganizationid @ProxyOperator = proxyoperator end def deserialize(params) @AppId = params['AppId'] @ProxyAppId = params['ProxyAppId'] @ProxyOrganizationId = params['ProxyOrganizationId'] @ProxyOperator = params['ProxyOperator'] 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` # @param ApproverVerifyTypes: 签署人查看合同时认证方式, # 1-实名查看 2-短信验证码查看(企业签署方不支持该方式) # 如果不传默认为1 # @type ApproverVerifyTypes: Array # @param ApproverSignTypes: 签署人签署合同时的认证方式 # 1-人脸认证 2-签署密码 3-运营商三要素(默认为1,2) # 合同签署认证方式的优先级 verifyChannel>approverSignTypes # @type ApproverSignTypes: Array attr_accessor :ApproverType, :ApproverName, :ApproverMobile, :SignComponents, :OrganizationName, :ApproverIdCardNumber, :ApproverIdCardType, :NotifyType, :ApproverRole, :VerifyChannel, :PreReadTime, :UserId, :ApproverSource, :CustomApproverTag, :ApproverOption, :ApproverVerifyTypes, :ApproverSignTypes 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, approververifytypes=nil, approversigntypes=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 @ApproverVerifyTypes = approververifytypes @ApproverSignTypes = approversigntypes 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 @ApproverVerifyTypes = params['ApproverVerifyTypes'] @ApproverSignTypes = params['ApproverSignTypes'] 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 # 自动签开启、签署相关配置 class AutoSignConfig < TencentCloud::Common::AbstractModel # @param UserInfo: 自动签开通个人用户的三要素 # @type UserInfo: :class:`Tencentcloud::Ess.v20201111.models.UserThreeFactor` # @param CallbackUrl: 回调链接 # @type CallbackUrl: String # @param CertInfoCallback: 是否回调证书信息 # @type CertInfoCallback: Boolean # @param UserDefineSeal: 是否支持用户自定义签名印章 # @type UserDefineSeal: Boolean # @param SealImgCallback: 是否需要回调的时候返回印章(签名) 图片的 base64 # @type SealImgCallback: Boolean # @param VerifyChannels: 开通时候的验证方式,取值:WEIXINAPP(微信人脸识别),INSIGHT(慧眼人脸认别),TELECOM(运营商三要素验证)。如果是小程序开通链接,支持传 WEIXINAPP / TELECOM。如果是 H5 开通链接,支持传 INSIGHT / TELECOM。默认值 WEIXINAPP / INSIGHT。 # @type VerifyChannels: Array attr_accessor :UserInfo, :CallbackUrl, :CertInfoCallback, :UserDefineSeal, :SealImgCallback, :VerifyChannels def initialize(userinfo=nil, callbackurl=nil, certinfocallback=nil, userdefineseal=nil, sealimgcallback=nil, verifychannels=nil) @UserInfo = userinfo @CallbackUrl = callbackurl @CertInfoCallback = certinfocallback @UserDefineSeal = userdefineseal @SealImgCallback = sealimgcallback @VerifyChannels = verifychannels end def deserialize(params) unless params['UserInfo'].nil? @UserInfo = UserThreeFactor.new @UserInfo.deserialize(params['UserInfo']) end @CallbackUrl = params['CallbackUrl'] @CertInfoCallback = params['CertInfoCallback'] @UserDefineSeal = params['UserDefineSeal'] @SealImgCallback = params['SealImgCallback'] @VerifyChannels = params['VerifyChannels'] 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 # @param Name: 被抄送人姓名 # @type Name: String # @param CcType: 被抄送人类型, # 0--个人 # 1--员工 # @type CcType: Integer # @param CcPermission: 被抄送人权限 # 0--可查看 # 1--可查看也可下载 # @type CcPermission: Integer attr_accessor :Mobile, :Name, :CcType, :CcPermission def initialize(mobile=nil, name=nil, cctype=nil, ccpermission=nil) @Mobile = mobile @Name = name @CcType = cctype @CcPermission = ccpermission end def deserialize(params) @Mobile = params['Mobile'] @Name = params['Name'] @CcType = params['CcType'] @CcPermission = params['CcPermission'] end end # 模板控件信息 class Component < TencentCloud::Common::AbstractModel # @param ComponentType: 如果是Component控件类型,则可选的字段为: # TEXT - 普通文本控件,输入文本字符串; # MULTI_LINE_TEXT - 多行文本控件,输入文本字符串; # CHECK_BOX - 勾选框控件,若选中填写ComponentValue 填写 true或者 false 字符串; # FILL_IMAGE - 图片控件,ComponentValue 填写图片的资源 ID; # DYNAMIC_TABLE - 动态表格控件; # ATTACHMENT - 附件控件,ComponentValue 填写附件图片的资源 ID列表,以逗号分割; # SELECTOR - 选择器控件,ComponentValue填写选择的字符串内容; # DATE - 日期控件;默认是格式化为xxxx年xx月xx日字符串; # DISTRICT - 省市区行政区划控件,ComponentValue填写省市区行政区划字符串内容; # 如果是SignComponent控件类型,则可选的字段为 # SIGN_SEAL - 签署印章控件; # SIGN_DATE - 签署日期控件; # SIGN_SIGNATURE - 用户签名控件; # SIGN_PERSONAL_SEAL - 个人签署印章控件(使用文件发起暂不支持此类型); # SIGN_PAGING_SEAL - 骑缝章;若文件发起,需要对应填充ComponentPosY、ComponentWidth、ComponentHeight # SIGN_OPINION - 签署意见控件,用户需要根据配置的签署意见内容,完成对意见内容的确认; # SIGN_LEGAL_PERSON_SEAL - 企业法定代表人控件。 # 表单域的控件不能作为印章和签名控件 # @type ComponentType: String # @param 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,于控制台查询获取 # 控件值约束说明: # 企业全称控件: # 约束:企业名称中文字符中文括号 # 检查正则表达式:/^[\u3400-\u4dbf\u4e00-\u9fa5()]+$/ # 统一社会信用代码控件: # 检查正则表达式:/^[A-Z0-9]{1,18}$/ # 法人名称控件: # 约束:最大50个字符,2到25个汉字或者1到50个字母 # 检查正则表达式:/^([\u3400-\u4dbf\u4e00-\u9fa5.·]{2,25}|[a-zA-Z·,\s-]{1,50})$/ # 签署意见控件: # 约束:签署意见最大长度为50字符 # 签署人手机号控件: # 约束:国内手机号 13,14,15,16,17,18,19号段长度11位 # 签署人身份证控件: # 约束:合法的身份证号码检查 # 控件名称: # 约束:控件名称最大长度为20字符 # 单行文本控件: # 约束:只允许输入中文,英文,数字,中英文标点符号 # 多行文本控件: # 约束:只允许输入中文,英文,数字,中英文标点符号 # 勾选框控件: # 约束:选择填字符串true,不选填字符串false # 选择器控件: # 约束:同单行文本控件约束,填写选择值中的字符串 # 数字控件: # 约束:请输入有效的数字(可带小数点) # 检查正则表达式:/^(-|\+)?\d+(\.\d+)?$/ # 日期控件: # 约束:格式:yyyy年mm月dd日 # 附件控件: # 约束:JPG或PNG图片,上传数量限制,1到6个,最大6个附件 # 图片控件: # 约束:JPG或PNG图片,填写上传的图片资源ID # 邮箱控件: # 约束:请输入有效的邮箱地址, w3c标准 # 检查正则表达式:/^([A-Za-z0-9_\-.!#$%&])+@([A-Za-z0-9_\-.])+\.([A-Za-z]{2,4})$/ # 参考:https://emailregex.com/ # 地址控件: # 同单行文本控件约束 # 省市区控件: # 同单行文本控件约束 # 性别控件: # 同单行文本控件约束,填写选择值中的字符串 # 学历控件: # 同单行文本控件约束,填写选择值中的字符串 # @type ComponentValue: String # @param 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: 调用方用户信息,userId 必填 # @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 必填。支持填入集团子公司经办人 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: 代理相关应用信息,如集团主企业代子企业操作的场景中ProxyOrganizationId必填 # @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 # @param Initiator: 企微消息中的发起人 # @type Initiator: String attr_accessor :Operator, :FlowId, :Approvers, :Initiator def initialize(operator=nil, flowid=nil, approvers=nil, initiator=nil) @Operator = operator @FlowId = flowid @Approvers = approvers @Initiator = initiator 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 @Initiator = params['Initiator'] 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 必填。支持填入集团子公司经办人 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 ApproverVerifyType: 签署人校验方式 # VerifyCheck: 人脸识别(默认) # MobileCheck:手机号验证 # 参数说明:可选人脸识别或手机号验证两种方式,若选择后者,未实名个人签署方在签署合同时,无需经过实名认证和意愿确认两次人脸识别,该能力仅适用于个人签署方。 # @type ApproverVerifyType: String # @param FlowDescription: 签署流程描述,最大长度1000个字符 # @type FlowDescription: String # @param SignBeanTag: 标识是否允许发起后添加控件。0为不允许1为允许。如果为1,创建的时候不能有签署控件,只能创建后添加。注意发起后添加控件功能不支持添加骑缝章和签批控件 # @type SignBeanTag: Integer # @param Agent: 代理相关应用信息,如集团主企业代子企业操作的场景中ProxyOrganizationId必填 # @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent` # @param CcNotifyType: 给关注人发送短信通知的类型,0-合同发起时通知 1-签署完成后通知 # @type CcNotifyType: Integer attr_accessor :Operator, :FlowName, :Approvers, :FileIds, :FlowType, :Components, :CcInfos, :NeedPreview, :PreviewType, :Deadline, :Unordered, :CustomShowMap, :NeedSignReview, :UserData, :ApproverVerifyType, :FlowDescription, :SignBeanTag, :Agent, :CcNotifyType 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, approververifytype=nil, flowdescription=nil, signbeantag=nil, agent=nil, ccnotifytype=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 @ApproverVerifyType = approververifytype @FlowDescription = flowdescription @SignBeanTag = signbeantag @Agent = agent @CcNotifyType = ccnotifytype 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'] @ApproverVerifyType = params['ApproverVerifyType'] @FlowDescription = params['FlowDescription'] @SignBeanTag = params['SignBeanTag'] unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @CcNotifyType = params['CcNotifyType'] 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,用于查询出证报告DescribeFlowEvidenceReport接口时用到 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ReportId: String # @param Status: 执行中:EvidenceStatusExecuting # 成功:EvidenceStatusSuccess # 失败:EvidenceStatusFailed # @type Status: String # @param ReportUrl: 废除,字段无效 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ReportUrl: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :ReportId, :Status, :ReportUrl, :RequestId def initialize(reportid=nil, status=nil, reporturl=nil, requestid=nil) @ReportId = reportid @Status = status @ReportUrl = reporturl @RequestId = requestid end def deserialize(params) @ReportId = params['ReportId'] @Status = params['Status'] @ReportUrl = params['ReportUrl'] @RequestId = params['RequestId'] end end # CreateFlowReminds请求参数结构体 class CreateFlowRemindsRequest < 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 # CreateFlowReminds返回参数结构体 class CreateFlowRemindsResponse < TencentCloud::Common::AbstractModel # @param RemindFlowRecords: 签署连接过期时间字符串:年月日-时分秒 # @type RemindFlowRecords: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RemindFlowRecords, :RequestId def initialize(remindflowrecords=nil, requestid=nil) @RemindFlowRecords = remindflowrecords @RequestId = requestid end def deserialize(params) unless params['RemindFlowRecords'].nil? @RemindFlowRecords = [] params['RemindFlowRecords'].each do |i| remindflowrecords_tmp = RemindFlowRecords.new remindflowrecords_tmp.deserialize(i) @RemindFlowRecords << remindflowrecords_tmp end end @RequestId = params['RequestId'] end end # CreateFlow请求参数结构体 class CreateFlowRequest < TencentCloud::Common::AbstractModel # @param Operator: 调用方用户信息,userId 必填。支持填入集团子公司经办人 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: 代理相关应用信息,如集团主企业代子企业操作的场景中ProxyOrganizationId必填 # @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent` # @param CcInfos: 被抄送人的信息列表。 # 注: 此功能为白名单功能,若有需要,请联系电子签客服开白使用。 # @type CcInfos: Array attr_accessor :Operator, :FlowName, :Approvers, :FlowType, :ClientToken, :RelatedFlowId, :DeadLine, :UserData, :FlowDescription, :Unordered, :CustomShowMap, :NeedSignReview, :CallbackUrl, :Agent, :CcInfos 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, ccinfos=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 @CcInfos = ccinfos 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 unless params['CcInfos'].nil? @CcInfos = [] params['CcInfos'].each do |i| ccinfo_tmp = CcInfo.new ccinfo_tmp.deserialize(i) @CcInfos << ccinfo_tmp end 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 # CreateFlowSignUrl请求参数结构体 class CreateFlowSignUrlRequest < TencentCloud::Common::AbstractModel # @param FlowId: 流程编号 # @type FlowId: String # @param FlowApproverInfos: 流程签署人,其中ApproverName,ApproverMobile和ApproverType必传,其他可不传,ApproverType目前只支持个人类型的签署人。还需注意签署人只能有手写签名和时间类型的签署控件,其他类型的填写控件和签署控件暂时都未支持。 # @type FlowApproverInfos: Array # @param Organization: 机构信息,暂未开放 # @type Organization: :class:`Tencentcloud::Ess.v20201111.models.OrganizationInfo` # @param Operator: 用户信息,此结构体UserId必填 # @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo` attr_accessor :FlowId, :FlowApproverInfos, :Organization, :Operator def initialize(flowid=nil, flowapproverinfos=nil, organization=nil, operator=nil) @FlowId = flowid @FlowApproverInfos = flowapproverinfos @Organization = organization @Operator = operator end def deserialize(params) @FlowId = params['FlowId'] unless params['FlowApproverInfos'].nil? @FlowApproverInfos = [] params['FlowApproverInfos'].each do |i| flowcreateapprover_tmp = FlowCreateApprover.new flowcreateapprover_tmp.deserialize(i) @FlowApproverInfos << flowcreateapprover_tmp end end unless params['Organization'].nil? @Organization = OrganizationInfo.new @Organization.deserialize(params['Organization']) end unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # CreateFlowSignUrl返回参数结构体 class CreateFlowSignUrlResponse < TencentCloud::Common::AbstractModel # @param FlowApproverUrlInfos: 签署人签署链接信息 # @type FlowApproverUrlInfos: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :FlowApproverUrlInfos, :RequestId def initialize(flowapproverurlinfos=nil, requestid=nil) @FlowApproverUrlInfos = flowapproverurlinfos @RequestId = requestid end def deserialize(params) unless params['FlowApproverUrlInfos'].nil? @FlowApproverUrlInfos = [] params['FlowApproverUrlInfos'].each do |i| flowapproverurlinfo_tmp = FlowApproverUrlInfo.new flowapproverurlinfo_tmp.deserialize(i) @FlowApproverUrlInfos << flowapproverurlinfo_tmp end end @RequestId = params['RequestId'] end end # CreateIntegrationEmployees请求参数结构体 class CreateIntegrationEmployeesRequest < TencentCloud::Common::AbstractModel # @param Operator: 操作人信息,userId必填 # @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo` # @param Employees: 待创建员工的信息,Mobile和DisplayName必填 # @type Employees: Array # @param Agent: 代理相关应用信息,如集团主企业代子企业操作的场景中ProxyOrganizationId必填 # @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent` attr_accessor :Operator, :Employees, :Agent def initialize(operator=nil, employees=nil, agent=nil) @Operator = operator @Employees = employees @Agent = agent 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 unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) 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 UserData: 用户自定义字段,回调的时候会进行透传,长度需要小于20480 # @type UserData: String # @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, :UserData, :CallbackUrl, :Agent, :ApproverRestrictions def initialize(operator=nil, templateid=nil, flowname=nil, maxflownum=nil, floweffectiveday=nil, qreffectiveday=nil, restrictions=nil, userdata=nil, callbackurl=nil, agent=nil, approverrestrictions=nil) @Operator = operator @TemplateId = templateid @FlowName = flowname @MaxFlowNum = maxflownum @FlowEffectiveDay = floweffectiveday @QrEffectiveDay = qreffectiveday @Restrictions = restrictions @UserData = userdata @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 @UserData = params['UserData'] @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 # CreatePreparedPersonalEsign请求参数结构体 class CreatePreparedPersonalEsignRequest < TencentCloud::Common::AbstractModel # @param UserName: 个人用户名称 # @type UserName: String # @param IdCardNumber: 身份证件号码 # @type IdCardNumber: String # @param SealImage: 印章图片的base64 # @type SealImage: String # @param SealName: 印章名称 # @type SealName: String # @param Operator: 调用方用户信息,userId 必填。支持填入集团子公司经办人 userId代发合同。 # @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo` # @param IdCardType: 身份证件类型: # ID_CARD 身份证 # PASSPORT 护照 # HONGKONG_AND_MACAO 香港身份 # FOREIGN_ID_CARD 国外身份 # HONGKONG_MACAO_AND_TAIWAN 港台身份 # @type IdCardType: String # @param Mobile: 手机号码 # @type Mobile: String # @param EnableAutoSign: 是否需开通自动签 # @type EnableAutoSign: Boolean attr_accessor :UserName, :IdCardNumber, :SealImage, :SealName, :Operator, :IdCardType, :Mobile, :EnableAutoSign def initialize(username=nil, idcardnumber=nil, sealimage=nil, sealname=nil, operator=nil, idcardtype=nil, mobile=nil, enableautosign=nil) @UserName = username @IdCardNumber = idcardnumber @SealImage = sealimage @SealName = sealname @Operator = operator @IdCardType = idcardtype @Mobile = mobile @EnableAutoSign = enableautosign end def deserialize(params) @UserName = params['UserName'] @IdCardNumber = params['IdCardNumber'] @SealImage = params['SealImage'] @SealName = params['SealName'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end @IdCardType = params['IdCardType'] @Mobile = params['Mobile'] @EnableAutoSign = params['EnableAutoSign'] end end # CreatePreparedPersonalEsign返回参数结构体 class CreatePreparedPersonalEsignResponse < TencentCloud::Common::AbstractModel # @param SealId: 导入生成的印章ID # @type SealId: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SealId, :RequestId def initialize(sealid=nil, requestid=nil) @SealId = sealid @RequestId = requestid end def deserialize(params) @SealId = params['SealId'] @RequestId = params['RequestId'] end end # CreateReleaseFlow请求参数结构体 class CreateReleaseFlowRequest < TencentCloud::Common::AbstractModel # @param Operator: 调用方用户信息,userId 必填 # @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo` # @param NeedRelievedFlowId: 待解除的签署流程编号(即原签署流程的编号) # @type NeedRelievedFlowId: String # @param ReliveInfo: 解除协议内容 # @type ReliveInfo: :class:`Tencentcloud::Ess.v20201111.models.RelieveInfo` # @param ReleasedApprovers: 非必须,解除协议的本企业签署人列表, # 默认使用原流程的签署人列表,当解除协议的签署人与原流程的签署人不能相同时(例如原流程签署人离职了),需要指定本企业其他已实名员工来替换原流程中的原签署人,注意需要指明原签署人的编号(ReceiptId,通过DescribeFlowInfo接口获取)来代表需要替换哪一个签署人 # 解除协议的签署人数量不能多于原流程的签署人数量 # @type ReleasedApprovers: Array attr_accessor :Operator, :NeedRelievedFlowId, :ReliveInfo, :ReleasedApprovers def initialize(operator=nil, needrelievedflowid=nil, reliveinfo=nil, releasedapprovers=nil) @Operator = operator @NeedRelievedFlowId = needrelievedflowid @ReliveInfo = reliveinfo @ReleasedApprovers = releasedapprovers end def deserialize(params) unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end @NeedRelievedFlowId = params['NeedRelievedFlowId'] unless params['ReliveInfo'].nil? @ReliveInfo = RelieveInfo.new @ReliveInfo.deserialize(params['ReliveInfo']) end unless params['ReleasedApprovers'].nil? @ReleasedApprovers = [] params['ReleasedApprovers'].each do |i| releasedapprover_tmp = ReleasedApprover.new releasedapprover_tmp.deserialize(i) @ReleasedApprovers << releasedapprover_tmp end end end end # CreateReleaseFlow返回参数结构体 class CreateReleaseFlowResponse < 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 # 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: 代理相关应用信息,如集团主企业代子企业操作的场景中ProxyOrganizationId必填 # @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 # CreateSealPolicy请求参数结构体 class CreateSealPolicyRequest < TencentCloud::Common::AbstractModel # @param Operator: 授权发起人在平台信息,具体参考UserInfo结构体 # @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo` # @param Users: 用户在电子文件签署平台标识信息,具体参考UserInfo结构体。可跟下面的UserIds可叠加起作用 # @type Users: Array # @param SealId: 印章ID # @type SealId: String # @param Expired: 授权有效期。时间戳秒级 # @type Expired: Integer # @param Policy: 印章授权内容 # @type Policy: String # @param Agent: 应用相关 # @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent` # @param UserIds: 需要授权的用户UserId集合。跟上面的SealId参数配合使用。选填,跟上面的Users同时起作用 # @type UserIds: Array attr_accessor :Operator, :Users, :SealId, :Expired, :Policy, :Agent, :UserIds def initialize(operator=nil, users=nil, sealid=nil, expired=nil, policy=nil, agent=nil, userids=nil) @Operator = operator @Users = users @SealId = sealid @Expired = expired @Policy = policy @Agent = agent @UserIds = userids end def deserialize(params) unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end unless params['Users'].nil? @Users = [] params['Users'].each do |i| userinfo_tmp = UserInfo.new userinfo_tmp.deserialize(i) @Users << userinfo_tmp end end @SealId = params['SealId'] @Expired = params['Expired'] @Policy = params['Policy'] unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @UserIds = params['UserIds'] end end # CreateSealPolicy返回参数结构体 class CreateSealPolicyResponse < TencentCloud::Common::AbstractModel # @param UserIds: 最终授权成功的。其他的跳过的是已经授权了的 # @type UserIds: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :UserIds, :RequestId def initialize(userids=nil, requestid=nil) @UserIds = userids @RequestId = requestid end def deserialize(params) @UserIds = params['UserIds'] @RequestId = params['RequestId'] end end # 创建员工的结果 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 # CreateUserAutoSignEnableUrl请求参数结构体 class CreateUserAutoSignEnableUrlRequest < TencentCloud::Common::AbstractModel # @param Operator: 操作人信息 # @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo` # @param SceneKey: 自动签场景: # E_PRESCRIPTION_AUTO_SIGN 电子处方 # @type SceneKey: String # @param AutoSignConfig: 自动签开通,签署相关配置 # @type AutoSignConfig: :class:`Tencentcloud::Ess.v20201111.models.AutoSignConfig` # @param UrlType: 链接类型,空-默认小程序端链接,H5SIGN-h5端链接 # @type UrlType: String attr_accessor :Operator, :SceneKey, :AutoSignConfig, :UrlType def initialize(operator=nil, scenekey=nil, autosignconfig=nil, urltype=nil) @Operator = operator @SceneKey = scenekey @AutoSignConfig = autosignconfig @UrlType = urltype end def deserialize(params) unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end @SceneKey = params['SceneKey'] unless params['AutoSignConfig'].nil? @AutoSignConfig = AutoSignConfig.new @AutoSignConfig.deserialize(params['AutoSignConfig']) end @UrlType = params['UrlType'] end end # CreateUserAutoSignEnableUrl返回参数结构体 class CreateUserAutoSignEnableUrlResponse < TencentCloud::Common::AbstractModel # @param Url: 跳转短链 # @type Url: String # @param AppId: 小程序AppId # @type AppId: String # @param AppOriginalId: 小程序 原始 Id # @type AppOriginalId: String # @param Path: 跳转路径 # @type Path: String # @param QrCode: base64格式跳转二维码 # @type QrCode: String # @param UrlType: 链接类型,空-默认小程序端链接,H5SIGN-h5端链接 # @type UrlType: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Url, :AppId, :AppOriginalId, :Path, :QrCode, :UrlType, :RequestId def initialize(url=nil, appid=nil, apporiginalid=nil, path=nil, qrcode=nil, urltype=nil, requestid=nil) @Url = url @AppId = appid @AppOriginalId = apporiginalid @Path = path @QrCode = qrcode @UrlType = urltype @RequestId = requestid end def deserialize(params) @Url = params['Url'] @AppId = params['AppId'] @AppOriginalId = params['AppOriginalId'] @Path = params['Path'] @QrCode = params['QrCode'] @UrlType = params['UrlType'] @RequestId = params['RequestId'] 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 # @param Agent: 代理信息 # @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent` attr_accessor :Operator, :Employees, :Agent def initialize(operator=nil, employees=nil, agent=nil) @Operator = operator @Employees = employees @Agent = agent 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 unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) 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 # DeleteSealPolicies请求参数结构体 class DeleteSealPoliciesRequest < TencentCloud::Common::AbstractModel # @param Operator: 操作撤销的用户信息 # @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo` # @param PolicyIds: 印章授权编码数组。这个参数跟下面的SealId其中一个必填,另外一个可选填 # @type PolicyIds: Array # @param Agent: 应用相关 # @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent` # @param SealId: 印章ID。这个参数跟上面的PolicyIds其中一个必填,另外一个可选填 # @type SealId: String # @param UserIds: 待授权的员工ID # @type UserIds: Array attr_accessor :Operator, :PolicyIds, :Agent, :SealId, :UserIds def initialize(operator=nil, policyids=nil, agent=nil, sealid=nil, userids=nil) @Operator = operator @PolicyIds = policyids @Agent = agent @SealId = sealid @UserIds = userids end def deserialize(params) unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end @PolicyIds = params['PolicyIds'] unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end @SealId = params['SealId'] @UserIds = params['UserIds'] end end # DeleteSealPolicies返回参数结构体 class DeleteSealPoliciesResponse < 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 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` # @param Agent: 代理相关应用信息,如集团主企业代子企业操作的场景中ProxyOrganizationId必填 # @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent` attr_accessor :FlowIds, :Operator, :Agent def initialize(flowids=nil, operator=nil, agent=nil) @FlowIds = flowids @Operator = operator @Agent = agent end def deserialize(params) @FlowIds = params['FlowIds'] unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) 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: 代理相关应用信息,如集团主企业代子企业操作的场景中ProxyOrganizationId必填 # @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 # DescribeIntegrationMainOrganizationUser请求参数结构体 class DescribeIntegrationMainOrganizationUserRequest < TencentCloud::Common::AbstractModel # @param Operator: 操作人信息,userId必填 # @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo` attr_accessor :Operator def initialize(operator=nil) @Operator = operator end def deserialize(params) unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end end end # DescribeIntegrationMainOrganizationUser返回参数结构体 class DescribeIntegrationMainOrganizationUserResponse < TencentCloud::Common::AbstractModel # @param IntegrationMainOrganizationUser: 主企业员工账号信息 # 注意:此字段可能返回 null,表示取不到有效值。 # @type IntegrationMainOrganizationUser: :class:`Tencentcloud::Ess.v20201111.models.IntegrationMainOrganizationUser` # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :IntegrationMainOrganizationUser, :RequestId def initialize(integrationmainorganizationuser=nil, requestid=nil) @IntegrationMainOrganizationUser = integrationmainorganizationuser @RequestId = requestid end def deserialize(params) unless params['IntegrationMainOrganizationUser'].nil? @IntegrationMainOrganizationUser = IntegrationMainOrganizationUser.new @IntegrationMainOrganizationUser.deserialize(params['IntegrationMainOrganizationUser']) end @RequestId = params['RequestId'] end end # DescribeOrganizationGroupOrganizations请求参数结构体 class DescribeOrganizationGroupOrganizationsRequest < TencentCloud::Common::AbstractModel # @param Operator: 操作人信息,userId必填 # @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo` # @param Limit: 单次查询成员企业最大返回数量 # @type Limit: Integer # @param Offset: 页面偏移量 # @type Offset: Integer # @param Name: 查询成员企业的企业名,模糊匹配 # @type Name: String # @param Status: 成员企业加入集团的当前状态:1-待授权;2-已授权待激活;3-拒绝授权;4-已解除;5-已加入 # @type Status: Integer # @param Export: 是否到处当前成员企业数据 # @type Export: Boolean # @param Id: 成员企业id # @type Id: String attr_accessor :Operator, :Limit, :Offset, :Name, :Status, :Export, :Id def initialize(operator=nil, limit=nil, offset=nil, name=nil, status=nil, export=nil, id=nil) @Operator = operator @Limit = limit @Offset = offset @Name = name @Status = status @Export = export @Id = id end def deserialize(params) unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end @Limit = params['Limit'] @Offset = params['Offset'] @Name = params['Name'] @Status = params['Status'] @Export = params['Export'] @Id = params['Id'] end end # DescribeOrganizationGroupOrganizations返回参数结构体 class DescribeOrganizationGroupOrganizationsResponse < TencentCloud::Common::AbstractModel # @param Total: 查询到的符合条件的成员企业总数量 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Total: Integer # @param JoinedTotal: 已授权待激活的企业数量 # 注意:此字段可能返回 null,表示取不到有效值。 # @type JoinedTotal: Integer # @param ActivedTotal: 已加入的企业数量 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ActivedTotal: Integer # @param ExportUrl: 导出文件的url # 注意:此字段可能返回 null,表示取不到有效值。 # @type ExportUrl: String # @param List: 成员企业信息列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type List: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Total, :JoinedTotal, :ActivedTotal, :ExportUrl, :List, :RequestId def initialize(total=nil, joinedtotal=nil, activedtotal=nil, exporturl=nil, list=nil, requestid=nil) @Total = total @JoinedTotal = joinedtotal @ActivedTotal = activedtotal @ExportUrl = exporturl @List = list @RequestId = requestid end def deserialize(params) @Total = params['Total'] @JoinedTotal = params['JoinedTotal'] @ActivedTotal = params['ActivedTotal'] @ExportUrl = params['ExportUrl'] unless params['List'].nil? @List = [] params['List'].each do |i| grouporganization_tmp = GroupOrganization.new grouporganization_tmp.deserialize(i) @List << grouporganization_tmp end end @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 # @param SealTypes: 印章类型列表(都是组织机构印章)。 # 为空时查询所有类型的印章。 # 目前支持以下类型: # OFFICIAL:企业公章; # CONTRACT:合同专用章; # ORGANIZATION_SEAL:企业印章(图片上传创建); # LEGAL_PERSON_SEAL:法定代表人章 # @type SealTypes: Array # @param Agent: 代理相关应用信息,如集团主企业代子企业操作的场景中ProxyOrganizationId必填 # @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent` attr_accessor :Operator, :Limit, :Offset, :InfoType, :SealId, :SealTypes, :Agent def initialize(operator=nil, limit=nil, offset=nil, infotype=nil, sealid=nil, sealtypes=nil, agent=nil) @Operator = operator @Limit = limit @Offset = offset @InfoType = infotype @SealId = sealid @SealTypes = sealtypes @Agent = agent 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'] @SealTypes = params['SealTypes'] unless params['Agent'].nil? @Agent = Agent.new @Agent.deserialize(params['Agent']) end 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 # DescribeUserAutoSignStatus请求参数结构体 class DescribeUserAutoSignStatusRequest < TencentCloud::Common::AbstractModel # @param Operator: 操作人信息 # @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo` # @param SceneKey: 自动签场景: # E_PRESCRIPTION_AUTO_SIGN 电子处方 # @type SceneKey: String # @param UserInfo: 查询开启状态的用户信息 # @type UserInfo: :class:`Tencentcloud::Ess.v20201111.models.UserThreeFactor` attr_accessor :Operator, :SceneKey, :UserInfo def initialize(operator=nil, scenekey=nil, userinfo=nil) @Operator = operator @SceneKey = scenekey @UserInfo = userinfo end def deserialize(params) unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end @SceneKey = params['SceneKey'] unless params['UserInfo'].nil? @UserInfo = UserThreeFactor.new @UserInfo.deserialize(params['UserInfo']) end end end # DescribeUserAutoSignStatus返回参数结构体 class DescribeUserAutoSignStatusResponse < TencentCloud::Common::AbstractModel # @param IsOpen: 是否开通 # @type IsOpen: Boolean # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :IsOpen, :RequestId def initialize(isopen=nil, requestid=nil) @IsOpen = isopen @RequestId = requestid end def deserialize(params) @IsOpen = params['IsOpen'] @RequestId = params['RequestId'] end end # DisableUserAutoSign请求参数结构体 class DisableUserAutoSignRequest < TencentCloud::Common::AbstractModel # @param Operator: 操作人信息 # @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo` # @param SceneKey: 自动签场景: # E_PRESCRIPTION_AUTO_SIGN 电子处方 # @type SceneKey: String # @param UserInfo: 关闭自动签的个人的三要素 # @type UserInfo: :class:`Tencentcloud::Ess.v20201111.models.UserThreeFactor` attr_accessor :Operator, :SceneKey, :UserInfo def initialize(operator=nil, scenekey=nil, userinfo=nil) @Operator = operator @SceneKey = scenekey @UserInfo = userinfo end def deserialize(params) unless params['Operator'].nil? @Operator = UserInfo.new @Operator.deserialize(params['Operator']) end @SceneKey = params['SceneKey'] unless params['UserInfo'].nil? @UserInfo = UserThreeFactor.new @UserInfo.deserialize(params['UserInfo']) end end end # DisableUserAutoSign返回参数结构体 class DisableUserAutoSignResponse < 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 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 FlowApproverUrlInfo < TencentCloud::Common::AbstractModel # @param SignUrl: 签署链接,注意该链接有效期为30分钟,同时需要注意保密,不要外泄给无关用户。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SignUrl: String # @param ApproverMobile: 签署人手机号 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ApproverMobile: String # @param ApproverName: 签署人姓名 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ApproverName: String # @param ApproverType: 签署人类型 1-个人 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ApproverType: Integer attr_accessor :SignUrl, :ApproverMobile, :ApproverName, :ApproverType def initialize(signurl=nil, approvermobile=nil, approvername=nil, approvertype=nil) @SignUrl = signurl @ApproverMobile = approvermobile @ApproverName = approvername @ApproverType = approvertype end def deserialize(params) @SignUrl = params['SignUrl'] @ApproverMobile = params['ApproverMobile'] @ApproverName = params['ApproverName'] @ApproverType = params['ApproverType'] 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 GroupOrganization < TencentCloud::Common::AbstractModel # @param Name: 成员企业名 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Name: String # @param Alias: 成员企业别名 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Alias: String # @param OrganizationId: 成员企业id # 注意:此字段可能返回 null,表示取不到有效值。 # @type OrganizationId: String # @param UpdateTime: 更新时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type UpdateTime: Integer # @param Status: 成员企业状态 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Status: Integer # @param IsMainOrganization: 是否为集团主企业 # 注意:此字段可能返回 null,表示取不到有效值。 # @type IsMainOrganization: Boolean # @param IdCardNumber: 企业社会信用代码 # 注意:此字段可能返回 null,表示取不到有效值。 # @type IdCardNumber: String # @param AdminInfo: 企业超管信息 # 注意:此字段可能返回 null,表示取不到有效值。 # @type AdminInfo: :class:`Tencentcloud::Ess.v20201111.models.Admin` # @param License: 企业许可证 # 注意:此字段可能返回 null,表示取不到有效值。 # @type License: String # @param LicenseExpireTime: 企业许可证过期时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type LicenseExpireTime: Integer # @param JoinTime: 成员企业加入集团时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type JoinTime: Integer # @param FlowEngineEnable: 是否可以使用审批流引擎 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FlowEngineEnable: Boolean attr_accessor :Name, :Alias, :OrganizationId, :UpdateTime, :Status, :IsMainOrganization, :IdCardNumber, :AdminInfo, :License, :LicenseExpireTime, :JoinTime, :FlowEngineEnable def initialize(name=nil, _alias=nil, organizationid=nil, updatetime=nil, status=nil, ismainorganization=nil, idcardnumber=nil, admininfo=nil, license=nil, licenseexpiretime=nil, jointime=nil, flowengineenable=nil) @Name = name @Alias = _alias @OrganizationId = organizationid @UpdateTime = updatetime @Status = status @IsMainOrganization = ismainorganization @IdCardNumber = idcardnumber @AdminInfo = admininfo @License = license @LicenseExpireTime = licenseexpiretime @JoinTime = jointime @FlowEngineEnable = flowengineenable end def deserialize(params) @Name = params['Name'] @Alias = params['Alias'] @OrganizationId = params['OrganizationId'] @UpdateTime = params['UpdateTime'] @Status = params['Status'] @IsMainOrganization = params['IsMainOrganization'] @IdCardNumber = params['IdCardNumber'] unless params['AdminInfo'].nil? @AdminInfo = Admin.new @AdminInfo.deserialize(params['AdminInfo']) end @License = params['License'] @LicenseExpireTime = params['LicenseExpireTime'] @JoinTime = params['JoinTime'] @FlowEngineEnable = params['FlowEngineEnable'] end end # 主企业员工账号信息 class IntegrationMainOrganizationUser < TencentCloud::Common::AbstractModel # @param MainOrganizationId: 主企业id # 注意:此字段可能返回 null,表示取不到有效值。 # @type MainOrganizationId: String # @param MainUserId: 主企业员工UserId # 注意:此字段可能返回 null,表示取不到有效值。 # @type MainUserId: String # @param UserName: 主企业员工名 # 注意:此字段可能返回 null,表示取不到有效值。 # @type UserName: String attr_accessor :MainOrganizationId, :MainUserId, :UserName def initialize(mainorganizationid=nil, mainuserid=nil, username=nil) @MainOrganizationId = mainorganizationid @MainUserId = mainuserid @UserName = username end def deserialize(params) @MainOrganizationId = params['MainOrganizationId'] @MainUserId = params['MainUserId'] @UserName = params['UserName'] end end # ModifyApplicationCallbackInfo请求参数结构体 class ModifyApplicationCallbackInfoRequest < TencentCloud::Common::AbstractModel def initialize() end def deserialize(params) end end # ModifyApplicationCallbackInfo返回参数结构体 class ModifyApplicationCallbackInfoResponse < 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 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 # 解除协议的签署人,如不指定,默认使用待解除流程(即原流程)中的签署人。 # 注意:不支持更换C端(个人身份类型)签署人,如果原流程中含有C端签署人,默认使用原流程中的该C端签署人。 class ReleasedApprover < TencentCloud::Common::AbstractModel # @param Name: 签署人姓名,最大长度50个字符 # @type Name: String # @param Mobile: 签署人手机号 # @type Mobile: String # @param RelievedApproverReceiptId: 要替换的参与人在原合同参与人列表中的签署人编号,通过DescribeFlowInfo 接口获取(即FlowDetailInfos. FlowApproverInfos 结构中的ReceiptId ) # @type RelievedApproverReceiptId: String attr_accessor :Name, :Mobile, :RelievedApproverReceiptId def initialize(name=nil, mobile=nil, relievedapproverreceiptid=nil) @Name = name @Mobile = mobile @RelievedApproverReceiptId = relievedapproverreceiptid end def deserialize(params) @Name = params['Name'] @Mobile = params['Mobile'] @RelievedApproverReceiptId = params['RelievedApproverReceiptId'] end end # 解除协议文档中内容信息,包括但不限于:解除理由、解除后仍然有效的条款-保留条款、原合同事项处理-费用结算、原合同事项处理-其他事项、其他约定等。 class RelieveInfo < TencentCloud::Common::AbstractModel # @param Reason: 解除理由,最大支持200个字 # @type Reason: String # @param RemainInForceItem: 解除后仍然有效的条款,保留条款,最大支持200个字 # @type RemainInForceItem: String # @param OriginalExpenseSettlement: 原合同事项处理-费用结算,最大支持200个字 # @type OriginalExpenseSettlement: String # @param OriginalOtherSettlement: 原合同事项处理-其他事项,最大支持200个字 # @type OriginalOtherSettlement: String # @param OtherDeals: 其他约定,最大支持200个字 # @type OtherDeals: String attr_accessor :Reason, :RemainInForceItem, :OriginalExpenseSettlement, :OriginalOtherSettlement, :OtherDeals def initialize(reason=nil, remaininforceitem=nil, originalexpensesettlement=nil, originalothersettlement=nil, otherdeals=nil) @Reason = reason @RemainInForceItem = remaininforceitem @OriginalExpenseSettlement = originalexpensesettlement @OriginalOtherSettlement = originalothersettlement @OtherDeals = otherdeals end def deserialize(params) @Reason = params['Reason'] @RemainInForceItem = params['RemainInForceItem'] @OriginalExpenseSettlement = params['OriginalExpenseSettlement'] @OriginalOtherSettlement = params['OriginalOtherSettlement'] @OtherDeals = params['OtherDeals'] end end # 催办接口返回详细信息 class RemindFlowRecords < TencentCloud::Common::AbstractModel # @param CanRemind: 是否能够催办 # @type CanRemind: Boolean # @param FlowId: 合同id # @type FlowId: String # @param RemindMessage: 催办详情 # @type RemindMessage: String attr_accessor :CanRemind, :FlowId, :RemindMessage def initialize(canremind=nil, flowid=nil, remindmessage=nil) @CanRemind = canremind @FlowId = flowid @RemindMessage = remindmessage end def deserialize(params) @CanRemind = params['CanRemind'] @FlowId = params['FlowId'] @RemindMessage = params['RemindMessage'] end end # 一码多扫签署二维码对象 class 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 # @param ReceiveUserId: 员工离职交接人用户id # @type ReceiveUserId: String # @param ReceiveOpenId: 员工离职交接人用户OpenId # @type ReceiveOpenId: String attr_accessor :UserId, :DisplayName, :Mobile, :Email, :OpenId, :Roles, :Department, :Verified, :CreatedOn, :VerifiedOn, :QuiteJob, :ReceiveUserId, :ReceiveOpenId def initialize(userid=nil, displayname=nil, mobile=nil, email=nil, openid=nil, roles=nil, department=nil, verified=nil, createdon=nil, verifiedon=nil, quitejob=nil, receiveuserid=nil, receiveopenid=nil) @UserId = userid @DisplayName = displayname @Mobile = mobile @Email = email @OpenId = openid @Roles = roles @Department = department @Verified = verified @CreatedOn = createdon @VerifiedOn = verifiedon @QuiteJob = quitejob @ReceiveUserId = receiveuserid @ReceiveOpenId = receiveopenid 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'] @ReceiveUserId = params['ReceiveUserId'] @ReceiveOpenId = params['ReceiveOpenId'] 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 必填。支持填入集团子公司经办人 userId代发合同。 # @type Operator: :class:`Tencentcloud::Ess.v20201111.models.UserInfo` # @param FlowId: 签署流程编号,由CreateFlow接口返回 # @type FlowId: String # @param ClientToken: 客户端Token,保持接口幂等性,最大长度64个字符 # @type ClientToken: String # @param Agent: 代理相关应用信息,如集团主企业代子企业操作的场景中ProxyOrganizationId必填 # @type Agent: :class:`Tencentcloud::Ess.v20201111.models.Agent` # @param CcNotifyType: 给关注人发送短信通知的类型,0-合同发起时通知 1-签署完成后通知 # @type CcNotifyType: Integer attr_accessor :Operator, :FlowId, :ClientToken, :Agent, :CcNotifyType def initialize(operator=nil, flowid=nil, clienttoken=nil, agent=nil, ccnotifytype=nil) @Operator = operator @FlowId = flowid @ClientToken = clienttoken @Agent = agent @CcNotifyType = ccnotifytype 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 @CcNotifyType = params['CcNotifyType'] 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 # @param Note: 提示,当创建已存在未实名用户时,改字段有值 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Note: String attr_accessor :DisplayName, :Mobile, :UserId, :Note def initialize(displayname=nil, mobile=nil, userid=nil, note=nil) @DisplayName = displayname @Mobile = mobile @UserId = userid @Note = note end def deserialize(params) @DisplayName = params['DisplayName'] @Mobile = params['Mobile'] @UserId = params['UserId'] @Note = params['Note'] 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 # 用户的三要素:姓名,证件号,证件类型 class UserThreeFactor < TencentCloud::Common::AbstractModel # @param Name: 姓名 # @type Name: String # @param IdCardType: 证件类型: # ID_CARD 身份证 # HONGKONG_AND_MACAO 港澳居民来往内地通行证 # HONGKONG_MACAO_AND_TAIWAN 港澳台居民居住证(格式同居民身份证) # @type IdCardType: String # @param IdCardNumber: 证件号,如果有 X 请大写 # @type IdCardNumber: String attr_accessor :Name, :IdCardType, :IdCardNumber def initialize(name=nil, idcardtype=nil, idcardnumber=nil) @Name = name @IdCardType = idcardtype @IdCardNumber = idcardnumber end def deserialize(params) @Name = params['Name'] @IdCardType = params['IdCardType'] @IdCardNumber = params['IdCardNumber'] end end # VerifyPdf请求参数结构体 class VerifyPdfRequest < TencentCloud::Common::AbstractModel # @param FlowId: 流程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 VerifySerialNo: 验签序列号 # @type VerifySerialNo: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :VerifyResult, :PdfVerifyResults, :VerifySerialNo, :RequestId def initialize(verifyresult=nil, pdfverifyresults=nil, verifyserialno=nil, requestid=nil) @VerifyResult = verifyresult @PdfVerifyResults = pdfverifyresults @VerifySerialNo = verifyserialno @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 @VerifySerialNo = params['VerifySerialNo'] @RequestId = params['RequestId'] end end end end end