Class: Dorsale::ExpenseGun::Expense

Inherits:
ActiveRecord::Base
  • Object
show all
Includes:
AASM
Defined in:
app/models/dorsale/expense_gun/expense.rb

Instance Method Summary collapse

Constructor Details

#initialize(*args) ⇒ Expense

Returns a new instance of Expense.



21
22
23
24
# File 'app/models/dorsale/expense_gun/expense.rb', line 21

def initialize(*args)
  super
  self.date = Date.today if self.date.nil?
end

Instance Method Details

#current_stateObject



41
42
43
# File 'app/models/dorsale/expense_gun/expense.rb', line 41

def current_state
  aasm.current_state
end

#may_edit?Boolean

Returns:

  • (Boolean)


69
70
71
# File 'app/models/dorsale/expense_gun/expense.rb', line 69

def may_edit?
  current_state == :new
end

#total_all_taxesObject

Sum of line amounts



27
28
29
# File 'app/models/dorsale/expense_gun/expense.rb', line 27

def total_all_taxes
  expense_lines.map(&:total_all_taxes).sum
end

#total_employee_paybackObject

Sum of line emplee payback



32
33
34
# File 'app/models/dorsale/expense_gun/expense.rb', line 32

def total_employee_payback
  expense_lines.map(&:employee_payback).sum
end

#total_vat_deductibleObject

Sum of deductible deductible vat



37
38
39
# File 'app/models/dorsale/expense_gun/expense.rb', line 37

def total_vat_deductible
  expense_lines.map(&:total_vat_deductible).sum
end