Files
openfoodnetwork/app/services/order_cycles/distributed_variants_service.rb
2024-03-16 19:07:08 +05:00

25 lines
546 B
Ruby

# frozen_string_literal: true
module OrderCycles
class DistributedVariantsService
def initialize(order_cycle, distributor)
@order_cycle = order_cycle
@distributor = distributor
end
def distributes_order_variants?(order)
unavailable_order_variants(order).empty?
end
def unavailable_order_variants(order)
order.line_item_variants - available_variants
end
def available_variants
return [] unless @order_cycle
@order_cycle.variants_distributed_by(@distributor)
end
end
end