Class: Liability
- Inherits:
-
Account
- Object
- ActiveRecord::Base
- Account
- Liability
- Defined in:
- app/models/liability.rb
Overview
The Liability class is an account type used to represents debts owed to outsiders.
Normal Balance
The normal balance on Liability accounts is a Credit.
Class Method Summary (collapse)
-
+ (Object) balance
Balance of all Liability accounts.
Instance Method Summary (collapse)
-
- (BigDecimal) balance
The balance of the account.
-
- (BigDecimal) credits_balance
The credit balance for the account.
-
- (BigDecimal) debits_balance
The debit balance for the account.
Methods inherited from Account
Class Method Details
+ (Object) balance
Balance of all Liability accounts
64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'app/models/liability.rb', line 64 def self.balance accounts_balance = BigDecimal.new('0') accounts = self.find(:all) accounts.each do |liability| unless liability.contra accounts_balance += liability.balance else accounts_balance -= liability.balance end end accounts_balance end |
Instance Method Details
- (BigDecimal) balance
The balance of the account.
Liability accounts have normal credit balances, so the debits are subtracted from the credits unless this is a contra account, in which credits are subtracted from debits
51 52 53 54 55 56 57 |
# File 'app/models/liability.rb', line 51 def balance unless contra credits_balance - debits_balance else debits_balance - credits_balance end end |
- (BigDecimal) credits_balance
The credit balance for the account.
18 19 20 21 22 23 24 |
# File 'app/models/liability.rb', line 18 def credits_balance credits_balance = BigDecimal.new('0') credit_transactions.each do |credit_transaction| credits_balance = credits_balance + credit_transaction.amount end return credits_balance end |
- (BigDecimal) debits_balance
The debit balance for the account.
33 34 35 36 37 38 39 |
# File 'app/models/liability.rb', line 33 def debits_balance debits_balance = BigDecimal.new('0') debit_transactions.each do |debit_transaction| debits_balance = debits_balance + debit_transaction.amount end return debits_balance end |