change customer and sale tax for takeaway
This commit is contained in:
2
app/controllers/crm/customers_controller.rb
Executable file → Normal file
2
app/controllers/crm/customers_controller.rb
Executable file → Normal file
@@ -39,7 +39,7 @@ class Crm::CustomersController < BaseCrmController
|
|||||||
|
|
||||||
@membership_types = Lookup.collection_of("member_group_type")
|
@membership_types = Lookup.collection_of("member_group_type")
|
||||||
|
|
||||||
@taxes = TaxProfile.all.order("order_by asc")
|
@taxes = TaxProfile.where(:group_type => 'cashier')
|
||||||
|
|
||||||
@filter = filter
|
@filter = filter
|
||||||
|
|
||||||
|
|||||||
2
app/controllers/origami/customers_controller.rb
Executable file → Normal file
2
app/controllers/origami/customers_controller.rb
Executable file → Normal file
@@ -86,7 +86,7 @@ class Origami::CustomersController < BaseOrigamiController
|
|||||||
@crm_customer = Customer.new
|
@crm_customer = Customer.new
|
||||||
@count_customer = Customer.count_customer
|
@count_customer = Customer.count_customer
|
||||||
|
|
||||||
@taxes = TaxProfile.all.order("order_by asc")
|
@taxes = TaxProfile.where(:group_type => 'cashier')
|
||||||
# if flash["errors"]
|
# if flash["errors"]
|
||||||
# @crm_customer.valid?
|
# @crm_customer.valid?
|
||||||
# end
|
# end
|
||||||
|
|||||||
@@ -430,6 +430,8 @@ class Sale < ApplicationRecord
|
|||||||
# customer.tax_profiles.each do |cus_tax|
|
# customer.tax_profiles.each do |cus_tax|
|
||||||
# if cus_tax.to_i == tax.id
|
# if cus_tax.to_i == tax.id
|
||||||
if tax.group_type.to_s == order_source.to_s
|
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 = SaleTax.new(:sale => sale)
|
||||||
sale_tax.tax_name = tax.name
|
sale_tax.tax_name = tax.name
|
||||||
sale_tax.tax_rate = tax.rate
|
sale_tax.tax_rate = tax.rate
|
||||||
@@ -453,6 +455,32 @@ class Sale < ApplicationRecord
|
|||||||
sale_tax.inclusive = tax.inclusive
|
sale_tax.inclusive = tax.inclusive
|
||||||
sale_tax.save
|
sale_tax.save
|
||||||
end
|
end
|
||||||
|
else
|
||||||
|
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
|
||||||
|
|
||||||
|
end
|
||||||
# end
|
# end
|
||||||
# end
|
# end
|
||||||
end
|
end
|
||||||
@@ -484,6 +512,8 @@ class Sale < ApplicationRecord
|
|||||||
# customer.tax_profiles.each do |cus_tax|
|
# customer.tax_profiles.each do |cus_tax|
|
||||||
# if cus_tax.to_i == tax.id
|
# if cus_tax.to_i == tax.id
|
||||||
if tax.group_type.to_s == order_source.to_s
|
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 = SaleTax.new(:sale => self)
|
||||||
sale_tax.tax_name = tax.name
|
sale_tax.tax_name = tax.name
|
||||||
sale_tax.tax_rate = tax.rate
|
sale_tax.tax_rate = tax.rate
|
||||||
@@ -508,6 +538,32 @@ class Sale < ApplicationRecord
|
|||||||
sale_tax.inclusive = tax.inclusive
|
sale_tax.inclusive = tax.inclusive
|
||||||
sale_tax.save
|
sale_tax.save
|
||||||
end
|
end
|
||||||
|
else
|
||||||
|
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
|
||||||
|
end
|
||||||
# end
|
# end
|
||||||
# end
|
# end
|
||||||
end
|
end
|
||||||
|
|||||||
0
app/views/crm/customers/_card_read_form.html.erb
Executable file → Normal file
0
app/views/crm/customers/_card_read_form.html.erb
Executable file → Normal file
0
app/views/crm/customers/_crm_customer.json.jbuilder
Executable file → Normal file
0
app/views/crm/customers/_crm_customer.json.jbuilder
Executable file → Normal file
0
app/views/crm/customers/_form.html.erb
Executable file → Normal file
0
app/views/crm/customers/_form.html.erb
Executable file → Normal file
0
app/views/crm/customers/_new_form.html.erb
Executable file → Normal file
0
app/views/crm/customers/_new_form.html.erb
Executable file → Normal file
0
app/views/crm/customers/edit.html.erb
Executable file → Normal file
0
app/views/crm/customers/edit.html.erb
Executable file → Normal file
0
app/views/crm/customers/edit.json.jbuilder
Executable file → Normal file
0
app/views/crm/customers/edit.json.jbuilder
Executable file → Normal file
0
app/views/crm/customers/index.html.erb
Executable file → Normal file
0
app/views/crm/customers/index.html.erb
Executable file → Normal file
0
app/views/crm/customers/index.json.jbuilder
Executable file → Normal file
0
app/views/crm/customers/index.json.jbuilder
Executable file → Normal file
0
app/views/crm/customers/new.html.erb
Executable file → Normal file
0
app/views/crm/customers/new.html.erb
Executable file → Normal file
0
app/views/crm/customers/show.html.erb
Executable file → Normal file
0
app/views/crm/customers/show.html.erb
Executable file → Normal file
0
app/views/crm/customers/show.json.jbuilder
Executable file → Normal file
0
app/views/crm/customers/show.json.jbuilder
Executable file → Normal file
0
app/views/origami/customers/index.html.erb
Executable file → Normal file
0
app/views/origami/customers/index.html.erb
Executable file → Normal file
Reference in New Issue
Block a user