Class: SpreeCmCommissioner::PricingAction
- Defined in:
- app/models/spree_cm_commissioner/pricing_action.rb
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.available_calculator_types ⇒ Object
23 24 25 |
# File 'app/models/spree_cm_commissioner/pricing_action.rb', line 23 def self.available_calculator_types SpreeCmCommissioner::Calculators.constants.map(&:to_s) end |
Instance Method Details
#perform(line_item) ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'app/models/spree_cm_commissioner/pricing_action.rb', line 8 def perform(line_item) return if pricing_rule_group.pricing_rules.blank? amount = calculator&.compute(line_item) line_item.adjustments.create!( amount: amount, source: self, adjustable: line_item, order: line_item.order, label: pricing_rule_group.pricing_model.name, mandatory: true ) end |