class RockBooks::BsIsSectionData

Public Instance Methods

fetch() click to toggle source
# File lib/rock_books/reports/data/bs_is_section_data.rb, line 6
def fetch
  {
    acct_totals: totals,
    total: totals.map(&:last).sum.round(2)
  }
end

Private Instance Methods

calc_section_acct_totals() click to toggle source
# File lib/rock_books/reports/data/bs_is_section_data.rb, line 17
        def calc_section_acct_totals
  codes  = context.chart_of_accounts.account_codes_of_type(type)
  totals = journals_acct_totals.select { |code, _amount| codes.include?(code) }
  need_to_reverse_sign = %i{liability equity income}.include?(type)
  if need_to_reverse_sign
    totals.keys.each do |code|
      totals[code] = -totals[code] unless totals[code] == 0.0
    end
  end
  totals
end
totals() click to toggle source
# File lib/rock_books/reports/data/bs_is_section_data.rb, line 13
        def totals
  @totals ||= calc_section_acct_totals
end