Further syntax fixes for GroupBuyReport

This commit is contained in:
Rohan Mitchell
2012-10-11 10:53:33 +11:00
parent c05911fa10
commit fe5fd76415

View File

@@ -2,13 +2,13 @@ module OpenFoodWeb
GroupBuyVariantRow = Struct.new(:variant, :sum_quantities, :sum_max_quantities) do
def to_row
[variant.product.supplier.name,variant.product.name,"UNITSIZE",variant.options_text,variant.weight,sum_quantities,sum_max_quantities]
[variant.product.supplier.name, variant.product.name, "UNITSIZE", variant.options_text, variant.weight, sum_quantities, sum_max_quantities]
end
end
GroupBuyProductRow = Struct.new(:product, :sum_quantities, :sum_max_quantities) do
def to_row
[product.supplier.name,product.name,"UNITSIZE","TOTAL","",sum_quantities,sum_max_quantities]
[product.supplier.name, product.name, "UNITSIZE", "TOTAL", "", sum_quantities, sum_max_quantities]
end
end
@@ -24,17 +24,17 @@ module OpenFoodWeb
def variants_and_quantities
variants_and_quantities = []
line_items = @orders.map { |o| o.line_items }.flatten
supplier_groups = line_items.group_by{ |li| li.variant.product.supplier }
supplier_groups.each do |supplier,line_items_by_supplier|
product_groups = line_items_by_supplier.group_by{ |li| li.variant.product }
product_groups.each do |product,line_items_by_product|
supplier_groups = line_items.group_by { |li| li.variant.product.supplier }
supplier_groups.each do |supplier, line_items_by_supplier|
product_groups = line_items_by_supplier.group_by { |li| li.variant.product }
product_groups.each do |product, line_items_by_product|
# Cycle thorugh variant of a product
variant_groups = line_items_by_product.group_by{ |li| li.variant }
variant_groups.each do |variant,line_items_by_variant|
variant_groups = line_items_by_product.group_by { |li| li.variant }
variant_groups.each do |variant, line_items_by_variant|
sum_quantities = line_items_by_variant.sum { |li| li.quantity }
sum_max_quantities = line_items_by_variant.sum { |li| li.max_quantity || 0 }
variants_and_quantities << GroupBuyVariantRow.new(variant,sum_quantities,sum_max_quantities)
variants_and_quantities << GroupBuyVariantRow.new(variant, sum_quantities, sum_max_quantities)
end
# Sum quantities for each product (Total line)