diff --git a/app/models/seed_generator.rb b/app/models/seed_generator.rb index 1ff98a62..63d4a402 100644 --- a/app/models/seed_generator.rb +++ b/app/models/seed_generator.rb @@ -2,35 +2,40 @@ class SeedGenerator < ApplicationRecord # Generate ID for Tables def self.generate_id(model, prefix) seed = SeedGenerator.find_by_model(model) + next_no = seed.next new_receipt_no = 0 - +puts "OOO" +puts next_no if (seed.nil?) seed = SeedGenerator.new() seed.model = model new_receipt_no = seed.next seed.save else - next_current = self.update_seed(model, seed.next, seed.increase_by) - puts "OOO" - puts seed.next - - if seed.next == next_current - next_current = next_current + 1 - end - - puts "MMM" - puts next_current - currentNo = next_current + cur_val, next_val = self.update_seed(model, next_no, seed.increase_by) - # current_no = seed.next - # seed.next = seed.next + seed.increase_by - # seed.current = current_no - # seed.save - end - padding_len = 15 - prefix.length - saleOrderId = prefix +"-"+ currentNo.to_s.to_s.rjust((14-prefix.length)+1,'0') - return saleOrderId + # if next_no == cur_val + # puts "SSS" + # puts next_val + # cur_val2, next_val2 = self.update_seed(model, next_val, seed.increase_by) + # padding_len = 15 - prefix.length + # saleOrderId = prefix +"-"+ cur_val2.to_s.to_s.rjust((14-prefix.length)+1,'0') + # return saleOrderId + while next_no == cur_val + padding_len = 15 - prefix.length + saleOrderId = prefix +"-"+ cur_val.to_s.to_s.rjust((14-prefix.length)+1,'0') + return saleOrderId + puts "LLL" + puts next_val + next_no = next_val + cur_val, next_val = self.update_seed(model, next_val, seed.increase_by) + padding_len = 15 - prefix.length + saleOrderId = prefix +"-"+ cur_val.to_s.to_s.rjust((14-prefix.length)+1,'0') + return saleOrderId + end + # end + end end # Generate Receipt No @@ -97,20 +102,34 @@ class SeedGenerator < ApplicationRecord return seed_val end + def self.current_no_present(next_val, cur_val) + cur_val2, next_val2 = self.update_seed(model, next_val, seed.increase_by) + padding_len = 15 - prefix.length + saleOrderId = prefix +"-"+ cur_val2.to_s.to_s.rjust((14-prefix.length)+1,'0') + return saleOrderId + + if next_val == cur_val2 + current_no_present(next_val2, cur_val2) + end + end + def self.update_seed(model, current, inc) + cur_val = 0 next_val = 0 nex = current + inc update_sql = "update seed_generators set current= #{current}, next= #{nex} where model='#{model}';"; select_sql = "select * from seed_generators where model='#{model}';" update_result = ActiveRecord::Base.connection.execute(update_sql); + Rails.logger.debug "SeedGenerator -> " + update_result.to_s select_result = ActiveRecord::Base.connection.execute(select_sql); select_result.each do |row| p row[3] - next_val = row[3] + cur_val = row [3] + next_val = row[4] end - return next_val + return cur_val, next_val end end