Sha256: 75cf811ae08a1cf90e5ae47e8c5cd7f8e80f2bba4a467d761093857090a3b138

Contents?: true

Size: 570 Bytes

Versions: 138

Compression:

Stored size: 570 Bytes

Contents

# frozen_string_literal: true

module Spree
  module Tax
    # Add tax adjustments to all line items and shipments in an order
    class OrderAdjuster
      attr_reader :order

      # @param [Spree::Order] order to be adjusted
      def initialize(order)
        @order = order
      end

      # Creates tax adjustments for all taxable items (shipments and line items)
      # in the given order.
      def adjust!
        taxes = Spree::Config.tax_calculator_class.new(order).calculate
        Spree::OrderTaxation.new(order).apply(taxes)
      end
    end
  end
end

Version data entries

138 entries across 138 versions & 2 rubygems

Version Path
solidus_core-4.5.1 app/models/spree/tax/order_adjuster.rb
solidus_core-4.5.0 app/models/spree/tax/order_adjuster.rb
solidus_core-4.3.6 app/models/spree/tax/order_adjuster.rb
solidus_core-4.2.5 app/models/spree/tax/order_adjuster.rb
solidus_core-4.1.6 app/models/spree/tax/order_adjuster.rb
solidus_core-4.4.2 app/models/spree/tax/order_adjuster.rb
solidus_core-4.4.1 app/models/spree/tax/order_adjuster.rb
solidus_core-4.4.0 app/models/spree/tax/order_adjuster.rb
solidus_core-4.3.4 app/models/spree/tax/order_adjuster.rb
solidus_core-4.2.4 app/models/spree/tax/order_adjuster.rb
solidus_core-4.1.5 app/models/spree/tax/order_adjuster.rb
solidus_core-4.3.3 app/models/spree/tax/order_adjuster.rb
solidus_core-4.3.2 app/models/spree/tax/order_adjuster.rb
solidus_core-4.1.4 app/models/spree/tax/order_adjuster.rb
solidus_core-4.3.1 app/models/spree/tax/order_adjuster.rb
solidus_core-4.3.0 app/models/spree/tax/order_adjuster.rb
solidus_core-4.2.3 app/models/spree/tax/order_adjuster.rb
solidus_core-4.1.3 app/models/spree/tax/order_adjuster.rb
solidus_core-4.0.4 app/models/spree/tax/order_adjuster.rb
solidus_core-3.4.6 app/models/spree/tax/order_adjuster.rb