class Moneymanager::Entry

Attributes

amount[RW]
approved[RW]
bank_transfer[RW]
company[RW]
date[RW]
id[RW]
raw[RW]
reason[RW]
tag[RW]

Public Class Methods

new() click to toggle source
# File lib/moneymanager/entry.rb, line 6
def initialize
  @amount = 0
  @approved = false
  @bank_transfer = false
end

Public Instance Methods

bank_transfer?() click to toggle source
# File lib/moneymanager/entry.rb, line 49
def bank_transfer?
  bank_transfer
end
digest() click to toggle source
# File lib/moneymanager/entry.rb, line 12
def digest
  Digest::SHA1.hexdigest(@raw)
end
expense?() click to toggle source
# File lib/moneymanager/entry.rb, line 41
def expense?
  amount < 0 && !bank_transfer
end
formatted_amount() click to toggle source
# File lib/moneymanager/entry.rb, line 36
def formatted_amount
  s = amount.to_s + ' €'
  amount < 0 ? s.red : s.green
end
formatted_approved() click to toggle source
# File lib/moneymanager/entry.rb, line 20
def formatted_approved
  if approved
    '✔︎'.green
  else
    '✖︎'.red
  end
end
formatted_is_bank_tranfer() click to toggle source
# File lib/moneymanager/entry.rb, line 28
def formatted_is_bank_tranfer
  if bank_transfer
    '♻︎'.yellow
  else
    ''
  end
end
income?() click to toggle source
# File lib/moneymanager/entry.rb, line 45
def income?
  amount > 0 && !bank_transfer
end
to_s() click to toggle source
# File lib/moneymanager/entry.rb, line 16
def to_s
  "Date: #{@date}, #{reason}, #{amount}, #{company}"
end