Class: RockBooks::MultidocTxnReportData

Inherits:
Object
  • Object
show all
Defined in:
lib/rock_books/reports/data/multidoc_txn_report_data.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(context, sort_by, filter = nil) ⇒ MultidocTxnReportData

Returns a new instance of MultidocTxnReportData.



9
10
11
12
13
# File 'lib/rock_books/reports/data/multidoc_txn_report_data.rb', line 9

def initialize(context, sort_by, filter = nil)
  @context = context
  @entries = fetch_entries(sort_by, filter)
  @totals = fetch_totals(filter)
end

Instance Attribute Details

#contextObject (readonly)

Returns the value of attribute context.



7
8
9
# File 'lib/rock_books/reports/data/multidoc_txn_report_data.rb', line 7

def context
  @context
end

#entriesObject (readonly)

Returns the value of attribute entries.



7
8
9
# File 'lib/rock_books/reports/data/multidoc_txn_report_data.rb', line 7

def entries
  @entries
end

#totalsObject (readonly)

Returns the value of attribute totals.



7
8
9
# File 'lib/rock_books/reports/data/multidoc_txn_report_data.rb', line 7

def totals
  @totals
end

Instance Method Details

#fetchObject



15
16
17
18
19
20
21
22
# File 'lib/rock_books/reports/data/multidoc_txn_report_data.rb', line 15

def fetch
  {
    journals: context.journals,
    entries: entries,
    totals: totals,
    grand_total: totals.values.sum.round(2),
  }
end