From 36b61a9d515944c841a1aa54605c542a0c47d707 Mon Sep 17 00:00:00 2001 From: Thein Lin Kyaw Date: Wed, 13 Nov 2019 15:43:56 +0630 Subject: [PATCH 1/3] optmize daily sales report --- app/models/sale.rb | 124 ++++++++++++++++++--------------------------- 1 file changed, 49 insertions(+), 75 deletions(-) diff --git a/app/models/sale.rb b/app/models/sale.rb index d8c73ec3..cfc573b2 100644 --- a/app/models/sale.rb +++ b/app/models/sale.rb @@ -751,84 +751,58 @@ class Sale < ApplicationRecord end def self.daily_sales_list(from,to) - sub_query = "SELECT (CASE WHEN SUM(sale_payments.payment_amount) > 0 THEN - (SUM(sale_payments.payment_amount) + SUM(sale_payments.outstanding_amount)) ELSE 0 END) - FROM sale_payments - INNER JOIN sale_audits sa ON SUBSTRING_INDEX(sa.remark,'||',1)=sale_payments.sale_payment_id - INNER JOIN sales s ON s.sale_id=sa.sale_id - WHERE s.sale_status='completed' - AND DATE_FORMAT(CONVERT_TZ(s.receipt_date,'+00:00','+06:30'),'%Y-%m-%d') = DATE_FORMAT(CONVERT_TZ(sales.receipt_date,'+00:00','+06:30'),'%Y-%m-%d')" - payments_total = Sale.select("CAST((CONVERT_TZ(sales.receipt_date,'+00:00','+06:30')) AS DATE) as sale_date, - SUM(case when (sale_payments.payment_method='KBZPay') then sale_payments.payment_amount else 0 end) as kbzpay_amount, - SUM(case when (sale_payments.payment_method='mpu') then sale_payments.payment_amount else 0 end) as mpu_amount, - SUM(case when (sale_payments.payment_method='master') then sale_payments.payment_amount else 0 end) as master_amount, - SUM(case when (sale_payments.payment_method='visa') then sale_payments.payment_amount else 0 end) as visa_amount, - SUM(case when (sale_payments.payment_method='jcb') then sale_payments.payment_amount else 0 end) as jcb_amount, - SUM(case when (sale_payments.payment_method='paypar') then sale_payments.payment_amount else 0 end) as paypar_amount, - SUM(case when (sale_payments.payment_method='unionpay') then sale_payments.payment_amount else 0 end) as unionpay_amount, - SUM(case when (sale_payments.payment_method='alipay') then sale_payments.payment_amount else 0 end) as alipay_amount, - SUM(case when (sale_payments.payment_method='paymal') then sale_payments.payment_amount else 0 end) as paymal_amount, - SUM(case when (sale_payments.payment_method='dinga') then sale_payments.payment_amount else 0 end) as dinga_amount, - SUM(case when (sale_payments.payment_method='JunctionPay') then sale_payments.payment_amount else 0 end) as junctionpay_amount, - SUM(case when (sale_payments.payment_method='cash') then sale_payments.payment_amount else 0 end) as cash_amount, - (CASE WHEN (SUM(case when (sale_payments.payment_method='creditnote') then sale_payments.payment_amount else 0 end)) > 0 THEN (SUM(case when (sale_payments.payment_method='creditnote') then sale_payments.payment_amount else 0 end) - (#{sub_query})) ELSE 0 END) as credit_amount, - SUM(case when (sale_payments.payment_method='giftvoucher') then sale_payments.payment_amount else 0 end) as giftvoucher_amount, - SUM(case when (sale_payments.payment_method='foc') then sale_payments.payment_amount else 0 end) as foc_amount") - .joins(" join sale_payments on sale_payments.sale_id = sales.sale_id") - .where("sale_status = ? AND sales.receipt_date between ? and ? ", 'completed', from, to) - .group("DATE_FORMAT((CONVERT_TZ(sales.receipt_date,'+00:00','+06:30')),'%Y-%m-%d')") + sales = select(" + sales.*, + SUM(case when (sale_payments.payment_method='KBZPay') then sale_payments.payment_amount else 0 end) as kbzpay_amount, + SUM(case when (sale_payments.payment_method='mpu') then sale_payments.payment_amount else 0 end) as mpu_amount, + SUM(case when (sale_payments.payment_method='master') then sale_payments.payment_amount else 0 end) as master_amount, + SUM(case when (sale_payments.payment_method='visa') then sale_payments.payment_amount else 0 end) as visa_amount, + SUM(case when (sale_payments.payment_method='jcb') then sale_payments.payment_amount else 0 end) as jcb_amount, + SUM(case when (sale_payments.payment_method='paypar') then sale_payments.payment_amount else 0 end) as paypar_amount, + SUM(case when (sale_payments.payment_method='unionpay') then sale_payments.payment_amount else 0 end) as unionpay_amount, + SUM(case when (sale_payments.payment_method='alipay') then sale_payments.payment_amount else 0 end) as alipay_amount, + SUM(case when (sale_payments.payment_method='paymal') then sale_payments.payment_amount else 0 end) as paymal_amount, + SUM(case when (sale_payments.payment_method='dinga') then sale_payments.payment_amount else 0 end) as dinga_amount, + SUM(case when (sale_payments.payment_method='JunctionPay') then sale_payments.payment_amount else 0 end) as junctionpay_amount, + SUM(case when (sale_payments.payment_method='cash') then sale_payments.payment_amount else 0 end) as cash_amount, + CASE WHEN SUM(case when sale_payments.payment_method not in('creditnote') then sale_payments.payment_amount else 0 end) < sales.grand_total + THEN SUM(case when sale_payments.payment_method = 'creditnote' then sale_payments.payment_amount else 0 end) ELSE 0 END as credit_amount, + SUM(case when (sale_payments.payment_method='giftvoucher') then sale_payments.payment_amount else 0 end) as giftvoucher_amount, + SUM(case when (sale_payments.payment_method='foc') then sale_payments.payment_amount else 0 end) as foc_amount") + .joins("LEFT JOIN sale_payments on sales.sale_status != 'void' AND sale_payments.sale_id = sales.sale_id AND DATE(CONVERT_TZ(sale_payments.created_at,'+00:00','+06:30')) = DATE(CONVERT_TZ(sales.receipt_date,'+00:00','+06:30'))") + .where("(sale_status = ? OR sale_status = ?) AND sales.receipt_date between ? AND ? ", 'completed', 'void', from, to) + .group("sale_id").to_sql - daily_total = Array.new + daily_total = connection.select_all("SELECT + IFNULL(SUM(case when (sale_status='completed') then grand_total else 0 end),0) as grand_total, + IFNULL(SUM(case when (sale_status='completed') then old_grand_total else 0 end),0) as old_grand_total, + IFNULL(SUM(case when (sale_status='completed') then total_discount else 0 end),0) as total_discount, + IFNULL(SUM(case when (sale_status='completed') then amount_changed else 0 end),0) as total_change_amount, + IFNULL(SUM(case when (sale_status='void') then grand_total else 0 end),0) as void_amount, + IFNULL(SUM(case when (sale_status='completed') then rounding_adjustment else 0 end),0) as rounding_adj, + CAST((CONVERT_TZ(receipt_date,'+00:00','+06:30')) AS DATE) as sale_date, + SUM(kbzpay_amount) as kbzpay_amount, + SUM(mpu_amount) as mpu_amount, + SUM(master_amount) as master_amount, + SUM(visa_amount) as visa_amount, + SUM(jcb_amount) as jcb_amount, + SUM(paypar_amount) as paypar_amount, + SUM(unionpay_amount) as unionpay_amount, + SUM(alipay_amount) as alipay_amount, + SUM(paymal_amount) as paymal_amount, + SUM(dinga_amount) as dinga_amount, + SUM(junctionpay_amount) as junctionpay_amount, + SUM(cash_amount) as cash_amount, + SUM(credit_amount) as credit_amount, + SUM(giftvoucher_amount) as giftvoucher_amount, + SUM(foc_amount) as foc_amount + FROM ( + #{sales} + ) as s + GROUP BY DATE(CONVERT_TZ(receipt_date,'+00:00','+06:30'))").to_hash.map(&:symbolize_keys) - payments_total.each do |pay| - sale_date = pay.sale_date - diff_time = payments_total.first.sale_date.beginning_of_day.utc - from - diff = diff_time % 86400 - from_date = sale_date.beginning_of_day.utc - diff - to_date = sale_date.end_of_day.utc - diff - - total_sale = Sale.select("IFNULL(SUM(case when (sale_status='completed') then grand_total else 0 end),0) as grand_total, - IFNULL(SUM(case when (sale_status='completed') then old_grand_total else 0 end),0) as old_grand_total, - IFNULL(SUM(case when (sale_status='completed') then total_discount else 0 end),0) as total_discount, - IFNULL(SUM(case when (sale_status='completed') then amount_changed else 0 end),0) as total_change_amount, - IFNULL(SUM(case when (sale_status='void') then grand_total else 0 end),0) as void_amount, - IFNULL(SUM(case when (sale_status='completed') then rounding_adjustment else 0 end),0) as rounding_adj") - .where("(sale_status = ? OR sale_status = ?) AND receipt_date between ? and ? AND total_amount != 0", 'completed', 'void', from_date, to_date) - - total_sale.each do |sale| - grand_total = sale.grand_total - old_grand_total = sale.old_grand_total - total_discount = sale.total_discount - void_amount = sale.void_amount - total_change_amount = sale.total_change_amount - total = {:sale_date => pay.sale_date, - :mpu_amount => pay.mpu_amount, - :master_amount => pay.master_amount, - :visa_amount => pay.visa_amount, - :jcb_amount => pay.jcb_amount, - :paypar_amount => pay.paypar_amount, - :unionpay_amount => pay.unionpay_amount, - :alipay_amount => pay.alipay_amount, - :kbzpay_amount => pay.kbzpay_amount, - :paymal_amount => pay.paymal_amount, - :dinga_amount => pay.dinga_amount, - :junctionpay_amount => pay.junctionpay_amount, - :cash_amount => pay.cash_amount, - :credit_amount => pay.credit_amount, - :foc_amount => pay.foc_amount, - :giftvoucher_amount => pay.giftvoucher_amount, - :total_discount => total_discount, - :total_change_amount => total_change_amount, - :grand_total => grand_total, - :old_grand_total => old_grand_total, - :void_amount => void_amount, - :rounding_adj => sale.rounding_adj} - daily_total.push(total) - end - - end - return daily_total + return daily_total end def self.get_by_range_by_saleitems(from,to,status,report_type) From dd6e8142b47fc900c8ba1d196396f95f555c3bab Mon Sep 17 00:00:00 2001 From: Thein Lin Kyaw Date: Thu, 14 Nov 2019 18:25:48 +0630 Subject: [PATCH 2/3] optimize query for credit payment report --- app/models/sale.rb | 107 ++++++++---------- .../reports/credit_payment/index.html.erb | 68 +++++------ .../reports/credit_payment/index.xls.erb | 12 +- app/views/reports/dailysale/index.html.erb | 5 +- app/views/reports/dailysale/index.xls.erb | 54 ++++----- 5 files changed, 118 insertions(+), 128 deletions(-) diff --git a/app/models/sale.rb b/app/models/sale.rb index af80b292..98457d0e 100644 --- a/app/models/sale.rb +++ b/app/models/sale.rb @@ -751,7 +751,6 @@ class Sale < ApplicationRecord end def self.daily_sales_list(from,to) - sales = select(" sales.*, SUM(case when (sale_payments.payment_method='KBZPay') then sale_payments.payment_amount else 0 end) as kbzpay_amount, @@ -766,8 +765,9 @@ def self.daily_sales_list(from,to) SUM(case when (sale_payments.payment_method='dinga') then sale_payments.payment_amount else 0 end) as dinga_amount, SUM(case when (sale_payments.payment_method='JunctionPay') then sale_payments.payment_amount else 0 end) as junctionpay_amount, SUM(case when (sale_payments.payment_method='cash') then sale_payments.payment_amount else 0 end) as cash_amount, - CASE WHEN SUM(case when sale_payments.payment_method not in('creditnote') then sale_payments.payment_amount else 0 end) < sales.grand_total - THEN SUM(case when sale_payments.payment_method = 'creditnote' then sale_payments.payment_amount else 0 end) ELSE 0 END as credit_amount, + CASE WHEN SUM(case when sale_payments.payment_method not in('creditnote') then sale_payments.payment_amount end) < sales.grand_total + THEN sales.grand_total - SUM(case when sale_payments.payment_method not in('creditnote') then sale_payments.payment_amount end) + ELSE 0 END as credit_amount, SUM(case when (sale_payments.payment_method='giftvoucher') then sale_payments.payment_amount else 0 end) as giftvoucher_amount, SUM(case when (sale_payments.payment_method='foc') then sale_payments.payment_amount else 0 end) as foc_amount") .joins("LEFT JOIN sale_payments on sales.sale_status != 'void' AND sale_payments.sale_id = sales.sale_id AND DATE(CONVERT_TZ(sale_payments.created_at,'+00:00','+06:30')) = DATE(CONVERT_TZ(sales.receipt_date,'+00:00','+06:30'))") @@ -1104,73 +1104,64 @@ def self.get_shift_sales_by_receipt_no_detail(shift_sale_range,shift,from,to,pay end def self.get_by_shift_sale_credit_payment(shift_sale_range,shift,from,to,filter,order_source) - sub_query = "SELECT (CASE WHEN SUM(payment_amount) > 0 - THEN DATE_FORMAT(CONVERT_TZ(sale_payments.created_at,'+00:00','+06:30'),'%d %b %y %h:%i%p') ELSE '-' END) - FROM `sale_payments` - INNER JOIN sale_audits ON SUBSTRING_INDEX(sale_audits.remark,'||',1)=sale_payments.sale_payment_id - WHERE sale_audits.sale_id = s.sale_id" + order_sources = Order.select("sale_orders.sale_id, orders.source") + .joins(:sale_orders).to_sql - sub_query1 = "SELECT (CASE WHEN SUM(payment_amount) > 0 THEN SUM(payment_amount) - - (SUM(payment_amount) - (SELECT SUM(payment_amount) FROM sale_payments WHERE payment_method='creditnote' AND sale_id=s.sale_id)) ELSE 0 END) - FROM `sale_payments` - INNER JOIN sale_audits ON SUBSTRING_INDEX(sale_audits.remark,'||',1)=sale_payments.sale_payment_id - WHERE sale_audits.sale_id = s.sale_id" + credit_payments = SalePayment.select(" + sales.sale_id, + DATE_FORMAT(CONVERT_TZ(sale_payments.created_at,'+00:00','+06:30'),'%d %b %y %h:%i%p') as credit_payment_receipt_date, + sale_payments.payment_amount as credit_payment, + employees.name as credit_payment_cashier_name, + CONCAT(DATE_FORMAT(CONVERT_TZ(shift_started_at,'+00:00','+06:30'),'%d %b %y %h:%i%p'),' - ',DATE_FORMAT(CONVERT_TZ(shift_closed_at,'+00:00','+06:30'),'%d %b %y %h:%i%p')) as credit_payment_shift_name") + .joins("JOIN sales ON sales.sale_id = sale_payments.sale_id") + .joins("JOIN sale_audits ON sale_audits.sale_id = sales.sale_id AND SUBSTRING_INDEX(sale_audits.remark,'||',1)=sale_payments.sale_payment_id") + .joins("JOIN shift_sales ON shift_sales.id = sales.shift_sale_id") + .joins("JOIN employees ON employees.id = shift_sales.employee_id").to_sql - sub_query2 = "SELECT (CASE WHEN shift_closed_at IS NOT NULL AND credit_payment > 0 - THEN CONCAT(DATE_FORMAT(CONVERT_TZ(shift_started_at,'+00:00','+06:30'),'%d %b %y %h:%i%p'),' - ',DATE_FORMAT(CONVERT_TZ(shift_closed_at,'+00:00','+06:30'),'%d %b %y %h:%i%p')) - ELSE '-' END) - FROM shift_sales - WHERE shift_sales.id = s.shift_sale_id" + credits = SalePayment.select(" + sale_payments.sale_payment_id, + sale_payments.payment_method, + sale_payments.payment_amount, + sale_payments.payment_status, + sales.sale_id, + sales.receipt_no, + sales.receipt_date as sale_date, + order_sources.source as order_source, + sales.cashier_name, + customers.name as customer_name, + IFNULL(credit_payments.credit_payment_receipt_date, '-') as credit_payment_receipt_date, + IFNULL(credit_payments.credit_payment, 0) as credit_payment, + IFNULL(credit_payments.credit_payment_cashier_name, '-') as credit_payment_cashier_name, + IFNULL(credit_payments.credit_payment_shift_name, '-') as credit_payment_shift_name") + .joins("JOIN sales ON sales.sale_id = sale_payments.sale_id") + .joins("JOIN shift_sales ON shift_sales.id = sales.shift_sale_id") + .joins("JOIN customers ON customers.customer_id = sales.customer_id") + .joins("JOIN (#{order_sources}) order_sources ON order_sources.sale_id = sales.sale_id") + .joins("LEFT JOIN (#{credit_payments}) credit_payments ON credit_payments.sale_id = sales.sale_id") + .where("sale_payments.payment_method= ? AND sales.sale_status = ?", 'creditnote', 'completed') - sub_query3 = "SELECT (CASE WHEN shift_closed_at IS NOT NULL OR shift_closed_at IS NULL AND credit_payment > 0 - THEN employees.name ELSE '-' END) - FROM shift_sales - INNER JOIN employees ON employees.id=shift_sales.employee_id - WHERE shift_sales.id = s.shift_sale_id" - - filter_check = "" - if filter == 'paid' - filter_check = " AND (SELECT (CASE WHEN SUM(payment_amount) > 0 THEN SUM(payment_amount) ELSE 0 END) - FROM `sale_payments` - INNER JOIN sale_audits ON SUBSTRING_INDEX(sale_audits.remark,'||',1)=sale_payments.sale_payment_id - WHERE sale_audits.sale_id = s.sale_id) > 0" - elsif filter == 'unpaid' - filter_check = " AND (SELECT (CASE WHEN SUM(payment_amount) > 0 THEN SUM(payment_amount) ELSE 0 END) - FROM `sale_payments` - INNER JOIN sale_audits ON SUBSTRING_INDEX(sale_audits.remark,'||',1)=sale_payments.sale_payment_id - WHERE sale_audits.sale_id = s.sale_id) = 0" - end - order_source_query = "(select orders.source FROM orders JOIN sale_orders so ON so.order_id=orders.order_id WHERE so.sale_id=s.sale_id GROUP BY so.sale_id)" - - if order_source.blank? - source = "" - else + if order_source.present? if order_source == "cashier" - source = "and #{order_source_query}='cashier' or #{order_source_query}='emenu'" + credits = credits.where("order_sources.source IN (?)", ['cashier', 'emenu']) else - source = "and #{order_source_query}='#{order_source}'" + credits = credits.where("order_sources.source = ?", order_source) end end - query = SalePayment.select("s.receipt_no, sale_payments.*, - SUM(sale_payments.payment_amount) as payment_amount, - s.receipt_date as sale_date, - #{order_source_query} as order_source, - s.cashier_name as cashier_name, - (#{sub_query}) as credit_payment_receipt_date, - (#{sub_query1}) as credit_payment, - (#{sub_query3}) as credit_payment_cashier_name, - (#{sub_query2}) as credit_payment_shift_name") - .joins("INNER JOIN sales s ON s.sale_id = sale_payments.sale_id") - .joins("INNER JOIN shift_sales ss ON ss.id = s.shift_sale_id") + + if filter == 'paid' + credits = credits.where("credit_payment IS NOT NULL") + elsif filter == 'unpaid' + credits = credits.where("credit_payment IS NULL") + end if shift.present? - query = query.where("sale_payments.payment_method= 'creditnote' and s.sale_status = 'completed' #{filter_check} and s.shift_sale_id in (?) #{source}",shift.to_a) + credits = credits.where("sales.shift_sale_id in (?)",shift.to_a) elsif shift_sale_range.present? - query = query.where("sale_payments.payment_method='creditnote' and s.sale_status = 'completed' #{filter_check} and s.shift_sale_id in (?) #{source}",shift_sale_range.to_a) + credits = credits.where("sales.shift_sale_id in (?)",shift_sale_range.to_a) else - query = query.where("sale_payments.payment_method='creditnote' and s.sale_status = 'completed' #{filter_check} and s.receipt_date between ? and ? #{source}",from,to) + credits = credits.where("sales.receipt_date between ? and ?",from,to) end - query = query.group("s.sale_id") + credits = credits.group("sales.sale_id") end def self.get_void_sale(shift,from,to) diff --git a/app/views/reports/credit_payment/index.html.erb b/app/views/reports/credit_payment/index.html.erb index 53a101d4..d5621850 100755 --- a/app/views/reports/credit_payment/index.html.erb +++ b/app/views/reports/credit_payment/index.html.erb @@ -17,7 +17,7 @@ + @@ -34,7 +34,7 @@ else delimiter = "" end - %> + %> <% unless @sale_data.blank? %> @@ -43,7 +43,7 @@ - <% end %> + <% end %> @@ -61,10 +61,10 @@ <% total_credit_amount = 0 total_credit_payment = 0 %> - <% @sale_data.each do |credit| %> + <% @sale_data.each do |credit| %> <% total_credit_amount += credit.payment_amount %> <% total_credit_payment += credit.credit_payment %> - + <% if @shift_from.nil? && @shift_to.nil? %> <% else %> @@ -78,10 +78,10 @@ Quick Service <% else %> Online Order - <% end %> + <% end %> - + - <% end %> + <% end %> @@ -33,10 +33,10 @@ <% total_credit_amount = 0 total_credit_payment = 0 %> - <% @sale_data.each do |credit| %> + <% @sale_data.each do |credit| %> <% total_credit_amount += credit.payment_amount total_credit_payment += credit.credit_payment %> - + <% if @shift_from.nil? && @shift_to.nil? %> <% else %> @@ -50,10 +50,10 @@ Quick Service <% else %> Online Order - <% end %> + <% end %> - + <% void = 0 %> <% mpu = 0 %> @@ -322,7 +321,7 @@ <% total_tax = 0 %> <% net = 0 %> - <% unless @tax.empty? %> + <% unless @tax.blank? %> <% @tax.each do |tax| total_tax += tax.tax_amount.to_f %> diff --git a/app/views/reports/dailysale/index.xls.erb b/app/views/reports/dailysale/index.xls.erb index 45e0264d..1e3871cf 100755 --- a/app/views/reports/dailysale/index.xls.erb +++ b/app/views/reports/dailysale/index.xls.erb @@ -10,7 +10,7 @@
<%= t("views.right_panel.detail.from_date") %> : <%= params[:from] rescue '-'%> , <%= t("views.right_panel.detail.to_date") %> : <%= params[:to] rescue '-'%>
<%= t("views.right_panel.detail.shift_name") %> <%= t("views.right_panel.detail.receipt_no") %>
<%= credit.sale_date.utc.getlocal.strftime("%e %b %I:%M%p") rescue '-'%> <%= credit.cashier_name rescue '-' %><%= credit.sale.customer.name rescue '-' %><%= credit.customer_name rescue '-' %> <%= number_with_precision(credit.payment_amount, precision: precision.to_i ,delimiter: delimiter) rescue '-' %> <%if credit.credit_payment_shift_name == '-' %> @@ -112,20 +112,20 @@ var check_arr = []; search_by_period(); $('#sel_period').change(function(){ - + search_by_period(); - + }); - + function search_by_period(){ var period = $('#sel_period').val(); var period_type = 0; var from = ""; var to = ""; - show_shift_name(period,period_type,from,to,'shift_item'); - } - + show_shift_name(period,period_type,from,to,'shift_item'); + } + // OK button is clicked $('#from').bootstrapMaterialDatePicker().on('beforeChange', function(e, date){ new_date = new Date(date) ; @@ -140,32 +140,32 @@ to = new_date.getDate() + "-" + month + "-" + new_date.getFullYear(); $('#to').val(to) search_by_date(); - }); - + }); + function search_by_date(){ - + from = $("#from").val(); - to = $("#to").val(); + to = $("#to").val(); var period = 0; - var period_type = 1; + var period_type = 1; if(to != '' && from != ''){ shift_name = from + ',' + to; check_arr.push(to); - + console.log(check_arr.length) if(check_arr.length == 1){ - show_shift_name(period,period_type,from,to,'shift_item'); + show_shift_name(period,period_type,from,to,'shift_item'); } if(check_arr.length == 3){ check_arr = []; } } - + } - + function show_shift_name(period,period_type,from,to,shift_item){ var shift = $('#shift_name'); if (from == '' && to == '') { @@ -173,18 +173,18 @@ to = $("#to").val(); } shift.empty(); - + var str = ''; - var param_shift = ''; + var param_shift = ''; var param_shift = '<%= params[:shift_name] rescue '-'%>'; url = '<%= reports_get_shift_by_date_path %>'; - + $.get(url, {period :period, period_type :period_type, from :from, to :to, report_type :shift_item} , function(data){ str = ''; - $(data.message).each(function(index){ - + $(data.message).each(function(index){ + var local_date = data.message[index].local_opening_date + ' - ' + data.message[index].local_closing_date; var sh_date = data.message[index].opening_date + ' - ' + data.message[index].closing_date; var shift_id = data.message[index].shift_id ; @@ -193,18 +193,18 @@ selected = 'selected = "selected"'; } else{ - selected = ''; - } + selected = ''; + } }else{ - selected = ''; - } + selected = ''; + } str += ''; - + // console.log(sh_date) - }) + }) shift.append(str); }); } }); - \ No newline at end of file + diff --git a/app/views/reports/credit_payment/index.xls.erb b/app/views/reports/credit_payment/index.xls.erb index 41d4620f..6568e086 100755 --- a/app/views/reports/credit_payment/index.xls.erb +++ b/app/views/reports/credit_payment/index.xls.erb @@ -15,7 +15,7 @@
<%= t("views.right_panel.detail.from_date") %> : <%= params[:from] rescue '-'%> , <%= t("views.right_panel.detail.to_date") %> : <%= params[:to] rescue '-'%>
<%= t("views.right_panel.detail.shift_name") %> <%= t("views.right_panel.detail.receipt_no") %>
<%= credit.sale_date.utc.getlocal.strftime("%e %b %I:%M%p") rescue '-'%> <%= credit.cashier_name rescue '-' %><%= credit.sale.customer.name rescue '-' %><%= credit.customer_name rescue '-' %> <%= credit.payment_amount rescue '-' %> <%if credit.credit_payment_shift_name == '-' %> @@ -78,4 +78,4 @@ - \ No newline at end of file + diff --git a/app/views/reports/dailysale/index.html.erb b/app/views/reports/dailysale/index.html.erb index 3347408a..592a8cca 100755 --- a/app/views/reports/dailysale/index.html.erb +++ b/app/views/reports/dailysale/index.html.erb @@ -138,8 +138,7 @@ delimiter = "" end %> - <% unless @sale_data.empty? %> - + <% unless @sale_data.blank? %>
- + @@ -58,8 +58,8 @@ <% end %> - - + + @@ -75,8 +75,8 @@ else delimiter = "" end - %> - <% unless @sale_data.empty? %> + %> + <% unless @sale_data.blank? %> <% void = 0 %> @@ -97,8 +97,8 @@ <% discount = 0 %> <% kbzpay = 0 %> <% total = 0 %> - <% grand_total = 0 %> - <% old_grand_total = 0 %> + <% grand_total = 0 %> + <% old_grand_total = 0 %> <% count = 1 %> <% rounding_adj = 0 %> <% @sale_data.each do |sale| %> <% void += sale[:void_amount] %> @@ -114,14 +114,14 @@ <% giftvoucher += sale[:giftvoucher_amount] %> <% paypar += sale[:paypar_amount] %> <% cash += sale[:cash_amount]-sale[:total_change_amount] %> - <% credit += sale[:credit_amount] %> + <% credit += sale[:credit_amount] %> <% foc += sale[:foc_amount] %> <% discount += sale[:total_discount] %> <% kbzpay += sale[:kbzpay_amount] %> <% total += sale[:grand_total].to_f + sale[:rounding_adj].to_f %> - <% grand_total += sale[:grand_total].to_f %> - <% old_grand_total += sale[:old_grand_total].to_f %> - <% rounding_adj += sale[:rounding_adj].to_f %> + <% grand_total += sale[:grand_total].to_f %> + <% old_grand_total += sale[:old_grand_total].to_f %> + <% rounding_adj += sale[:rounding_adj].to_f %> @@ -161,13 +161,13 @@ <% end %> - + <% if @payment_methods.include? ("GiftVoucher") %> - + <% end %> - - + + @@ -175,7 +175,7 @@ <% end %> <% colspan = 7 %> - + <% if @payment_methods.include? ("MPU") %> <% colspan += 1 %> @@ -222,21 +222,21 @@ <% end %> - - <% if @payment_methods.include? ("GiftVoucher") %> - <% colspan += 1 %> - - <% end %> + + <% if @payment_methods.include? ("GiftVoucher") %> + <% colspan += 1 %> + + <% end %> - - + + <% total_tax = 0 %> <% net = 0 %> - <% unless @tax.empty? %> - <% @tax.each do |tax| + <% unless @tax.blank? %> + <% @tax.each do |tax| total_tax += tax.tax_amount.to_f %> @@ -252,7 +252,7 @@ - + <% end %> @@ -264,4 +264,4 @@ - \ No newline at end of file + From 6bb545d382fe4a933fb99a61a38c98c38ab1c39d Mon Sep 17 00:00:00 2001 From: Nweni Date: Fri, 15 Nov 2019 13:53:31 +0630 Subject: [PATCH 3/3] gem --- Gemfile | 2 +- Gemfile.lock | 2 +- config/initializers/action_controller.rb | 10 +++++----- config/puma.rb | 22 +++++++++++----------- 4 files changed, 18 insertions(+), 18 deletions(-) diff --git a/Gemfile b/Gemfile index 66c149ef..869f6187 100644 --- a/Gemfile +++ b/Gemfile @@ -1,5 +1,5 @@ source 'https://rubygems.org' -ruby '2.4.1' +ruby '2.6.3' git_source(:github) do |repo_name| repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/") "https://github.com/#{repo_name}.git" diff --git a/Gemfile.lock b/Gemfile.lock index 33b674ad..aaef827c 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -371,7 +371,7 @@ DEPENDENCIES whenever RUBY VERSION - ruby 2.4.1p111 + ruby 2.6.3p62 BUNDLED WITH 2.0.2 diff --git a/config/initializers/action_controller.rb b/config/initializers/action_controller.rb index 205c330a..85f38ec5 100644 --- a/config/initializers/action_controller.rb +++ b/config/initializers/action_controller.rb @@ -21,11 +21,11 @@ class ActionController::Base end else # check for license file - if check_license - current_license(ENV["SX_PROVISION_URL"]) - else - redirect_to activate_path - end + # if check_license + # current_license(ENV["SX_PROVISION_URL"]) + # else + # redirect_to activate_path + # end end end diff --git a/config/puma.rb b/config/puma.rb index d24425ae..f0013d25 100755 --- a/config/puma.rb +++ b/config/puma.rb @@ -1,11 +1,11 @@ -application_path="#{File.expand_path("../..", __FILE__)}" -directory application_path -#environment ENV.fetch("RAILS_ENV") { "production" } -environment "production" -pidfile "#{application_path}/tmp/puma/pid" -state_path "#{application_path}/tmp/puma/state" -stdout_redirect "#{application_path}/log/puma.stdout.log", "#{application_path}/log/puma.stderr.log" -port ENV.fetch("PORT") { 62158 } -workers 2 -preload_app! -threads 1,1 +# application_path="#{File.expand_path("../..", __FILE__)}" +# directory application_path +# #environment ENV.fetch("RAILS_ENV") { "production" } +# environment "production" +# pidfile "#{application_path}/tmp/puma/pid" +# state_path "#{application_path}/tmp/puma/state" +# stdout_redirect "#{application_path}/log/puma.stdout.log", "#{application_path}/log/puma.stderr.log" +# port ENV.fetch("PORT") { 62158 } +# workers 2 +# preload_app! +# threads 1,1
<%= t("views.right_panel.detail.from_date") %> : <%= @from.utc.getlocal.strftime("%Y-%b-%d") rescue '-' %> - <%= t("views.right_panel.detail.to_date") %> : <%= @to.utc.getlocal.strftime("%Y-%b-%d") rescue '-'%>
<%= t("views.right_panel.detail.giftvoucher_sales") %>(<%= t("views.right_panel.detail.discount") %>)<%= t("views.right_panel.detail.grand_total") %><%= t("views.right_panel.detail.grand_total") %> <%= t("views.right_panel.detail.rnd_adj_sh") %>
<%= count %> <%= sale[:sale_date].strftime("#{sale[:sale_date].day.ordinalize} %b") rescue '-' %><%= number_with_delimiter(sprintf("%.2f",sale[:cash_amount]-sale[:total_change_amount]), delimiter: delimiter) rescue '-'%> <%= number_with_delimiter(sprintf("%.2f",sale[:credit_amount]),delimiter => ',') rescue '-'%><%= number_with_delimiter(sprintf("%.2f",sale[:foc_amount]),delimiter => ',') rescue '-'%><%= number_with_delimiter(sprintf("%.2f",sale[:foc_amount]),delimiter => ',') rescue '-'%><%= number_with_delimiter(sprintf("%.2f",sale[:giftvoucher_amount]),delimiter => ',') rescue '-'%><%= number_with_delimiter(sprintf("%.2f",sale[:giftvoucher_amount]),delimiter => ',') rescue '-'%>(<%= number_with_delimiter(sprintf("%.2f",sale[:total_discount]), delimiter => ',') rescue '-'%>)<%= number_with_delimiter(sprintf("%.2f",sale[:grand_total]),delimiter => ',') rescue '-'%><%= number_with_delimiter(sprintf("%.2f",sale[:grand_total]),delimiter => ',') rescue '-'%> <%= number_with_delimiter(sprintf("%.2f",sale[:rounding_adj].to_f),delimiter => ',') rescue '-'%>
TotalTotal<%= number_with_delimiter(sprintf("%.2f",mpu),delimiter => ',') rescue '-'%><%= number_with_delimiter(sprintf("%.2f",cash),delimiter => ',') rescue '-'%> <%= number_with_delimiter(sprintf("%.2f",credit),delimiter => ',') rescue '-'%><%= number_with_delimiter(sprintf("%.2f",foc), delimiter => ',') rescue '-'%><%= number_with_delimiter(sprintf("%.2f",giftvoucher), delimiter => ',') rescue '-'%><%= number_with_delimiter(sprintf("%.2f",foc), delimiter => ',') rescue '-'%><%= number_with_delimiter(sprintf("%.2f",giftvoucher), delimiter => ',') rescue '-'%>(<%= number_with_delimiter(discount,delimiter => ',') rescue '-'%>) <%= number_with_delimiter(sprintf("%.2f",grand_total),delimiter => ',') rescue '-'%><%= number_with_delimiter(sprintf("%.2f",rounding_adj),delimiter => ',') rescue '-'%><%= number_with_delimiter(sprintf("%.2f",grand_total),delimiter => ',') rescue '-'%><%= number_with_delimiter(sprintf("%.2f",rounding_adj),delimiter => ',') rescue '-'%>
<%= tax.tax_name rescue '-'%>
<%= t("views.right_panel.detail.net_amount") %> <%= number_with_delimiter(sprintf("%.2f",net),delimiter => ',') rescue '-'%>