Sha256: a73945f65e5ad77a25db3e1ebbdc26d0c4c7bdd40284766d400a3a99ef1e6015

Contents?: true

Size: 696 Bytes

Versions: 8

Compression:

Stored size: 696 Bytes

Contents

# frozen_string_literal: true

require 'creditsafe/base_model'
require 'creditsafe/models/report'

module Creditsafe
  module Models
    class CreditReport < BaseModel
      ENDPOINT = 'companies/:connect_id'

      attributes :report, :company_id, :user_id, :date_of_order, :language

      def self.for(company_id)
        url = format_url(ENDPOINT, connect_id: company_id.to_s.strip)

        result = get(url)

        build(json: result.body)
      rescue InvalidRequestError
        build(json: {})
      end

      def self.build(json:)
        super.tap do |record|
          record.report = Report.build(json: json[:report]) if json.key?(:report)
        end
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
creditsafe_connect-0.1.7 lib/creditsafe/models/credit_report.rb
creditsafe_connect-0.1.6 lib/creditsafe/models/credit_report.rb
creditsafe_connect-0.1.5 lib/creditsafe/models/credit_report.rb
creditsafe_connect-0.1.4 lib/creditsafe/models/credit_report.rb
creditsafe_connect-0.1.3 lib/creditsafe/models/credit_report.rb
creditsafe_connect-0.1.2 lib/creditsafe/models/credit_report.rb
creditsafe_connect-0.1.1 lib/creditsafe/models/credit_report.rb
creditsafe_connect-0.1.0 lib/creditsafe/models/credit_report.rb