Sha256: 73671f75fba271b94884e87876ce156bde1ec5bcfcede97f6e540a35ab84ba8a

Contents?: true

Size: 1.12 KB

Versions: 4

Compression:

Stored size: 1.12 KB

Contents

# frozen_string_literal: true

require_relative '../currency/deserializer'

module LedgerSync
  module Ledgers
    module QuickBooksOnline
      class Account
        class Deserializer < QuickBooksOnline::Deserializer
          id

          attribute :name,
                    hash_attribute: 'Name'

          mapping :account_type,
                  hash_attribute: 'AccountType',
                  hash: Account::TYPES.invert

          mapping :account_sub_type,
                  hash_attribute: 'AccountSubType',
                  hash: Account::SUB_TYPES.invert

          attribute :number,
                    hash_attribute: 'AcctNum'

          mapping :classification,
                  hash_attribute: 'Classification',
                  hash: Account::CLASSIFICATIONS.invert

          attribute :description,
                    hash_attribute: 'Description'

          attribute :active,
                    hash_attribute: 'Active'

          references_one :currency,
                         hash_attribute: :CurrencyRef,
                         deserializer: Currency::Deserializer
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
ledger_sync-1.4.4 lib/ledger_sync/ledgers/quickbooks_online/account/deserializer.rb
ledger_sync-1.4.2 lib/ledger_sync/ledgers/quickbooks_online/account/deserializer.rb
ledger_sync-1.4.1 lib/ledger_sync/ledgers/quickbooks_online/account/deserializer.rb
ledger_sync-1.4.0 lib/ledger_sync/ledgers/quickbooks_online/account/deserializer.rb