Sha256: 1eaa48f97cb286202c36403a4b3767c4f3cbdf9f033da65b838ef9c835f2f68b
Contents?: true
Size: 1.26 KB
Versions: 2
Compression:
Stored size: 1.26 KB
Contents
module Spree module Orders class FindComplete include Spree::Orders::FinderHelper attr_reader :user, :number, :token, :store def initialize(user: nil, number: nil, token: nil, store: nil) @user = user @number = number @token = token @store = store end def execute orders = by_user(scope) orders = by_number(orders) orders = by_token(orders) orders = by_store(orders) orders end private def scope user? ? user.orders.complete.includes(order_includes) : Spree::Order.complete.includes(order_includes) end def user? user.present? end def number? number.present? end def token? token.present? end def store? store.present? end def by_user(orders) return orders unless user? orders end def by_number(orders) return orders unless number? orders.where(number: number) end def by_token(orders) return orders unless token? orders.where(token: token) end def by_store(orders) return orders unless store? orders.where(store: store) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
spree_core-4.10.1 | app/finders/spree/orders/find_complete.rb |
spree_core-4.10.0 | app/finders/spree/orders/find_complete.rb |