Class: SpreeAvataxOfficial::Calculator::AvataxTransactionCalculator

Inherits:
Spree::Calculator::DefaultTax
  • Object
show all
Defined in:
app/models/spree_avatax_official/calculator/avatax_transaction_calculator.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.descriptionObject



4
5
6
# File 'app/models/spree_avatax_official/calculator/avatax_transaction_calculator.rb', line 4

def self.description
  'AvaTax transaction calculator'
end

Instance Method Details

#compute_line_item(line_item) ⇒ Object



12
13
14
# File 'app/models/spree_avatax_official/calculator/avatax_transaction_calculator.rb', line 12

def compute_line_item(line_item)
  line_item.adjustments.tax.sum(:amount)
end

#compute_order(_order) ⇒ Object



8
9
10
# File 'app/models/spree_avatax_official/calculator/avatax_transaction_calculator.rb', line 8

def compute_order(_order)
  raise 'Tax adjustments should be calculated on line item or shipment level'
end

#compute_shipment(shipment) ⇒ Object



16
17
18
# File 'app/models/spree_avatax_official/calculator/avatax_transaction_calculator.rb', line 16

def compute_shipment(shipment)
  shipment.adjustments.tax.sum(:amount)
end

#compute_shipping_rate(_shipping_rate) ⇒ Object



20
21
22
# File 'app/models/spree_avatax_official/calculator/avatax_transaction_calculator.rb', line 20

def compute_shipping_rate(_shipping_rate)
  0
end