Class: Dorsale::ExpenseGun::Expense
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- Dorsale::ExpenseGun::Expense
- Includes:
- AASM
- Defined in:
- app/models/dorsale/expense_gun/expense.rb
Defined Under Namespace
Classes: Copy
Instance Method Summary collapse
- #current_state ⇒ Object
-
#initialize(*args) ⇒ Expense
constructor
A new instance of Expense.
- #may_edit? ⇒ Boolean
-
#total_all_taxes ⇒ Object
Sum of line amounts.
-
#total_employee_payback ⇒ Object
Sum of line emplee payback.
-
#total_vat_deductible ⇒ Object
Sum of deductible deductible vat.
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_state ⇒ Object
46 47 48 |
# File 'app/models/dorsale/expense_gun/expense.rb', line 46 def current_state aasm.current_state end |
#may_edit? ⇒ Boolean
74 75 76 |
# File 'app/models/dorsale/expense_gun/expense.rb', line 74 def may_edit? current_state == :new end |
#total_all_taxes ⇒ Object
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_payback ⇒ Object
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_deductible ⇒ Object
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 |