Class: InvoiceItem

Inherits:
ActiveRecord::Base
  • Object
show all
Defined in:
app/models/invoice_item.rb

Instance Method Summary collapse

Instance Method Details

#balanceObject



43
44
45
# File 'app/models/invoice_item.rb', line 43

def balance
  self.total_amount - self.total_payments
end

#get_payment_applications(status = :all) ⇒ Object



24
25
26
27
28
29
30
31
32
33
# File 'app/models/invoice_item.rb', line 24

def get_payment_applications(status=:all)
  case status.to_sym
  when :pending
    self.payment_applications.pending
  when :successful
    self.payment_applications.successful
  when :all
    self.payment_applications
  end
end

#has_payments?(status) ⇒ Boolean

Returns:

  • (Boolean)


19
20
21
22
# File 'app/models/invoice_item.rb', line 19

def has_payments?(status)
  selected_payment_applications = self.get_payment_applications(status)
  !(selected_payment_applications.nil? or selected_payment_applications.empty?)
end

#total_amountObject



35
36
37
# File 'app/models/invoice_item.rb', line 35

def total_amount
  (self.amount * self.quantity)
end

#total_paymentsObject



39
40
41
# File 'app/models/invoice_item.rb', line 39

def total_payments
  self.get_payment_applications(:successful).sum{|item| item.money.amount}
end