Class: Stockman::Logic::Variant::StockLevelsCollection
- Inherits:
-
Object
- Object
- Stockman::Logic::Variant::StockLevelsCollection
- Includes:
- Enumerable
- Defined in:
- lib/stockman/logic/variant/stock_levels_collection.rb
Instance Attribute Summary collapse
-
#variant_id ⇒ Object
readonly
Returns the value of attribute variant_id.
Instance Method Summary collapse
- #[](warehouse_id) ⇒ Object
- #each ⇒ Object
- #empty? ⇒ Boolean
- #find_by_warehouse(warehouse_id) ⇒ Object
-
#initialize(variant_id) ⇒ StockLevelsCollection
constructor
A new instance of StockLevelsCollection.
- #stock_levels ⇒ Object
Constructor Details
#initialize(variant_id) ⇒ StockLevelsCollection
Returns a new instance of StockLevelsCollection.
9 10 11 |
# File 'lib/stockman/logic/variant/stock_levels_collection.rb', line 9 def initialize(variant_id) @variant_id = variant_id.to_i end |
Instance Attribute Details
#variant_id ⇒ Object (readonly)
Returns the value of attribute variant_id.
7 8 9 |
# File 'lib/stockman/logic/variant/stock_levels_collection.rb', line 7 def variant_id @variant_id end |
Instance Method Details
#[](warehouse_id) ⇒ Object
27 28 29 |
# File 'lib/stockman/logic/variant/stock_levels_collection.rb', line 27 def [](warehouse_id) find_by_warehouse(warehouse_id) end |
#each ⇒ Object
19 20 21 |
# File 'lib/stockman/logic/variant/stock_levels_collection.rb', line 19 def each stock_levels.each{ |stock_level| yield stock_level } end |
#empty? ⇒ Boolean
23 24 25 |
# File 'lib/stockman/logic/variant/stock_levels_collection.rb', line 23 def empty? stock_levels.empty? end |
#find_by_warehouse(warehouse_id) ⇒ Object
31 32 33 |
# File 'lib/stockman/logic/variant/stock_levels_collection.rb', line 31 def find_by_warehouse(warehouse_id) stock_levels.detect{ |stock_level| stock_level.warehouse_id == warehouse_id } end |
#stock_levels ⇒ Object
13 14 15 16 17 |
# File 'lib/stockman/logic/variant/stock_levels_collection.rb', line 13 def stock_levels @stock_levels ||= Storage.obtain_set("variants:#{variant_id}:warehouses").map do |warehouse_id| StockLevel.new(variant_id, warehouse_id) end end |