Sha256: f72c543d6573a817a47be467dcd25651008b0aedb8b29c075b71efeaa6c4345c
Contents?: true
Size: 1.03 KB
Versions: 2
Compression:
Stored size: 1.03 KB
Contents
module Xeroizer module Report class AgedReceivablesByContact < Base public def total @_total_cache ||= summary.cell(:Total).value end def total_paid @_total_paid_cache ||= summary.cell(:Paid).value end def total_credited @_total_credited_cache ||= summary.cell(:Credited).value end def total_due @_total_due_cache ||= summary.cell(:Due).value end def total_overdue return @_total_due_cache if @_total_due_cache now = Time.now @_total_due_cache = sum(:Due) do | row | due_date = row.cell('Due Date').value due_date && due_date < now end end def sum(column_name, &block) sections.first.rows.inject(BigDecimal.new('0')) do | sum, row | sum += row.cell(column_name).value if row.class == Xeroizer::Report::Row && (block.nil? || block.call(row)) sum end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
xeroizer-2.18.1 | lib/xeroizer/report/aged_receivables_by_contact.rb |
xeroizer-2.17.1 | lib/xeroizer/report/aged_receivables_by_contact.rb |