Continue adding product variants
This commit is contained in:
+15
-7
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user