Class: BankStatementItem

Inherits:
Ekylibre::Record::Base show all
Defined in:
app/models/bank_statement_item.rb

Overview

Informations

License

Ekylibre - Simple agricultural ERP Copyright (C) 2008-2009 Brice Texier, Thibaud Merigon Copyright (C) 2010-2012 Brice Texier Copyright (C) 2012-2019 Brice Texier, David Joulin

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see www.gnu.org/licenses.

Table: bank_statement_items

bank_statement_id  :integer          not null
created_at         :datetime         not null
creator_id         :integer
credit             :decimal(19, 4)   default(0.0), not null
currency           :string           not null
debit              :decimal(19, 4)   default(0.0), not null
id                 :integer          not null, primary key
initiated_on       :date
letter             :string
lock_version       :integer          default(0), not null
memo               :string
name               :string           not null
transaction_number :string
transfered_on      :date             not null
updated_at         :datetime         not null
updater_id         :integer

Instance Method Summary collapse

Methods inherited from Ekylibre::Record::Base

#already_updated?, #check_if_destroyable?, #check_if_updateable?, columns_definition, #customizable?, customizable?, #customized?, #destroyable?, #editable?, has_picture, #human_attribute_name, nomenclature_reflections, #old_record, #others, refers_to, #unsuppress, #updateable?

Methods included from Userstamp::Stampable

included

Methods included from Userstamp::Stamper

included

Instance Method Details

#associated_journal_entry_itemsObject


94
95
96
97
# File 'app/models/bank_statement_item.rb', line 94

def associated_journal_entry_items
  return [] unless bank_statement && letter
  JournalEntryItem.pointed_by(bank_statement).where(bank_statement_letter: letter)
end

#balance=(new_balance) ⇒ Object


107
108
109
110
111
112
113
# File 'app/models/bank_statement_item.rb', line 107

def balance=(new_balance)
  if new_balance > 0
    self.credit = new_balance
  else
    self.debit = - new_balance
  end
end

#cash_currencyObject


99
100
101
# File 'app/models/bank_statement_item.rb', line 99

def cash_currency
  bank_statement && bank_statement.cash && bank_statement.cash.currency
end

#credit_balanceObject


103
104
105
# File 'app/models/bank_statement_item.rb', line 103

def credit_balance
  self.credit - self.debit
end