Пример #1
0
        //
        public void CreateOrder(m_cls_Order order)
        {
            // BindNever Field at Model (need to add by system to this order object)
            order.OrderPlaced = DateTime.Now;
            order.OrderTotal  = _shoppingCart.GetShoppingCartTotal();

            _appDbContext.Orders.Add(order);
            _appDbContext.SaveChanges();

            // Get all shopping cart items and add to order detail
            var shoppingCartItems = _shoppingCart.GetShoppingCartItems();

            foreach (var shoppingCartItem in shoppingCartItems)
            {
                var orderDetail = new m_cls_OrderDetail
                {
                    Amount  = shoppingCartItem.Amount,
                    Price   = shoppingCartItem.Candy.Price,
                    CandyId = shoppingCartItem.Candy.CandyId,
                    OrderId = order.OrderId
                };

                _appDbContext.OrderDetails.Add(orderDetail);
            }

            _appDbContext.SaveChanges();
        }
Пример #2
0
        public IActionResult Checkout(m_cls_Order order)
        {
            _shoppingCart.ShoppingCartItems = _shoppingCart.GetShoppingCartItems();

            if (_shoppingCart.ShoppingCartItems.Count == 0)
            {
                ModelState.AddModelError("", "Your cart is empty");
            }

            if (ModelState.IsValid)
            {
                _orderRepository.CreateOrder(order);
                _shoppingCart.ClearCart();
                return(RedirectToAction("CheckoutComplete"));
            }

            return(View(order));
        }