From a6cc53a0bf914ca5e15bdeafdca602e7882c72d2 Mon Sep 17 00:00:00 2001 From: Martin Lensment Date: Fri, 26 Jun 2015 12:50:24 +0300 Subject: [PATCH] Invoice numbers should be ints #2690 --- app/controllers/admin/settings_controller.rb | 1 + app/models/invoice.rb | 2 +- config/initializers/initial_settings.rb | 4 ++-- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/app/controllers/admin/settings_controller.rb b/app/controllers/admin/settings_controller.rb index 7c91bcbb0..b2e5c98b6 100644 --- a/app/controllers/admin/settings_controller.rb +++ b/app/controllers/admin/settings_controller.rb @@ -43,6 +43,7 @@ class Admin::SettingsController < AdminController settings[k] = v.to_i if Setting[k].class == Fixnum settings[k] = v.to_f if Setting[k].class == Float settings[k] = (v == 'true' ? true : false) if [TrueClass, FalseClass].include?(Setting[k].class) + settings[k] = v if Setting[k].class == String end settings end diff --git a/app/models/invoice.rb b/app/models/invoice.rb index 323af56b9..7c05e6cf0 100644 --- a/app/models/invoice.rb +++ b/app/models/invoice.rb @@ -19,7 +19,7 @@ class Invoice < ActiveRecord::Base def set_invoice_number last_no = Invoice.order(number: :desc).where('number IS NOT NULL').limit(1).pluck(:number).first - if last_no + if last_no && last_no >= Setting.invoice_number_min.to_i self.number = last_no + 1 else self.number = Setting.invoice_number_min.to_i diff --git a/config/initializers/initial_settings.rb b/config/initializers/initial_settings.rb index 824cf0fcc..3f63f3ecd 100644 --- a/config/initializers/initial_settings.rb +++ b/config/initializers/initial_settings.rb @@ -28,8 +28,8 @@ if con.present? && con.table_exists?('settings') Setting.save_default(:eis_bank, 'LHV Pank') Setting.save_default(:eis_swift, 'LHVBEE22') Setting.save_default(:eis_invoice_contact, 'Martti Õigus') - Setting.save_default(:invoice_number_min, '131050') - Setting.save_default(:invoice_number_max, '149999') + Setting.save_default(:invoice_number_min, 131050) + Setting.save_default(:invoice_number_max, 149999) Setting.save_default(:days_to_keep_overdue_invoices_active, 30) Setting.save_default(:days_to_renew_domain_before_expire, 90) Setting.save_default(:expire_warning_period, 15)