Class: PurchaseNature

Inherits:
Ekylibre::Record::Base show all
Defined in:
app/models/purchase_nature.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: purchase_natures

active          :boolean          default(TRUE), not null
by_default      :boolean          default(FALSE), not null
created_at      :datetime         not null
creator_id      :integer
currency        :string           not null
description     :text
id              :integer          not null, primary key
journal_id      :integer
lock_version    :integer          default(0), not null
name            :string
nature          :string           not null
updated_at      :datetime         not null
updater_id      :integer
with_accounting :boolean          default(FALSE), not null

Class 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

Class Method Details

.load_defaultsObject

Load default purchase nature


74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
# File 'app/models/purchase_nature.rb', line 74

def load_defaults
  nature = :purchases
  currency = Preference[:currency]
  journal = Journal.find_by(nature: nature, currency: currency)
  journal ||= Journal.create!(name: "enumerize.journal.nature.#{nature}".t,
                              nature: nature.to_s, currency: currency,
                              closed_on: Date.new(1899, 12, 31).end_of_month)
  unless find_by(name: PurchaseNature.tc('default.name'))
    create!(
      name: PurchaseNature.tc('default.name'),
      active: true,
      currency: currency,
      with_accounting: true,
      journal: journal
    )
  end
end