class InvoiceCreator::Models::Invoice

Attributes

billable_hours[R]
expenses_amount[R]
invoice_date[R]
number[R]
rate[R]

Public Class Methods

new(rate:, due_day:, billable_hours:, expenses_amount: 0.0, invoice_date: Date.today, number: 1) click to toggle source
# File lib/invoice_creator/models/invoice.rb, line 12
def initialize(rate:, due_day:, billable_hours:, expenses_amount: 0.0, invoice_date: Date.today, number: 1)
  @rate = rate
  @billable_hours = billable_hours
  @expenses_amount = expenses_amount
  @invoice_date = invoice_date
  @due_day = due_day
  @number = number
end

Public Instance Methods

billable_amount() click to toggle source
# File lib/invoice_creator/models/invoice.rb, line 29
def billable_amount
  @billable_hours * @rate
end
due_date() click to toggle source
# File lib/invoice_creator/models/invoice.rb, line 21
def due_date
  Date.new(@invoice_date.year, @invoice_date.month, @due_day)
end
total() click to toggle source
# File lib/invoice_creator/models/invoice.rb, line 25
def total
  billable_amount + @expenses_amount
end