mirror of
https://github.com/internetee/registry.git
synced 2025-08-06 01:35:10 +02:00
Add invoice numbers
This commit is contained in:
parent
109ce6c912
commit
1e47f3e41c
10 changed files with 35 additions and 14 deletions
|
@ -13,6 +13,23 @@ class Invoice < ActiveRecord::Base
|
|||
validates :invoice_type, :due_date, :currency, :seller_name,
|
||||
:seller_iban, :buyer_name, :invoice_items, :vat_prc, presence: true
|
||||
|
||||
before_save :set_invoice_number
|
||||
def set_invoice_number
|
||||
last_no = Invoice.order(number: :desc).where('number IS NOT NULL').limit(1).pluck(:number).first
|
||||
|
||||
if last_no
|
||||
self.number = last_no + 1
|
||||
else
|
||||
self.number = Setting.invoice_number_min.to_i
|
||||
end
|
||||
|
||||
return if number <= Setting.invoice_number_max.to_i
|
||||
|
||||
errors.add(:base, I18n.t('failed_to_generate_invoice'))
|
||||
logger.error('INVOICE NUMBER LIMIT REACHED, COULD NOT GENERATE INVOICE')
|
||||
false
|
||||
end
|
||||
|
||||
def binded?
|
||||
account_activity.present?
|
||||
end
|
||||
|
@ -25,11 +42,6 @@ class Invoice < ActiveRecord::Base
|
|||
I18n.t('invoice_no', no: number)
|
||||
end
|
||||
|
||||
def number
|
||||
# TODO: Real invoice numbers here
|
||||
id
|
||||
end
|
||||
|
||||
def seller_address
|
||||
[seller_street, seller_city, seller_state, seller_zip].reject(&:blank?).compact.join(', ')
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue