# frozen_string_literal: true

module Api
  class AdjustmentSerializer < ActiveModel::Serializer
    attributes :id, :amount, :label, :eligible,
               :adjustable_type, :adjustable_id,
               :originator_type, :originator_id
  end
end

# frozen_string_literal: true

module Api
  class AdjustmentSerializer < ActiveModel::Serializer
    attributes :id, :amount, :label, :eligible,
               :adjustable_type, :adjustable_id,
               :originator_type, :originator_id,
               :tax_category_id

    def tax_category_id
      if object.originator_type == "Spree::TaxRate"
        object.originator.tax_category_id
      else
        object.tax_category_id
      end
    end
  end
end

Add the tax_category_id for each adjustement
Add the tax_category_id for each adjustement

- This tax_category_id could be null
 - Special case if the originator is a Spree::TaxRate: then use the tax_category_id of the originator

Co-Authored-By: Matt-Yorkley <52dd53e39aabc3ad9893bf4bdc49ac9095b2e246@users.noreply.github.com>
