public int CreateOrder(CustomerOrder customerOrder) { decimal orderTotal = 0; var cartItems = GetCartItems(); foreach (var item in cartItems) { var orderedDetails = new OrderDetails { ProductId = item.ProductId, CustomerOrderId = customerOrder.Id, Quantity = item.Count }; orderTotal += (item.Count * item.Product.Price); db.OrderDetails.Add(orderedDetails); } customerOrder.Amount = orderTotal; db.SaveChanges(); EmptyCart(); return customerOrder.Id; }
public ActionResult AddressAndPayment(FormCollection values) { var order = new CustomerOrder(); TryUpdateModel(order); try { if (string.Equals(values["PromoCode"], PromoCode, StringComparison.OrdinalIgnoreCase) == false) { return View(order); } else { // order.CustomerUserName = User.Identity.Name; order.DateCreated = DateTime.Now; db.CustomerOrders.Add(order); db.SaveChanges(); var cart = ShoppingCart.GetCart(this.HttpContext); cart.CreateOrder(order); db.SaveChanges();//we have received the total amount lets update it return RedirectToAction("Complete", new { id = order.Id }); } } catch (Exception ex) { ex.InnerException.ToString(); return View(order); } }