diff --git a/app/models/sale.rb b/app/models/sale.rb index 7aa18282..2138405c 100755 --- a/app/models/sale.rb +++ b/app/models/sale.rb @@ -852,7 +852,7 @@ def self.get_menu_item_query(order_by) acc.title as account_name, mii.item_instance_code as item_code, " + "(CASE WHEN si.qty > 0 THEN SUM(si.qty) ELSE 0 END) as total_item," + - "(CASE WHEN si.unit_price > 0 THEN si.unit_price ELSE mii.price END) as unit_price," + + "(CASE WHEN si.unit_price != mii.price THEN si.unit_price ELSE mii.price END) as unit_price," + "(CASE WHEN (si.qty * si.unit_price) > 0 THEN (si.qty * si.unit_price) ELSE 0 END) as grand_total," + "mii.price as unit_price, menu_items.name as product_name, mc.name as" + @@ -862,8 +862,8 @@ def self.get_menu_item_query(order_by) " LEFT JOIN accounts acc ON acc.id = menu_items.account_id" + " LEFT JOIN sale_items si ON si.item_instance_code = mii.item_instance_code" + " LEFT JOIN sales s ON s.sale_id = si.sale_id") - .group("mc.id, menu_items.name, si.qty, (CASE WHEN si.unit_price > 0 THEN si.unit_price ELSE mii.price END)") - .order("si.qty #{order_by}, menu_items.menu_category_id #{order_by}") + .group("mc.id, menu_items.name, si.qty, (CASE WHEN si.unit_price != mii.price THEN si.unit_price ELSE mii.price END)") + .order("menu_items.menu_category_id #{order_by}, si.qty #{order_by}") end #product sale report query @@ -1080,7 +1080,7 @@ end " i.price as unit_price,mi.name as product_name") .joins("JOIN sale_items i ON i.sale_id = sales.sale_id JOIN menu_items mi ON i.product_code = mi.item_code") .where("(i.qty > 0 and i.price > 0) and receipt_date between '#{from}' and '#{to}'"+ - "and payment_status='paid' and sale_status= 'completed'") + "and sale_status= 'completed' or i.remark!='void'") .group('mi.name') .order("SUM(i.qty) DESC").limit(20) else @@ -1088,7 +1088,7 @@ end " i.price as unit_price,mi.name as product_name") .joins("JOIN sale_items i ON i.sale_id = sales.sale_id JOIN menu_items mi ON i.product_code = mi.item_code") .where("(i.qty > 0 and i.price > 0) and DATE_FORMAT(receipt_date,'%Y-%m-%d') = '#{today}'"+ - "and payment_status='paid' and sale_status= 'completed'") + "and sale_status= 'completed' or i.remark!='void'") .group('mi.name') .order("SUM(i.qty) DESC").limit(20) end @@ -1100,7 +1100,7 @@ end " i.price as unit_price,mi.name as product_name") .joins("JOIN sale_items i ON i.sale_id = sales.sale_id JOIN menu_items mi ON i.product_code = mi.item_code") .where("(i.qty > 0 and i.price > 0) and receipt_date between '#{from}' and '#{to}'"+ - "and payment_status='paid' and sale_status= 'completed'") + "and sale_status= 'completed'") .group('mi.name') .order("SUM(i.qty) ASC").limit(20) else @@ -1108,7 +1108,7 @@ end " i.price as unit_price,mi.name as product_name") .joins("JOIN sale_items i ON i.sale_id = sales.sale_id JOIN menu_items mi ON i.product_code = mi.item_code") .where("(i.qty > 0 and i.price > 0) and DATE_FORMAT(receipt_date,'%Y-%m-%d') = '#{today}'"+ - "and payment_status='paid' and sale_status= 'completed'") + "and sale_status= 'completed'") .group('mi.name') .order("SUM(i.qty) ASC").limit(20) end