diff --git a/app/models/sale_item.rb b/app/models/sale_item.rb index 0da5705e..1d9cc57f 100755 --- a/app/models/sale_item.rb +++ b/app/models/sale_item.rb @@ -161,13 +161,13 @@ class SaleItem < ApplicationRecord # return price # end - def self.get_all_sale_items(sale_id) + def self.get_all_sale_items(sale_id) sale_items = SaleItem.select("sale_id,product_code,item_instance_code, product_name,product_alt_name,account_id,status,remark, - (CASE WHEN (qty > 0 AND remark IS NULL) THEN SUM(qty) ELSE qty END) as qty, + (CASE WHEN (qty > 0 AND remark IS NULL) OR (status='promotion' AND (remark = 'promotion nett price' OR remark= 'promotion discount')) THEN SUM(abs(qty)) ELSE qty END) as qty, unit_price, taxable_price, - (CASE WHEN (price > 0 AND remark IS NULL) THEN SUM(price) ELSE price END) as price, + (CASE WHEN (price > 0 AND remark IS NULL) OR (status='promotion' AND (remark = 'promotion nett price' OR remark= 'promotion discount')) THEN SUM(abs(price)) ELSE price END) as price, is_taxable") .where("sale_id = ?",sale_id) .order("product_name asc") diff --git a/app/pdf/receipt_bill_pdf.rb b/app/pdf/receipt_bill_pdf.rb index 92ce858d..135a6469 100755 --- a/app/pdf/receipt_bill_pdf.rb +++ b/app/pdf/receipt_bill_pdf.rb @@ -202,16 +202,27 @@ class ReceiptBillPdf < Prawn::Document sale_items.each do |item| # check for item not to show show_price = Lookup.find_by_lookup_type("show_price") - - sub_total += item.price #(item.qty*item.unit_price) - comment for room charges + if item.status != 'Discount' && item.qty > 0 total_qty += item.qty - end - qty = item.qty - total_price = item.price #item.qty*item.unit_price - comment for room charges - price = item.unit_price + end + product_name = item.product_name + if item.status = 'promotion' && (item.remark =='promotion nett price' || item.remark == 'promotion discount') + sub_total += -item.price #(item.qty*item.unit_price) - comment for room charges + qty = -item.qty + total_price = -item.price #item.qty*item.unit_price - comment for room charges + price = -item.unit_price + else + sub_total += item.price #(item.qty*item.unit_price) - comment for room charges + qty = item.qty + total_price = item.price #item.qty*item.unit_price - comment for room charges + price = item.unit_price + + end + + if !show_price.nil? && show_price.value.to_i>0 item_row(item,precision,delimiter,product_name,price,qty ,total_price) else