diff options
author | Jared Norman <jared@super.gd> | 2019-04-05 16:32:11 +1300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-04-05 16:32:11 +1300 |
commit | 4ec7b4cc9d6107dca122fb691b4eea576f96eff8 (patch) | |
tree | d093cbca92a3fb6d87265adf77f08130df1a86a1 /lib | |
parent | 0cb3cb6ef633898d609c0cc43c5e48b2d0afd280 (diff) | |
parent | 7a53a1f4923215b7784f31e3d21435e091832f8b (diff) |
Merge pull request #9 from SuperGoodSoft/feature/configurable-shipping
Make shipping amount calculator configurable
Diffstat (limited to 'lib')
-rw-r--r-- | lib/super_good/solidus_taxjar.rb | 2 | ||||
-rw-r--r-- | lib/super_good/solidus_taxjar/api_params.rb | 6 |
2 files changed, 7 insertions, 1 deletions
diff --git a/lib/super_good/solidus_taxjar.rb b/lib/super_good/solidus_taxjar.rb index 4e7d9c5..6d6c47c 100644 --- a/lib/super_good/solidus_taxjar.rb +++ b/lib/super_good/solidus_taxjar.rb @@ -16,6 +16,7 @@ module SuperGood attr_accessor :discount_calculator attr_accessor :exception_handler attr_accessor :line_item_tax_label_maker + attr_accessor :shipping_calculator attr_accessor :shipping_tax_label_maker attr_accessor :taxable_address_check attr_accessor :test_mode @@ -28,6 +29,7 @@ module SuperGood Rails.logger.error "An error occurred while fetching TaxJar tax rates - #{e}: #{e.message}" } self.line_item_tax_label_maker = ->(taxjar_line_item, spree_line_item) { "Sales Tax" } + self.shipping_calculator = ->(order) { order.shipment_total } self.shipping_tax_label_maker = ->(shipment, shipping_tax) { "Sales Tax" } self.taxable_address_check = ->(address) { true } self.test_mode = false diff --git a/lib/super_good/solidus_taxjar/api_params.rb b/lib/super_good/solidus_taxjar/api_params.rb index cb554a8..8596856 100644 --- a/lib/super_good/solidus_taxjar/api_params.rb +++ b/lib/super_good/solidus_taxjar/api_params.rb @@ -29,7 +29,7 @@ module SuperGood transaction_id: order.number, transaction_date: order.completed_at.to_formatted_s(:iso8601), amount: order.total - order.additional_tax_total, - shipping: order.shipment_total, + shipping: shipping(order), sales_tax: order.additional_tax_total ) end @@ -94,6 +94,10 @@ module SuperGood def discount(line_item) ::SuperGood::SolidusTaxJar.discount_calculator.new(line_item).discount end + + def shipping(order) + SuperGood::SolidusTaxJar.shipping_calculator.(order) + end end end end |