Class: Spree::Checkout::RemoveStoreCredit
- Inherits:
-
Object
- Object
- Spree::Checkout::RemoveStoreCredit
- Includes:
- ServiceModule::Base
- Defined in:
- app/services/spree/checkout/remove_store_credit.rb
Instance Method Summary collapse
Methods included from ServiceModule::Base
Instance Method Details
#call(order:) ⇒ Object
6 7 8 9 10 11 12 13 14 |
# File 'app/services/spree/checkout/remove_store_credit.rb', line 6 def call(order:) return failed unless order ApplicationRecord.transaction do order.payments.checkout.store_credits.map(&:invalidate!) unless order.completed? end order.reload.payments.store_credits.valid.any? ? failure(order) : success(order) end |