Sha256: 5c9be4c528323d52dc10c8d25421d61124696332c2fb8c5156f2b3aa76329634
Contents?: true
Size: 854 Bytes
Versions: 2
Compression:
Stored size: 854 Bytes
Contents
module Stockman module Logic class Variant class StockLevelsCollection include Enumerable attr_reader :variant_id def initialize(variant_id) @variant_id = variant_id.to_i end def stock_levels @stock_levels ||= Storage.obtain_set("variants:#{variant_id}:warehouses").map do |warehouse_id| StockLevel.new(variant_id, warehouse_id) end end def each stock_levels.each{ |stock_level| yield stock_level } end def empty? stock_levels.empty? end def [](warehouse_id) find_by_warehouse(warehouse_id) end def find_by_warehouse(warehouse_id) stock_levels.detect{ |stock_level| stock_level.warehouse_id == warehouse_id } end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
stockman-logic-0.1.1 | lib/stockman/logic/variant/stock_levels_collection.rb |
stockman-logic-0.1.0 | lib/stockman/logic/variant/stock_levels_collection.rb |