class Treasurer::Reporter::Equity

Public Class Methods

new(reporter, runner, accounts, options={}) click to toggle source
# File lib/treasurer/accounts.rb, line 376
def initialize(reporter, runner, accounts, options={})
  @reporter = reporter
  @runner = runner
  @accounts = accounts #.find_all{|acc| not acc.external}
  @currency = options[:currency]
end

Public Instance Methods

balance(date=@reporter.today) click to toggle source
# File lib/treasurer/accounts.rb, line 403
def balance(date=@reporter.today)
  @accounts.map{|acc|
    case acc.type
    when :Asset
      acc.balance(date)
    when :Liability
      -acc.balance(date)
    else
      0.0
    end
  }.sum + sum_of_assets
end
name() click to toggle source
# File lib/treasurer/accounts.rb, line 388
def name
  :Equity
end
projected_balance(date=@reporter.today) click to toggle source
# File lib/treasurer/accounts.rb, line 415
def projected_balance(date=@reporter.today)
  @accounts.map{|acc|
    case acc.type
    when :Asset
      acc.projected_balance(date)
    when :Liability
      -acc.projected_balance(date)
    else
      0.0
    end
  }.sum + sum_of_assets
end
red_line(date=@reporter.today) click to toggle source
# File lib/treasurer/accounts.rb, line 391
def red_line(date=@reporter.today)
  @accounts.map{|acc|
    case acc.type
    when :Asset
      acc.red_line(date)
    when :Liability
      -acc.red_line(date)
    else
      0.0
    end
  }.sum + sum_of_assets
end
should_report?() click to toggle source
# File lib/treasurer/accounts.rb, line 382
def should_report?
  true
end
sum_of_assets() click to toggle source
# File lib/treasurer/accounts.rb, line 427
def sum_of_assets
  ASSETS.find_all{|name,details| details[:currency] == currency}.map{|name,details| details[:size]}.sum or 0.0
end
summary_line(today, days_before) click to toggle source
# File lib/treasurer/accounts.rb, line 439
def summary_line(today, days_before)
  "#{name_c} & #{balance(today).to_tex} &  & "
end
summary_table(today, days_before) click to toggle source
# File lib/treasurer/accounts.rb, line 430
    def summary_table(today, days_before)

      <<EOF
\\subsubsection{#{name}}
\\begin{tabulary}{0.8\\textwidth}{ r | l}
Balance & #{balance} \\\\
\\end{tabulary}
EOF
    end
type() click to toggle source
# File lib/treasurer/accounts.rb, line 385
def type
  :Equity
end