change query for credit notes payment

This commit is contained in:
phyusin
2018-11-14 17:47:31 +06:30
parent fe9b1ace90
commit 26d44c0a7d
4 changed files with 18 additions and 20 deletions

View File

@@ -16,14 +16,13 @@ class Transactions::CreditNotesController < ApplicationController
order_source = params[:order_source]
if filter.nil? && from.nil? && to.nil? && customer.nil? && order_source.nil?
@credit_notes = Sale.select("sales.*, orders.source")
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)"
@credit_notes = Sale.select("sales.*, #{order_source_query} as source")
.joins("JOIN sale_payments sp on sp.sale_id = sales.sale_id")
.where("(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)")
.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")
@credit_notes = Kaminari.paginate_array(@credit_notes).page(params[:page]).per(20)
else
sale = Sale.search_credit_sales(customer,filter,from,to,order_source)