mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-02-17 00:07:24 +00:00
18 lines
541 B
Ruby
18 lines
541 B
Ruby
class StandingOrderOrder < ActiveRecord::Base
|
|
belongs_to :order, class_name: 'Spree::Order', dependent: :destroy
|
|
belongs_to :standing_order
|
|
|
|
scope :closed, -> { joins(order: :order_cycle).merge(OrderCycle.closed) }
|
|
scope :not_closed, -> { joins(order: :order_cycle).merge(OrderCycle.not_closed) }
|
|
|
|
def cancel
|
|
transaction do
|
|
if order.order_cycle.orders_close_at > Time.zone.now
|
|
self.update_column(:cancelled_at, Time.zone.now)
|
|
order.send('cancel') if order.complete?
|
|
end
|
|
self
|
|
end
|
|
end
|
|
end
|