mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-02-05 22:26:07 +00:00
Triggering it for each order is inefficient when we cancel them in bulk. The callback doesn't allow us to optimise this.
21 lines
352 B
Ruby
21 lines
352 B
Ruby
# frozen_string_literal: true
|
|
|
|
module Orders
|
|
class CustomerCancellationService
|
|
def initialize(order)
|
|
@order = order
|
|
end
|
|
|
|
def call
|
|
return unless order.cancel
|
|
|
|
Spree::OrderMailer.cancel_email_for_shop(order).deliver_later
|
|
AmendBackorderJob.perform_later(order)
|
|
end
|
|
|
|
private
|
|
|
|
attr_reader :order
|
|
end
|
|
end
|