Sha256: 77ed4569b361f09e67053d10e44740ec7b66f041e8e42359aed4f5bb6a09793c

Contents?: true

Size: 674 Bytes

Versions: 1

Compression:

Stored size: 674 Bytes

Contents

module Workarea
  decorate OrderMetrics, with: :flow do
    def discount_adjustments
      return super unless order.flow?

      PriceAdjustmentSet.new(all_price_adjustments.discounts.flat_map do |adjustment|
        next adjustment unless adjustment.data['original_discounts'].present?

        adjustment.data['original_discounts'].map do |adjustment_hash|
          amount = Money.demongoize(adjustment_hash["amount"])

          PriceAdjustment.new(
            amount: amount,
            quantity: adjustment_hash["quantity"],
            data: {
              "discount_id" => adjustment_hash["id"]
            }
          )
        end
      end)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
workarea-flow_io-1.2.1 app/queries/workarea/order_metrics.decorator