change query for credit notes payment
This commit is contained in:
@@ -755,26 +755,26 @@ class Sale < ApplicationRecord
|
||||
else
|
||||
custo = "and sales.customer_id = '#{customer}'"
|
||||
end
|
||||
|
||||
order_source_query = "(select orders.source FROM orders JOIN sale_orders so ON so.order_id=orders.order_id WHERE so.sale_id=sales.sale_id GROUP BY so.sale_id)"
|
||||
if order_source.blank?
|
||||
source = ""
|
||||
else
|
||||
if order_source == "cashier"
|
||||
source = "and orders.source='cashier' or orders.source='emenu'"
|
||||
source = "and #{order_source_query}='cashier' or #{order_source_query}='emenu'"
|
||||
else
|
||||
source = "and orders.source='#{order_source}'"
|
||||
source = "and #{order_source_query}='#{order_source}'"
|
||||
end
|
||||
end
|
||||
|
||||
if from.present? && to.present?
|
||||
sale = Sale.select("sales.*,orders.source").joins("JOIN sale_payments sp on sp.sale_id = sales.sale_id")
|
||||
sale = Sale.select("sales.*,#{order_source_query} as source").joins("JOIN sale_payments sp on sp.sale_id = sales.sale_id")
|
||||
.joins(" JOIN bookings ON bookings.sale_id=sales.sale_id")
|
||||
.joins(" JOIN booking_orders ON booking_orders.booking_id=bookings.booking_id")
|
||||
.joins(" JOIN orders ON orders.order_id=booking_orders.order_id")
|
||||
.where("DATE_FORMAT(receipt_date,'%d-%m-%Y') >= ?" + " AND DATE_FORMAT(receipt_date,'%d-%m-%Y') <= ? and (CASE WHEN (sales.grand_total + sales.amount_changed)=(select SUM(sale_payments.payment_amount)
|
||||
FROM sale_payments WHERE sale_payments.sale_id=sales.sale_id AND sale_payments.payment_method!='creditnote') THEN NULL ELSE payment_method='creditnote' END) #{keyword} #{custo} #{source}", from,to)
|
||||
else
|
||||
sale = Sale.select("sales.*,orders.source").joins(" JOIN sale_payments sp on sp.sale_id = sales.sale_id")
|
||||
sale = Sale.select("sales.*,#{order_source_query} as source").joins(" JOIN sale_payments sp on sp.sale_id = sales.sale_id")
|
||||
.joins(" JOIN bookings ON bookings.sale_id=sales.sale_id")
|
||||
.joins(" JOIN booking_orders ON booking_orders.booking_id=bookings.booking_id")
|
||||
.joins(" JOIN orders ON orders.order_id=booking_orders.order_id")
|
||||
@@ -1247,19 +1247,21 @@ 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
|
||||
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 == "cashier"
|
||||
source = "and orders.source='cashier' or orders.source='emenu'"
|
||||
source = "and #{order_source_query}='cashier' or #{order_source_query}='emenu'"
|
||||
else
|
||||
source = "and orders.source='#{order_source}'"
|
||||
source = "and #{order_source_query}='#{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,
|
||||
orders.source as order_source,
|
||||
#{order_source_query} as order_source,
|
||||
s.cashier_name as cashier_name,
|
||||
(#{sub_query}) as credit_payment_receipt_date,
|
||||
(#{sub_query1}) as credit_payment,
|
||||
@@ -1267,9 +1269,6 @@ def self.get_by_shift_sale_credit_payment(shift_sale_range,shift,from,to,filter,
|
||||
(#{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")
|
||||
.joins("INNER JOIN bookings ON bookings.sale_id=s.sale_id")
|
||||
.joins("INNER JOIN booking_orders ON booking_orders.booking_id=bookings.booking_id")
|
||||
.joins("INNER JOIN orders ON orders.order_id=booking_orders.order_id")
|
||||
|
||||
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)
|
||||
|
||||
Reference in New Issue
Block a user