Sha256: 7adf6ac7d53a8790c187be3bd34d873b01fdd9d37cc9003179d5d77244a53ef1

Contents?: true

Size: 1.03 KB

Versions: 7

Compression:

Stored size: 1.03 KB

Contents

# frozen_string_literal: true

require 'creditsafe/base_model'
require 'creditsafe/models/legal_form'
require 'creditsafe/models/company_status'
require 'creditsafe/models/main_activity'
require 'creditsafe/models/address'

module Creditsafe
  module Models
    class BasicInformation < BaseModel
      attributes :business_name, :registered_company_name, :company_registration_number,
                 :country, :vat_registration_number, :legal_form,
                 :company_registration_date, :operations_start_date,
                 :company_status, :principal_activity, :contact_address

      def self.build(json:)
        super.tap do |record|
          record.legal_form = LegalForm.build(json: json.fetch(:legalForm, {}))
          record.company_status = CompanyStatus.build(json: json.fetch(:companyStatus, {}))
          record.principal_activity = MainActivity.build(json: json.fetch(:principalActivity, {}))
          record.contact_address = Address.build(json: json.fetch(:contactAddress, {}))
        end
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

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