Sha256: a5d95b57e1ad30d321eb9668e9775735a192f582dd292ce4fbd468b2ee2b873d

Contents?: true

Size: 804 Bytes

Versions: 5

Compression:

Stored size: 804 Bytes

Contents

# frozen_string_literal: true

require 'creditsafe/base_model'
require 'creditsafe/models/credit_rating'
require 'creditsafe/models/currency_value'

module Creditsafe
  module Models
    class CreditScore < BaseModel
      attributes :current_credit_rating, :current_contract_limit,
                 :previous_credit_rating, :latest_rating_change_date

      def self.build(json:)
        super.tap do |record|
          record.current_credit_rating =
            CreditRating.build(json: json.fetch(:currentCreditRating, {}))
          record.current_contract_limit =
            CurrencyValue.build(json: json.fetch(:currentContractLimit, {}))
          record.previous_credit_rating =
            CreditRating.build(json: json.fetch(:previousCreditRating, {}))
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
creditsafe_connect-0.1.7 lib/creditsafe/models/credit_score.rb
creditsafe_connect-0.1.6 lib/creditsafe/models/credit_score.rb
creditsafe_connect-0.1.5 lib/creditsafe/models/credit_score.rb
creditsafe_connect-0.1.4 lib/creditsafe/models/credit_score.rb
creditsafe_connect-0.1.3 lib/creditsafe/models/credit_score.rb