public void AddOrder(InOrderVM inOrderVM) { var orderDetails = new List <OrderDetails>(); var valueCart = db.Carts.Where(x => x.AccountId == inOrderVM.AccountId).ToList(); for (var i = 0; i < valueCart.Count(); i++) { var orderDetail = new OrderDetails() { OrderDetailId = Guid.NewGuid(), ProductId = valueCart[i].ProductId, UnitPrice = db.Products.Where(x => x.ProductId == valueCart[i].ProductId).FirstOrDefault().Price, Quantity = valueCart[i].Quantity, Discount = 0 }; db.Products.FirstOrDefault(x => x.ProductId == valueCart[i].ProductId).Stock -= valueCart[i].Quantity; orderDetails.Add(orderDetail); } var value = new Orders() { OrderId = Guid.NewGuid(), AccountId = inOrderVM.AccountId, OrderDate = DateTime.Today, ShipVia = inOrderVM.ShipVia, Freight = inOrderVM.Freight, ShipCity = inOrderVM.ShipCity, ShipAddress = inOrderVM.ShipAddress, PayWay = inOrderVM.PayWay, HasPay = inOrderVM.HasPay, CustomerName = inOrderVM.CustomerName, Phone = inOrderVM.Phone, InvoiceWay = inOrderVM.InvoiceWay, Remark = inOrderVM.Remark, OrderDetails = orderDetails }; db.Orders.Add(value); db.Carts.RemoveRange(valueCart); db.SaveChanges(); }
public void AddOrder(InOrderVM inOrderVM) { orderService.AddOrder(inOrderVM); }