diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index 15e8a986..639a763b 100755 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -103,4 +103,8 @@ i.logout_icon{ /* Second display image */ .second-display{ margin : 12px; +} + +.float_right{ + float : right; } \ No newline at end of file diff --git a/app/controllers/reports/saleitem_controller.rb b/app/controllers/reports/saleitem_controller.rb index c49ba894..aff7f3c2 100755 --- a/app/controllers/reports/saleitem_controller.rb +++ b/app/controllers/reports/saleitem_controller.rb @@ -1,7 +1,8 @@ class Reports::SaleitemController < BaseReportController authorize_resource :class => false def index - + + @account = Account.all from, to = get_date_range_from_params shift_sale_range = '' @@ -23,8 +24,9 @@ class Reports::SaleitemController < BaseReportController end end + account_type = params[:account_type] @type = params[:sale_type] - @sale_data, @other_charges,@product, @discount_data , @cash_data , @card_data , @credit_data , @foc_data , @grand_total , @change_amount = Sale.get_by_shift_items(shift_sale_range,shift, from, to, Sale::SALE_STATUS_COMPLETED,@type) + @sale_data, @other_charges,@product, @discount_data , @cash_data , @card_data , @credit_data , @foc_data , @grand_total , @change_amount = Sale.get_by_shift_items(shift_sale_range,shift, from, to, Sale::SALE_STATUS_COMPLETED,@type,account_type) @sale_taxes = Sale.get_separate_tax(shift_sale_range,shift,from,to,nil) diff --git a/app/models/sale.rb b/app/models/sale.rb index 33c7f1b6..262e487d 100644 --- a/app/models/sale.rb +++ b/app/models/sale.rb @@ -911,9 +911,14 @@ def self.get_other_charges() query = query.group("i.sale_item_id") end -def self.get_by_shift_items(shift_sale_range, shift, from, to, status,type) +def self.get_by_shift_items(shift_sale_range, shift, from, to, status,type,account_type) # date_type_selection = get_sql_function_for_report_type(report_type) - + if account_type.blank? + account_type = '' + else + account_type = " and acc.title = '#{account_type}'" + end + query = self.get_item_query(type) discount_query = 0 @@ -929,7 +934,7 @@ def self.get_by_shift_items(shift_sale_range, shift, from, to, status,type) product = self.get_product_sale() if shift.present? - query = query.where("sales.shift_sale_id IN (?) and sale_status='completed'",shift.to_a) + query = query.where("sales.shift_sale_id IN (?) #{account_type} and sale_status='completed'",shift.to_a) if type.nil? || type == 'all' || type == "other" other_charges = other_charges.where("sales.shift_sale_id IN (?) and sale_status='completed'",shift.to_a) end @@ -952,7 +957,7 @@ def self.get_by_shift_items(shift_sale_range, shift, from, to, status,type) ### => get all sales range in shift_sales elsif shift_sale_range.present? - query = query.where("sales.shift_sale_id IN (?) and sale_status='completed'",shift_sale_range.to_a) + query = query.where("sales.shift_sale_id IN (?) #{account_type} and sale_status='completed'",shift_sale_range.to_a) if type.nil? || type == 'all' || type == "other" other_charges = other_charges.where("sales.shift_sale_id IN (?) and sale_status='completed'",shift_sale_range.to_a) end @@ -975,11 +980,13 @@ def self.get_by_shift_items(shift_sale_range, shift, from, to, status,type) total_grand_total = total_cash_amount.to_f + total_card_amount.to_f + total_credit_amount.to_f else - query = query.where("sales.receipt_date between ? and ? and sale_status='completed'",from,to) + query = query.where("sales.receipt_date between ? and ? #{account_type} and sale_status='completed'",from,to) + if type.nil? || type == 'all' || type == "other" other_charges = other_charges.where("sales.receipt_date between ? and ? and sale_status='completed'",from,to) end product = product.where("sales.receipt_date between ? and ? and sale_status='completed'",from,to) + discount_query = Sale.where("sales.receipt_date between ? and ? and sale_status ='completed'", from,to).sum(:total_discount) change_amount = Sale.where("sales.receipt_date between ? and ? and sale_status ='completed'", from,to).sum(:amount_changed) sale_cash = Sale.select("SUM(case when (sale_payments.payment_method = 'mpu' or sale_payments.payment_method = 'visa' or sale_payments.payment_method = 'master' or sale_payments.payment_method = 'jcb' or sale_payments.payment_method = 'paypar' or sale_payments.payment_method = 'unionpay' or sale_payments.payment_method = 'alipay' or sale_payments.payment_method = 'paymal' or sale_payments.payment_method = 'dinga' or sale_payments.payment_method = 'JunctionPay' or sale_payments.payment_method = 'giftvoucher') then (sale_payments.payment_amount) else 0 end) as card_amount, diff --git a/app/views/reports/saleitem/_shift_sale_report_filter.html.erb b/app/views/reports/saleitem/_shift_sale_report_filter.html.erb index d1a3ec5b..65df7aea 100755 --- a/app/views/reports/saleitem/_shift_sale_report_filter.html.erb +++ b/app/views/reports/saleitem/_shift_sale_report_filter.html.erb @@ -32,6 +32,16 @@ +
+ + + +
@@ -46,9 +56,9 @@
-
+

- +
<% end %> @@ -70,6 +80,8 @@ var item = $('#item').val(); var payment_type = $('#payment_type'); + $("#account_type").val("<%=params[:account_type]%>"); + if(item == 'order'){ $('#cashier').hide(); $('#waiter').show();