From 2a09945d36d7a19867b39a85dc3e3ec58afed4d6 Mon Sep 17 00:00:00 2001 From: phyusin Date: Sun, 28 Jan 2018 16:29:59 +0630 Subject: [PATCH] check add to existing invoice --- .../origami/payments_controller.rb | 20 ++++++++++++++++++- app/models/sale.rb | 9 ++++----- 2 files changed, 23 insertions(+), 6 deletions(-) diff --git a/app/controllers/origami/payments_controller.rb b/app/controllers/origami/payments_controller.rb index 1023bf68..6fa61bc7 100755 --- a/app/controllers/origami/payments_controller.rb +++ b/app/controllers/origami/payments_controller.rb @@ -164,7 +164,25 @@ class Origami::PaymentsController < BaseOrigamiController @table_no = '' @shop = Shop::ShopDetail - @rounding_adj = @sale_data.rounding_adjustment + + saleObj = Sale.find(sale_id) + # rounding adjustment + if @shop.is_rounding_adj + a = saleObj.grand_total % 25 # Modulus + b = saleObj.grand_total / 25 # Division + #not calculate rounding if modulus is 0 and division is even + #calculate rounding if modulus is zero or not zero and division are not even + if (a != 0.0 && b%2 != 0.0) || (a==0.0 && b%2 !=0) + new_total = Sale.get_rounding_adjustment(saleObj.grand_total) + @rounding_adj = new_total-saleObj.grand_total + else + @rounding_adj = @sale_data.rounding_adjustment + end + else + @rounding_adj = @sale_data.rounding_adjustment + end + #end rounding adjustment + #get customer amount @customer = Customer.find(@sale_data.customer_id) diff --git a/app/models/sale.rb b/app/models/sale.rb index e41fb458..f6aed95e 100755 --- a/app/models/sale.rb +++ b/app/models/sale.rb @@ -470,17 +470,16 @@ class Sale < ApplicationRecord end def adjust_rounding - saleObj = Sale.find(self.sale_id) shop_details = Shop::ShopDetail # rounding adjustment if shop_details.is_rounding_adj - a = saleObj.grand_total % 25 # Modulus - b = saleObj.grand_total / 25 # Division + a = self.grand_total % 25 # Modulus + b = self.grand_total / 25 # Division #not calculate rounding if modulus is 0 and division is even #calculate rounding if modulus is zero or not zero and division are not even if (a != 0.0 && b%2 != 0.0) || (a==0.0 && b%2 !=0) - new_total = Sale.get_rounding_adjustment(saleObj.grand_total) - self.rounding_adjustment = new_total-saleObj.grand_total + new_total = Sale.get_rounding_adjustment(self.grand_total) + self.rounding_adjustment = new_total - self.grand_total else self.rounding_adjustment = 0.00 end