From 3c5755a0288a9c91a3e30e7db980a0759a128745 Mon Sep 17 00:00:00 2001 From: NyanLinHtut Date: Thu, 28 Nov 2019 17:27:28 +0630 Subject: [PATCH 1/7] fixed set items in origami --- app/views/origami/dashboard/_menu.json.jbuilder | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/origami/dashboard/_menu.json.jbuilder b/app/views/origami/dashboard/_menu.json.jbuilder index dcbff54f..703c3355 100644 --- a/app/views/origami/dashboard/_menu.json.jbuilder +++ b/app/views/origami/dashboard/_menu.json.jbuilder @@ -80,7 +80,7 @@ if (menu.menu_categories) alt_name: its.alt_name, min_selectable_qty: its.min_selectable_qty, max_selectable_qty: its.max_selectable_qty, - instances: its.menu_item_instances.map { |id| {id: id}} + instances: its.menu_item_instances.map { |i| {id: i.id} } } } From 5b88d164856b2a271bb4eb8899cb02c12f5be06b Mon Sep 17 00:00:00 2001 From: Thein Lin Kyaw Date: Thu, 28 Nov 2019 19:25:52 +0630 Subject: [PATCH 2/7] update number_formattable --- .../concerns/number_formattable.rb | 36 +++++++++++-------- .../origami/dashboard_controller.rb | 25 +++++++------ 2 files changed, 33 insertions(+), 28 deletions(-) diff --git a/app/controllers/concerns/number_formattable.rb b/app/controllers/concerns/number_formattable.rb index a7b97732..063df8ca 100644 --- a/app/controllers/concerns/number_formattable.rb +++ b/app/controllers/concerns/number_formattable.rb @@ -2,44 +2,50 @@ module NumberFormattable extend ActiveSupport::Concern def precision - @precision ||= Lookup.number_formats.find { |f| f.name.parameterize.underscore == 'precision'} + return @precision if defined? @precision + @number_formats = Lookup.number_formats if !defined? @number_formats + if @number_formats + @precision = @number_formats.find? { |x| x.name.parameterize.underscore == 'precision'}.value.to_i rescue nil + end if @precision.nil? - @print_settings ||= PrintSetting.get_precision_delimiter + @print_settings = PrintSetting.get_precision_delimiter if !defined? @number_formats if @print_settings - @precision = OpenStruct.new(value: @print_settings.precision.to_i) + @precision = @print_settings.precision.to_i else - @precision = OpenStruct.new(value: 2) + @precision = 2 end end - @precison_value ||= @precision.value.to_i end def delimiter - @delimiter ||= Lookup.number_formats.find { |f| f.name.parameterize.underscore == 'delimiter'} + return @delimiter if defined? @delimiter + @number_formats = Lookup.number_formats if !defined? @number_formats + if @number_formats + @delimiter = @number_formats.find { |f| f.name.parameterize.underscore == 'delimiter'}.value.gsub(/\\u(\h{4})/) { |m| [$1].pack("H*").unpack("n*").pack("U*") } rescue nil + end if @delimiter.nil? - @print_settings ||= PrintSetting.get_precision_delimiter + @print_settings = PrintSetting.get_precision_delimiter if !defined? @number_formats if @print_settings && @print_settings.delimiter - @delimiter = OpenStruct.new(value: ",") + @delimiter = "," else - @delimiter = OpenStruct.new(value: "") + @delimiter = "," end end - @delimiter_value ||= @delimiter.value.to_s.gsub(/\\u(\h{4})/) { |m| [$1].pack("H*").unpack("n*").pack("U*") } end def strip_insignificant_zeros - @strip_insignificant_zeros ||= Lookup.number_formats.find { |f| f.name.parameterize.underscore == 'strip_insignificant_zeros'} - if @strip_insignificant_zeros.nil? - @strip_insignificant_zeros = OpenStruct.new(value: false) + return @strip_insignificant_zeros if defined? @strip_insignificant_zeros + @number_formats = Lookup.number_formats if !defined? @number_formats + if @number_formats + @strip_insignificant_zeros = @number_formats.find { |f| f.name.parameterize.underscore == 'strip_insignificant_zeros'}.value.in? ['1', 't', 'true', 'on', 'y', 'yes'] rescue false end - @strip_insignificant_zeros_value ||= ['1', 't', 'true', 'on', 'y', 'yes'].include? @strip_insignificant_zeros.value.to_s end def number_format(number, options = {}) options[:precision] = options[:precision] || precision # options[:delimiter] = options[:delimiter] || delimiter options[:strip_insignificant_zeros] = options[:strip_insignificant_zeros] || strip_insignificant_zeros - + if options[:precision] > 0 if options[:strip_insignificant_zeros] formatted = "%.12g" % number.round(options[:precision]) diff --git a/app/controllers/origami/dashboard_controller.rb b/app/controllers/origami/dashboard_controller.rb index 00766d51..7f631334 100644 --- a/app/controllers/origami/dashboard_controller.rb +++ b/app/controllers/origami/dashboard_controller.rb @@ -2,21 +2,20 @@ class Origami::DashboardController < BaseOrigamiController def index @shop = Shop.first - - today = DateTime.now.strftime('%Y-%m-%d') - @display_type = Lookup.find_by_lookup_type("display_type") @sale_data = Array.new @total_payment_methods = Sale.total_payment_methods(current_user) + if !@total_payment_methods.nil? - @total_payment_methods.each do |payment| - pay = Sale.payment_sale(payment.payment_method, current_user) - @sale_data.push({payment.payment_method => pay.payment_amount}) - end + @total_payment_methods.each do |payment| + pay = Sale.payment_sale(payment.payment_method, current_user) + @sale_data.push({payment.payment_method => pay.payment_amount}) + end else @sale_data = nil end + @summ_sale = Sale.summary_sale_receipt(current_user) @total_customer, @total_dinein, @total_takeaway, @total_membership = Sale.total_customer(current_user,@from,@to) # @total_other_customer = Sale.total_other_customer(today,current_user) @@ -25,13 +24,13 @@ class Origami::DashboardController < BaseOrigamiController @total_accounts = Account.select("accounts.id as account_id, accounts.title as title") @account_data = Array.new if !@total_accounts.nil? - @total_accounts.each do |account| - acc = Sale.account_data(account.account_id, current_user) - if !acc.nil? - @account_data.push({account.title => acc.cnt_acc, account.title + '_amount' => acc.total_acc}) - end + @total_accounts.each do |account| + acc = Sale.account_data(account.account_id, current_user) + if !acc.nil? + @account_data.push({account.title => acc.cnt_acc, account.title + '_amount' => acc.total_acc}) end - @total_accounts = @total_accounts.reject.with_index { |x, i| @account_data[i].nil? } + end + @total_accounts = @total_accounts.reject.with_index { |x, i| @account_data[i].nil? } else @account_data = nil end From 0ef1b4fd87d6df8cace19a59d6c9369bd9e10897 Mon Sep 17 00:00:00 2001 From: Thein Lin Kyaw Date: Fri, 29 Nov 2019 14:24:35 +0630 Subject: [PATCH 3/7] fix request bill error with show_total_before_tax --- app/controllers/concerns/number_formattable.rb | 8 +++++--- app/pdf/receipt_bill_pdf.rb | 4 ++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/app/controllers/concerns/number_formattable.rb b/app/controllers/concerns/number_formattable.rb index 063df8ca..bb022263 100644 --- a/app/controllers/concerns/number_formattable.rb +++ b/app/controllers/concerns/number_formattable.rb @@ -45,15 +45,17 @@ module NumberFormattable options[:precision] = options[:precision] || precision # options[:delimiter] = options[:delimiter] || delimiter options[:strip_insignificant_zeros] = options[:strip_insignificant_zeros] || strip_insignificant_zeros + + number = number.to_f.round(options[:precision]) if options[:precision] > 0 if options[:strip_insignificant_zeros] - formatted = "%.12g" % number.round(options[:precision]) + formatted = "%.12g" % number else - formatted = "%.#{options[:precision]}f" % number.round(options[:precision]) + formatted = "%.#{options[:precision]}f" % number end else - formatted = number.round(options[:precision]).to_i.to_s + formatted = number.to_i.to_s end if options[:delimiter] && !options[:delimiter].empty? diff --git a/app/pdf/receipt_bill_pdf.rb b/app/pdf/receipt_bill_pdf.rb index 2d463b38..842b6f27 100755 --- a/app/pdf/receipt_bill_pdf.rb +++ b/app/pdf/receipt_bill_pdf.rb @@ -344,14 +344,14 @@ class ReceiptBillPdf < Prawn::Document sale_data.sale_taxes.each do |st| if (st.tax_name.include? "Service") service_tax_desc = st.tax_name - service_tax_amount = number_format(st.tax_payable_amount, :precision => precision.to_i, :delimiter => delimiter) + service_tax_amount = st.tax_payable_amount if incl_tax service_tax_rate = st.tax_rate.to_i end end if (st.tax_name.include? "Commercial") com_tax_desc = st.tax_name - com_tax_amount = number_format(st.tax_payable_amount, :precision => precision.to_i, :delimiter => delimiter) + com_tax_amount = st.tax_payable_amount if incl_tax com_tax_rate = st.tax_rate.to_i end From e3501cd43ce5fdcd600342a10644b58fa04eb1cd Mon Sep 17 00:00:00 2001 From: Thein Lin Kyaw Date: Fri, 29 Nov 2019 14:49:36 +0630 Subject: [PATCH 4/7] fix stock check error --- app/models/sale_item.rb | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/app/models/sale_item.rb b/app/models/sale_item.rb index dc03935c..3510b7c4 100755 --- a/app/models/sale_item.rb +++ b/app/models/sale_item.rb @@ -398,11 +398,12 @@ class SaleItem < ApplicationRecord stock = StockJournal.where('item_code=?', self.item_instance_code).order("id DESC").first unless stock.nil? check_item = StockCheckItem.where('item_code=?', self.item_instance_code).order("id DESC").first + + StockJournal.add_to_journal(self.item_instance_code, qty, stock.balance, remark, inventory_definition, self.id, StockJournal::SALES_TRANS) + check_item.different = check_item.different + qty + check_item.save end end - StockJournal.add_to_journal(self.item_instance_code, qty, stock.balance, remark, inventory_definition, self.id, StockJournal::SALES_TRANS) - check_item.different = check_item.different + qty - check_item.save elsif is_foc or cancel_foc qty = StockJournal.where(trans_ref: self.sale_item_id).sum("credit-debit") if stock_journal = StockJournal.where(trans_ref: self.sale_item_id, item_code: self.item_instance_code).order(id: :desc).first From 18cb9ba23cc25958864ce70f96dc06b8bff21953 Mon Sep 17 00:00:00 2001 From: Thein Lin Kyaw Date: Fri, 29 Nov 2019 15:47:15 +0630 Subject: [PATCH 5/7] fix sub menu category error --- app/controllers/origami/dashboard_controller.rb | 4 ++-- app/views/origami/dashboard/_menu.json.jbuilder | 9 ++------- 2 files changed, 4 insertions(+), 9 deletions(-) diff --git a/app/controllers/origami/dashboard_controller.rb b/app/controllers/origami/dashboard_controller.rb index 7f631334..43c79179 100644 --- a/app/controllers/origami/dashboard_controller.rb +++ b/app/controllers/origami/dashboard_controller.rb @@ -6,7 +6,7 @@ class Origami::DashboardController < BaseOrigamiController @sale_data = Array.new @total_payment_methods = Sale.total_payment_methods(current_user) - + if !@total_payment_methods.nil? @total_payment_methods.each do |payment| pay = Sale.payment_sale(payment.payment_method, current_user) @@ -99,7 +99,7 @@ class Origami::DashboardController < BaseOrigamiController end def get_all_menu - @menus = Menu.includes(:menu_categories => {:menu_items => :menu_item_instances}).includes(:menu_categories => {:menu_items => :item_sets }).includes(:menu_categories => {:menu_items => {:item_sets => :menu_item_instances}}).active.all + @menus = Menu.includes(:menu_categories => :children).includes(:menu_categories => {:menu_items => :menu_item_instances}).includes(:menu_categories => {:menu_items => :item_sets }).includes(:menu_categories => {:menu_items => {:item_sets => :menu_item_instances}}).active.all @item_attributes = MenuItemAttribute.all.load @item_options = MenuItemOption.all.load end diff --git a/app/views/origami/dashboard/_menu.json.jbuilder b/app/views/origami/dashboard/_menu.json.jbuilder index 703c3355..6d1ec624 100644 --- a/app/views/origami/dashboard/_menu.json.jbuilder +++ b/app/views/origami/dashboard/_menu.json.jbuilder @@ -15,15 +15,10 @@ if (menu.menu_categories) categories = menu.menu_categories json.categories categories do |category| if category.is_available - parent_category = category.parent - if !parent_category.nil? - json.sub_category "true" - else - json.sub_category "false" - end + json.sub_category category.children.present? + valid_time = category.valid_time json.valid_time valid_time - json.id category.id json.code category.code json.order_by category.order_by From 5d10d4b6a17f176e57ac84647ab69298ed84c018 Mon Sep 17 00:00:00 2001 From: Thein Lin Kyaw Date: Fri, 29 Nov 2019 17:47:16 +0630 Subject: [PATCH 6/7] fix origami dashboard --- app/models/sale.rb | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/app/models/sale.rb b/app/models/sale.rb index 18be54a9..85a81950 100644 --- a/app/models/sale.rb +++ b/app/models/sale.rb @@ -1583,6 +1583,8 @@ end if !from.nil? && !to.nil? query = query.receipt_date_between(from, to) + else + query = query.receipt_date_between(Time.now.beginning_of_day, Time.now.end_of_day) end if current_user.present? && !(current_user.role == 'administrator' || current_user.role == 'manager' || current_user.role == 'account' || current_user.role == 'supervisor') @@ -1606,6 +1608,8 @@ end if !from.nil? && !to.nil? query = query.receipt_date_between(from, to) + else + query = query.receipt_date_between(Time.now.beginning_of_day, Time.now.end_of_day) end if current_user.present? && !(current_user.role == 'administrator' || current_user.role == 'manager' || current_user.role == 'account' || current_user.role == 'supervisor') @@ -1637,6 +1641,8 @@ end if (!from.nil? && !to.nil?) query = query.receipt_date_between(from, to) + else + query = query.receipt_date_between(Time.now.beginning_of_day, Time.now.end_of_day) end if current_user.present? && !(current_user.role == 'administrator' || current_user.role == 'manager' || current_user.role == 'account' || current_user.role == 'supervisor') @@ -1654,6 +1660,8 @@ end if (!from.nil? && !to.nil?) query = query.receipt_date_between(from, to) + else + query = query.receipt_date_between(Time.now.beginning_of_day, Time.now.end_of_day) end if current_user.present? && !(current_user.role == 'administrator' || current_user.role == 'manager' || current_user.role == 'account' || current_user.role == 'supervisor') @@ -1675,6 +1683,8 @@ end if (!from.nil? && !to.nil?) query = query.merge(Sale.receipt_date_between(from, to)) + else + query = query.merge(Sale.receipt_date_between(Time.now.beginning_of_day, Time.now.end_of_day)) end if current_user.present? && !(current_user.role == 'administrator' || current_user.role == 'manager' || current_user.role == 'account' || current_user.role == 'supervisor') @@ -1692,6 +1702,8 @@ end if (!from.nil? && !to.nil?) query = query.receipt_date_between(from, to) + else + query = query.receipt_date_between(Time.now.beginning_of_day, Time.now.end_of_day) end if current_user.present? && !(current_user.role == 'administrator' || current_user.role == 'manager' || current_user.role == 'account' || current_user.role == 'supervisor') @@ -1711,6 +1723,8 @@ end if (!from.nil? && !to.nil?) query = query.receipt_date_between(from, to) + else + query = query.receipt_date_between(Time.now.beginning_of_day, Time.now.end_of_day) end if current_user.present? && !(current_user.role == 'administrator' || current_user.role == 'manager' || current_user.role == 'account' || current_user.role == 'supervisor') @@ -1738,6 +1752,8 @@ end if (!from.nil? && !to.nil?) query = query.receipt_date_between(from, to) + else + query = query.receipt_date_between(Time.now.beginning_of_day, Time.now.end_of_day) end if current_user.present? && !(current_user.role == 'administrator' || current_user.role == 'manager' || current_user.role == 'account' || current_user.role == 'supervisor') @@ -1784,6 +1800,8 @@ end if (!from.nil? && !to.nil?) query = query.receipt_date_between(from, to) + else + query = query.receipt_date_between(Time.now.beginning_of_day, Time.now.end_of_day) end if current_user.present? && !(current_user.role == 'administrator' || current_user.role == 'manager' || current_user.role == 'account' || current_user.role == 'supervisor') @@ -1802,6 +1820,8 @@ end if (!from.nil? && !to.nil?) query = query.receipt_date_between(from, to) + else + query = query.receipt_date_between(Time.now.beginning_of_day, Time.now.end_of_day) end if current_user.present? && !(current_user.role == 'administrator' || current_user.role == 'manager' || current_user.role == 'account' || current_user.role == 'supervisor') @@ -1866,6 +1886,8 @@ end if (!from.nil? && !to.nil?) query = query.receipt_date_between(from, to) + else + query = query.receipt_date_between(Time.now.beginning_of_day, Time.now.end_of_day) end if current_user.present? && !(current_user.role == 'administrator' || current_user.role == 'manager' || current_user.role == 'account' || current_user.role == 'supervisor') @@ -1884,6 +1906,8 @@ end if (!from.nil? && !to.nil?) query = query.receipt_date_between(from, to) + else + query = query.receipt_date_between(Time.now.beginning_of_day, Time.now.end_of_day) end if current_user.present? && !(current_user.role == 'administrator' || current_user.role == 'manager' || current_user.role == 'account' || current_user.role == 'supervisor') @@ -1902,6 +1926,8 @@ end if (!from.nil? && !to.nil?) query = query.receipt_date_between(from, to) + else + query = query.receipt_date_between(Time.now.beginning_of_day, Time.now.end_of_day) end if current_user.present? && !(current_user.role == 'administrator' || current_user.role == 'manager' || current_user.role == 'account' || current_user.role == 'supervisor') @@ -1921,6 +1947,8 @@ end if (!from.nil? && !to.nil?) query = query.receipt_date_between(from, to) + else + query = query.receipt_date_between(Time.now.beginning_of_day, Time.now.end_of_day) end if current_user.present? && !(current_user.role == 'administrator' || current_user.role == 'manager' || current_user.role == 'account' || current_user.role == 'supervisor') @@ -2073,6 +2101,8 @@ def self.employee_sale(shift=nil,from=nil,to=nil,from_time=nil,to_time=nil) .paid.completed if !from.nil? && !to.nil? query = query.receipt_date_between(from, to) + else + query = query.receipt_date_between(Time.now.beginning_of_day, Time.now.end_of_day) end if !shift.nil? From a705f0df9a62f77245d0fb2bbd7df10a5fbe3ca7 Mon Sep 17 00:00:00 2001 From: Git Code2lab Date: Mon, 9 Dec 2019 09:44:03 +0000 Subject: [PATCH 7/7] Update addorder.js --- app/assets/javascripts/addorder.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/assets/javascripts/addorder.js b/app/assets/javascripts/addorder.js index 64208520..259f9f67 100755 --- a/app/assets/javascripts/addorder.js +++ b/app/assets/javascripts/addorder.js @@ -629,7 +629,7 @@ $(function() { status = "selected-attribute"; } if(parseInt(jQuery.inArray(value[i], instance_attributes)) == -1){ - disabled = "disabled"; + //disabled = "disabled"; } row +="