Class: SpreeCmCommissioner::PricingActions::CreateGuestAdjustments
- Inherits:
-
SpreeCmCommissioner::PricingAction
- Object
- Spree::Base
- Base
- SpreeCmCommissioner::PricingAction
- SpreeCmCommissioner::PricingActions::CreateGuestAdjustments
- Defined in:
- app/models/spree_cm_commissioner/pricing_actions/create_guest_adjustments.rb
Instance Method Summary collapse
Methods inherited from SpreeCmCommissioner::PricingAction
available_calculator_types, #compute_amount
Instance Method Details
#perform(line_item) ⇒ Object
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'app/models/spree_cm_commissioner/pricing_actions/create_guest_adjustments.rb', line 4 def perform(line_item) return if pricing_rule_group.pricing_rules.blank? return if line_item.guests.blank? eligible_guests = find_eligible_guests(line_item) return if eligible_guests.empty? total_amount = eligible_guests.sum do |guest| compute_guest_amount(line_item, guest) end return if total_amount.zero? create_adjustment(line_item, total_amount) end |