Continue adding product variants

This commit is contained in:
2015-04-13 17:57:06 +02:00
parent 6746eaa383
commit 2b036368cf
32 changed files with 169 additions and 12224 deletions
+15 -7
View File
@@ -274,16 +274,24 @@ class List
state == 'active'
end
def place_order(products: {}, user: nil, employee: nil)
return false unless products.any?
def place_order(product_orders: [], user: nil, employee: nil)
return false unless product_orders.any?
order = Order.create list: self, supplier: supplier, user: user, employee: employee, section_id: section_id, table_id: table_id
return unless order.id
orders_placed_count = supplier.increment_orders_placed_count!
loaded_products = self.class.database.load_document products.keys
products.each do |product_id, quantity|
product = loaded_products.find{|p| p.id == product_id} # to get the price
if quantity.to_i > 0
ProductOrder.create(order: order, product_id: product_id, quantity: quantity, price: product.price, product_name: product.name)
loaded_products = self.class.database.load_document product_orders.map{|po| po['product_id']}
product_orders.each do |product_order|
next unless product = loaded_products.find{|p| p.id == product_order['product_id']} # to get the price
quantity = product_order['quantity'].to_i
if quantity > 0
ProductOrder.create(
order: order,
product_id: product.id,
quantity: quantity,
price: product.price,
product_name: product.name,
product_variant: product_order['product_variant']
)
end
end
set_price