Class: FinModeling::NetIncomeSummaryFromDifferences
- Inherits:
-
Object
- Object
- FinModeling::NetIncomeSummaryFromDifferences
- Defined in:
- lib/finmodeling/net_income_summary_from_differences.rb
Instance Method Summary collapse
- #filter_by_type(key) ⇒ Object
-
#initialize(ris1, ris2) ⇒ NetIncomeSummaryFromDifferences
constructor
A new instance of NetIncomeSummaryFromDifferences.
Constructor Details
#initialize(ris1, ris2) ⇒ NetIncomeSummaryFromDifferences
Returns a new instance of NetIncomeSummaryFromDifferences.
4 5 6 7 |
# File 'lib/finmodeling/net_income_summary_from_differences.rb', line 4 def initialize(ris1, ris2) @ris1 = ris1 @ris2 = ris2 end |
Instance Method Details
#filter_by_type(key) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/finmodeling/net_income_summary_from_differences.rb', line 9 def filter_by_type(key) cs = FinModeling::CalculationSummary.new case key when :or cs.title = "Operating Revenues" cs.rows = [ CalculationRow.new(:key => "First Row", :vals => [ @ris1..total] ), CalculationRow.new(:key => "Second Row", :vals => [-@ris2..total] ) ] when :cogs cs.title = "Cost of Revenues" cs.rows = [ CalculationRow.new(:key => "First Row", :vals => [ @ris1.cost_of_revenues.total] ), CalculationRow.new(:key => "Second Row", :vals => [-@ris2.cost_of_revenues.total] ) ] when :oe cs.title = "Operating Expenses" cs.rows = [ CalculationRow.new(:key => "First Row", :vals => [ @ris1..total] ), CalculationRow.new(:key => "Second Row", :vals => [-@ris2..total] ) ] when :oibt cs.title = "Operating Income from Sales, Before taxes" cs.rows = [ CalculationRow.new(:key => "First Row", :vals => [ @ris1..rows[1].vals.first] ), CalculationRow.new(:key => "Second Row", :vals => [-@ris2..rows[1].vals.first] ) ] when :fibt cs.title = "Financing Income, Before Taxes" cs.rows = [ CalculationRow.new(:key => "First Row", :vals => [ @ris1.net_financing_income.rows[0].vals.first] ), CalculationRow.new(:key => "Second Row", :vals => [-@ris2.net_financing_income.rows[0].vals.first] ) ] when :tax cs.title = "Taxes" cs.rows = [ CalculationRow.new(:key => "First Row", :vals => [ @ris1.income_from_sales_after_tax.rows[1].vals.first] ), CalculationRow.new(:key => "Second Row", :vals => [-@ris2.income_from_sales_after_tax.rows[1].vals.first] ) ] when :ooiat cs.title = "Other Operating Income, After Taxes" cs.rows = [ CalculationRow.new(:key => "First Row", :vals => [ @ris1..rows[3].vals.first] ), CalculationRow.new(:key => "Second Row", :vals => [-@ris2..rows[3].vals.first] ) ] when :fiat cs.title = "Financing Income, After Taxes" cs.rows = [ CalculationRow.new(:key => "First Row", :vals => [ @ris1.net_financing_income.rows[2].vals.first] ), CalculationRow.new(:key => "Second Row", :vals => [-@ris2.net_financing_income.rows[2].vals.first] ) ] else return nil end return cs end |