class TencentCloud::Ess::V20201111::ApproverInfo

def deserialize(params)

def deserialize(params)
  @ApproverType = params['ApproverType']
  @ApproverName = params['ApproverName']
  @ApproverMobile = params['ApproverMobile']
  @OrganizationName = params['OrganizationName']
  unless params['SignComponents'].nil?
    @SignComponents = []
    params['SignComponents'].each do |i|
      component_tmp = Component.new
      component_tmp.deserialize(i)
      @SignComponents << component_tmp
    end
  end
  @ApproverIdCardType = params['ApproverIdCardType']
  @ApproverIdCardNumber = params['ApproverIdCardNumber']
  @NotifyType = params['NotifyType']
  @ApproverRole = params['ApproverRole']
  @ApproverRoleName = params['ApproverRoleName']
  @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']
  @ApproverNeedSignReview = params['ApproverNeedSignReview']
  unless params['AddSignComponentsLimits'].nil?
    @AddSignComponentsLimits = []
    params['AddSignComponentsLimits'].each do |i|
      componentlimit_tmp = ComponentLimit.new
      componentlimit_tmp.deserialize(i)
      @AddSignComponentsLimits << componentlimit_tmp
    end
  end
  @SignInstructionContent = params['SignInstructionContent']
  @Deadline = params['Deadline']
  unless params['Components'].nil?
    @Components = []
    params['Components'].each do |i|
      component_tmp = Component.new
      component_tmp.deserialize(i)
      @Components << component_tmp
    end
  end
end