Class: Dorsale::ExpenseGun::Expense

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

Defined Under Namespace

Classes: Copy

Instance Method Summary collapse

Constructor Details

#initialize(*args) ⇒ Expense

Returns a new instance of Expense.



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

def initialize(*args)
  super
  self.date = Time.zone.now.to_date if self.date.nil?
end

Instance Method Details

#current_stateObject



46
47
48
# File 'app/models/dorsale/expense_gun/expense.rb', line 46

def current_state
  aasm.current_state
end

#may_edit?Boolean

Returns:

  • (Boolean)


74
75
76
# File 'app/models/dorsale/expense_gun/expense.rb', line 74

def may_edit?
  current_state == :new
end

#total_all_taxesObject

Sum of line amounts



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

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

#total_employee_paybackObject

Sum of line emplee payback



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

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

#total_vat_deductibleObject

Sum of deductible deductible vat



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

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