Skip to content

Commit

Permalink
Merge pull request #6466 from Matt-Yorkley/package-optimisation
Browse files Browse the repository at this point in the history
Optimise Shipment#to_package
  • Loading branch information
andrewpbrett authored Jan 21, 2021
2 parents 4a19a36 + 5b9db50 commit 1d4fa29
Showing 1 changed file with 5 additions and 2 deletions.
7 changes: 5 additions & 2 deletions app/models/spree/shipment.rb
Original file line number Diff line number Diff line change
Expand Up @@ -249,8 +249,11 @@ def inventory_units_for(variant)

def to_package
package = OrderManagement::Stock::Package.new(stock_location, order)
inventory_units.includes(:variant).each do |inventory_unit|
package.add inventory_unit.variant, 1, inventory_unit.state_name
grouped_inventory_units = inventory_units.includes(:variant).group_by do |iu|
[iu.variant, iu.state_name]
end
grouped_inventory_units.each do |(variant, state_name), inventory_units|
package.add variant, inventory_units.count, state_name
end
package
end
Expand Down

0 comments on commit 1d4fa29

Please sign in to comment.