change customer and sale tax for takeaway

This commit is contained in:
phyusin
2018-05-09 15:40:13 +06:30
parent 0219a4847b
commit 0f1ce09416
15 changed files with 58 additions and 2 deletions

View File

@@ -430,6 +430,32 @@ class Sale < ApplicationRecord
# customer.tax_profiles.each do |cus_tax|
# if cus_tax.to_i == tax.id
if tax.group_type.to_s == order_source.to_s
if customer.customer_type.downcase == 'takeaway'
if tax.name.downcase == 'commercial tax'
sale_tax = SaleTax.new(:sale => sale)
sale_tax.tax_name = tax.name
sale_tax.tax_rate = tax.rate
# substract , to give after discount
total_tax = total_taxable - total_discount
#include or execulive
if tax.inclusive
rate = tax.rate
divided_value = (100 + rate)/rate
sale_tax.tax_payable_amount = total_tax / divided_value
else
sale_tax.tax_payable_amount = total_tax * tax.rate / 100
total_tax_amount = total_tax_amount + sale_tax.tax_payable_amount
end
#new taxable amount is standard rule for step by step
if shop.calc_tax_order
total_taxable = total_taxable + sale_tax.tax_payable_amount
end
sale_tax.inclusive = tax.inclusive
sale_tax.save
end
else
sale_tax = SaleTax.new(:sale => sale)
sale_tax.tax_name = tax.name
sale_tax.tax_rate = tax.rate
@@ -452,6 +478,8 @@ class Sale < ApplicationRecord
sale_tax.inclusive = tax.inclusive
sale_tax.save
end
end
# end
# end
@@ -484,6 +512,33 @@ class Sale < ApplicationRecord
# customer.tax_profiles.each do |cus_tax|
# if cus_tax.to_i == tax.id
if tax.group_type.to_s == order_source.to_s
if customer.customer_type.downcase == 'takeaway'
if tax.name.downcase == 'commercial tax'
sale_tax = SaleTax.new(:sale => self)
sale_tax.tax_name = tax.name
sale_tax.tax_rate = tax.rate
# substract , to give after discount
total_tax = total_taxable - self.total_discount
#include or execulive
if tax.inclusive
rate = tax.rate
divided_value = (100 + rate)/rate
sale_tax.tax_payable_amount = total_tax / divided_value
else
sale_tax.tax_payable_amount = total_tax * tax.rate / 100
total_tax_amount = total_tax_amount + sale_tax.tax_payable_amount
end
#new taxable amount is standard rule for step by step
if shop.calc_tax_order
total_taxable = total_taxable + sale_tax.tax_payable_amount
end
sale_tax.inclusive = tax.inclusive
sale_tax.save
end
else
sale_tax = SaleTax.new(:sale => self)
sale_tax.tax_name = tax.name
sale_tax.tax_rate = tax.rate
@@ -507,6 +562,7 @@ class Sale < ApplicationRecord
sale_tax.inclusive = tax.inclusive
sale_tax.save
end
end
# end
# end