change credit payment query for dashboard and daily sales
This commit is contained in:
@@ -126,8 +126,11 @@ class HomeController < ApplicationController
|
|||||||
if !employee_sales.nil?
|
if !employee_sales.nil?
|
||||||
employee_sales.each do |emp|
|
employee_sales.each do |emp|
|
||||||
emp_data = []
|
emp_data = []
|
||||||
emp_data.push([emp.e_name, emp.payment_amount])
|
if emp.payment_amount > 0
|
||||||
@employee_sales.push({'name' => emp.payment_method, 'data' => emp_data})
|
emp_data.push([emp.e_name, emp.payment_amount])
|
||||||
|
|
||||||
|
@employee_sales.push({'name' => emp.payment_method, 'data' => emp_data})
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@inventories = StockJournal.inventory_balances(today,@from,@to,@from_time,@to_time).sum(:balance)
|
@inventories = StockJournal.inventory_balances(today,@from,@to,@from_time,@to_time).sum(:balance)
|
||||||
|
|||||||
@@ -725,12 +725,13 @@ class Sale < ApplicationRecord
|
|||||||
|
|
||||||
|
|
||||||
def self.daily_sales_list(from,to)
|
def self.daily_sales_list(from,to)
|
||||||
sub_query = "SELECT (CASE WHEN SUM(sale_payments.payment_amount) > 0 THEN SUM(sale_payments.payment_amount) ELSE 0 END)
|
sub_query = "SELECT (CASE WHEN SUM(sale_payments.payment_amount) > 0 THEN
|
||||||
FROM sale_payments
|
(SUM(sale_payments.payment_amount) + SUM(sale_payments.outstanding_amount)) ELSE 0 END)
|
||||||
INNER JOIN sale_audits sa
|
FROM sale_payments
|
||||||
ON SUBSTRING_INDEX(sa.remark,'||',1)=sale_payments.sale_payment_id
|
INNER JOIN sale_audits sa ON SUBSTRING_INDEX(sa.remark,'||',1)=sale_payments.sale_payment_id
|
||||||
INNER JOIN sales ON sa.sale_id = sales.sale_id
|
INNER JOIN sales s ON s.sale_id=sa.sale_id
|
||||||
WHERE sales.sale_status='completed' AND sales.receipt_date between '#{from}' and '#{to}'"
|
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,
|
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='mpu') then sale_payments.payment_amount else 0 end) as mpu_amount,
|
SUM(case when (sale_payments.payment_method='mpu') then sale_payments.payment_amount else 0 end) as mpu_amount,
|
||||||
@@ -747,7 +748,7 @@ def self.daily_sales_list(from,to)
|
|||||||
(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,
|
(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='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")
|
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 sale_payments.sale_id = sales.sale_id")
|
.joins(" join sale_payments on sale_payments.sale_id = sales.sale_id")
|
||||||
.where("sale_status = ? AND sales.receipt_date between ? and ? ", 'completed', from, to)
|
.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')")
|
.group("DATE_FORMAT((CONVERT_TZ(sales.receipt_date,'+00:00','+06:30')),'%Y-%m-%d')")
|
||||||
|
|
||||||
@@ -1113,7 +1114,8 @@ def self.get_by_shift_sale_credit_payment(shift_sale_range,shift,from,to,filter)
|
|||||||
INNER JOIN sale_audits ON SUBSTRING_INDEX(sale_audits.remark,'||',1)=sale_payments.sale_payment_id
|
INNER JOIN sale_audits ON SUBSTRING_INDEX(sale_audits.remark,'||',1)=sale_payments.sale_payment_id
|
||||||
WHERE sale_audits.sale_id = s.sale_id"
|
WHERE sale_audits.sale_id = s.sale_id"
|
||||||
|
|
||||||
sub_query1 = "SELECT (CASE WHEN SUM(payment_amount) > 0 THEN SUM(payment_amount) ELSE 0 END)
|
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`
|
FROM `sale_payments`
|
||||||
INNER JOIN sale_audits ON SUBSTRING_INDEX(sale_audits.remark,'||',1)=sale_payments.sale_payment_id
|
INNER JOIN sale_audits ON SUBSTRING_INDEX(sale_audits.remark,'||',1)=sale_payments.sale_payment_id
|
||||||
WHERE sale_audits.sale_id = s.sale_id"
|
WHERE sale_audits.sale_id = s.sale_id"
|
||||||
@@ -1498,7 +1500,7 @@ end
|
|||||||
else
|
else
|
||||||
query = query.where('sale_status = "completed" and DATE_FORMAT(CONVERT_TZ(receipt_date,"+00:00","+06:30"),"%Y-%m-%d") between ? and ?',from,to)
|
query = query.where('sale_status = "completed" and DATE_FORMAT(CONVERT_TZ(receipt_date,"+00:00","+06:30"),"%Y-%m-%d") between ? and ?',from,to)
|
||||||
end
|
end
|
||||||
query = query.group("date_format(CONVERT_TZ(receipt_date,'+00:00', 'SYSTEM'), '%I %p')")
|
query = query.group("date_format(CONVERT_TZ(receipt_date,'+00:00', '+06:30'), '%I %p')")
|
||||||
.order('receipt_date')
|
.order('receipt_date')
|
||||||
else
|
else
|
||||||
if current_user.role == 'administrator' || current_user.role == 'manager' || current_user.role == 'account' || current_user.role == 'supervisor'
|
if current_user.role == 'administrator' || current_user.role == 'manager' || current_user.role == 'account' || current_user.role == 'supervisor'
|
||||||
@@ -1508,7 +1510,7 @@ end
|
|||||||
else
|
else
|
||||||
query = query.where('sale_status = "completed" and DATE_FORMAT(CONVERT_TZ(receipt_date,"+00:00","+06:30"),"%Y-%m-%d") between ? and ?',from,to)
|
query = query.where('sale_status = "completed" and DATE_FORMAT(CONVERT_TZ(receipt_date,"+00:00","+06:30"),"%Y-%m-%d") between ? and ?',from,to)
|
||||||
end
|
end
|
||||||
query = query.group("date_format(CONVERT_TZ(receipt_date,'+00:00', 'SYSTEM'), '%I %p')")
|
query = query.group("date_format(CONVERT_TZ(receipt_date,'+00:00', '+06:30'), '%I %p')")
|
||||||
.order('receipt_date')
|
.order('receipt_date')
|
||||||
else
|
else
|
||||||
shift = ShiftSale.current_open_shift(current_user.id)
|
shift = ShiftSale.current_open_shift(current_user.id)
|
||||||
@@ -1551,7 +1553,7 @@ end
|
|||||||
|
|
||||||
def self.employee_sales(today,current_user,from,to,from_time,to_time)
|
def self.employee_sales(today,current_user,from,to,from_time,to_time)
|
||||||
#sub query for credit payment
|
#sub query for credit payment
|
||||||
sub_query = "SELECT (CASE WHEN SUM(sale_payments.payment_amount) > 0 THEN SUM(sale_payments.payment_amount) ELSE 0 END) AS payment_amount
|
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) AS payment_amount
|
||||||
FROM sale_payments
|
FROM sale_payments
|
||||||
INNER JOIN sale_audits ON SUBSTRING_INDEX(sale_audits.remark,'||',1)=sale_payments.sale_payment_id
|
INNER JOIN sale_audits ON SUBSTRING_INDEX(sale_audits.remark,'||',1)=sale_payments.sale_payment_id
|
||||||
INNER JOIN sales ON sale_audits.sale_id = sales.sale_id
|
INNER JOIN sales ON sale_audits.sale_id = sales.sale_id
|
||||||
@@ -1741,7 +1743,7 @@ end
|
|||||||
end
|
end
|
||||||
|
|
||||||
def self.credit_payment(today,current_user=nil,from=nil,to=nil,from_time=nil,to_time=nil)
|
def self.credit_payment(today,current_user=nil,from=nil,to=nil,from_time=nil,to_time=nil)
|
||||||
sub_query = SalePayment.select("(CASE WHEN SUM(sale_payments.payment_amount) > 0 THEN SUM(sale_payments.payment_amount) ELSE 0 END) as total_credit_payment")
|
sub_query = SalePayment.select("(CASE WHEN SUM(sale_payments.payment_amount) > 0 THEN SUM(sale_payments.payment_amount) + SUM(sale_payments.outstanding_amount) ELSE 0 END) as total_credit_payment")
|
||||||
.joins(" JOIN sale_audits ON SUBSTRING_INDEX(sale_audits.remark,'||',1)=sale_payments.sale_payment_id")
|
.joins(" JOIN sale_audits ON SUBSTRING_INDEX(sale_audits.remark,'||',1)=sale_payments.sale_payment_id")
|
||||||
.joins(" JOIN sales ON sale_audits.sale_id = sales.sale_id")
|
.joins(" JOIN sales ON sale_audits.sale_id = sales.sale_id")
|
||||||
.where("sales.sale_status='completed'")
|
.where("sales.sale_status='completed'")
|
||||||
@@ -1969,7 +1971,7 @@ end
|
|||||||
time_query = " and DATE_FORMAT(CONVERT_TZ(sales.receipt_date, '+00:00', '+06:30'),'%H:%i') between '#{from_time}' and '#{to_time}'"
|
time_query = " and DATE_FORMAT(CONVERT_TZ(sales.receipt_date, '+00:00', '+06:30'),'%H:%i') between '#{from_time}' and '#{to_time}'"
|
||||||
end
|
end
|
||||||
|
|
||||||
sub_query = "SELECT (CASE WHEN SUM(sale_payments.payment_amount) > 0 THEN SUM(sale_payments.payment_amount) ELSE 0 END)
|
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
|
FROM sale_payments
|
||||||
INNER JOIN sale_audits ON SUBSTRING_INDEX(sale_audits.remark,'||',1)=sale_payments.sale_payment_id
|
INNER JOIN sale_audits ON SUBSTRING_INDEX(sale_audits.remark,'||',1)=sale_payments.sale_payment_id
|
||||||
INNER JOIN sales ON sale_audits.sale_id = sales.sale_id
|
INNER JOIN sales ON sale_audits.sale_id = sales.sale_id
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ class SalePayment < ApplicationRecord
|
|||||||
invoice_sale_payments = invoice.sale_payments
|
invoice_sale_payments = invoice.sale_payments
|
||||||
amount_due = invoice.grand_total
|
amount_due = invoice.grand_total
|
||||||
end
|
end
|
||||||
|
|
||||||
invoice_sale_payments.each do |payment|
|
invoice_sale_payments.each do |payment|
|
||||||
if (payment.payment_status == "paid" )
|
if (payment.payment_status == "paid" )
|
||||||
amount_due = amount_due - payment.payment_amount
|
amount_due = amount_due - payment.payment_amount
|
||||||
|
|||||||
@@ -116,13 +116,15 @@
|
|||||||
discount_amount = order_reservation.discount_amount
|
discount_amount = order_reservation.discount_amount
|
||||||
delivery_fee = order_reservation.delivery_fee ? order_reservation.delivery_fee : 0.0
|
delivery_fee = order_reservation.delivery_fee ? order_reservation.delivery_fee : 0.0
|
||||||
convenience_charge = order_reservation.convenience_charge
|
convenience_charge = order_reservation.convenience_charge
|
||||||
JSON.parse(order_reservation.taxes).each do |tax_data|
|
if !JSON.parse(order_reservation.taxes).empty?
|
||||||
if tax_data[0] == "delivery_tax"
|
JSON.parse(order_reservation.taxes).each do |tax_data|
|
||||||
delivery_tax = tax_data[1]
|
if tax_data[0] == "delivery_tax"
|
||||||
elsif tax_data[0] == "convenience_tax"
|
delivery_tax = tax_data[1]
|
||||||
convenience_tax = tax_data[1]
|
elsif tax_data[0] == "convenience_tax"
|
||||||
elsif tax_data[0] == "commercial_tax"
|
convenience_tax = tax_data[1]
|
||||||
commercial_tax = tax_data[1]
|
elsif tax_data[0] == "commercial_tax"
|
||||||
|
commercial_tax = tax_data[1]
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
%>
|
%>
|
||||||
|
|||||||
@@ -104,13 +104,15 @@
|
|||||||
discount_amount = @order_reservation.discount_amount
|
discount_amount = @order_reservation.discount_amount
|
||||||
delivery_fee = @order_reservation.delivery_fee ? @order_reservation.delivery_fee : 0.0
|
delivery_fee = @order_reservation.delivery_fee ? @order_reservation.delivery_fee : 0.0
|
||||||
convenience_charge = @order_reservation.convenience_charge
|
convenience_charge = @order_reservation.convenience_charge
|
||||||
JSON.parse(@order_reservation.taxes).each do |tax_data|
|
if !JSON.parse(order_reservation.taxes).empty?
|
||||||
if tax_data[0] == "delivery_tax"
|
JSON.parse(@order_reservation.taxes).each do |tax_data|
|
||||||
delivery_tax = tax_data[1]
|
if tax_data[0] == "delivery_tax"
|
||||||
elsif tax_data[0] == "convenience_tax"
|
delivery_tax = tax_data[1]
|
||||||
convenience_tax = tax_data[1]
|
elsif tax_data[0] == "convenience_tax"
|
||||||
elsif tax_data[0] == "commercial_tax"
|
convenience_tax = tax_data[1]
|
||||||
commercial_tax = tax_data[1]
|
elsif tax_data[0] == "commercial_tax"
|
||||||
|
commercial_tax = tax_data[1]
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
total_discount_amount += discount_amount.to_f
|
total_discount_amount += discount_amount.to_f
|
||||||
|
|||||||
Reference in New Issue
Block a user