Пример #1
0
        public ActionResult AddOneItemToCart(int id)
        {
            var cart = ShoppingCart.GetCart(this.HttpContext);

            // Get the name of the product to display confirmation

            string productDescription = _shoppingCartContext.Carts
                                        .Single(item => item.Id == id && item.Code == cart.ShoppingCartId).Product.Description;

            var ret = cart.AddOneItemToCart(id);

            //var updatedCart = _shoppingCartContext.Carts.FirstOrDefault(item => item.Id == id && item.Code == cart.ShoppingCartId);

            // update cart view
            var results = new ShoppingCartAddViewModel()
            {
                Message = "(1)" + Server.HtmlEncode(productDescription) +
                          " has been added to the cart.",
                CartTotal            = cart.GetTotal() + cart.GetTotalShippingCost(),
                CartTotalToString    = (cart.GetTotal() + cart.GetTotalShippingCost()).ToString("N0"),
                CartCount            = cart.GetCount(),
                ItemCount            = ret.Quantity,
                TotalDiscount        = ret.TotalDiscountAmount,
                ShippingCost         = ret.ShippingCost,
                ShippingCostToString = ret.ShippingCost.ToString("N0"),
                NetBeforeDiscount    = ret.NetBeforeDiscount,
                Sum                           = ret.Sum + ret.ShippingCost,
                SumToString                   = (ret.Sum + ret.ShippingCost).ToString("N0"),
                AddId                         = id,
                TotalCartShippingCost         = cart.GetTotalShippingCost(),
                TotalCartShippingCostToString = cart.GetTotalShippingCost().ToString("N0")
            };

            return(Json(results));
        }
        public ActionResult AddToCart(int id)
        {
            var book = db.Books.Find(id);

            if (book == null)
            {
                return(HttpNotFound());
            }

            var cart = ShoppingCart.GetCard(this.HttpContext);

            cart.AddToCard(book);

            book.Quantity       -= 1;
            db.Entry(book).State = EntityState.Modified;
            db.SaveChanges();

            var result = new ShoppingCartAddViewModel()
            {
                Message   = $"Book {Server.HtmlEncode(book.Title)} was added to your cart!",
                AddId     = id,
                CartCount = cart.GetCount(),
                CartTotal = cart.GetTotal(),
            };

            return(Json(result));
        }
Пример #3
0
        public ShoppingCartAddViewModel AddToCart(Book book)
        {
            // Get the matching cart and album instances
            var cartItem = db.Carts.SingleOrDefault(
                c => c.CartID == ShoppingCartId &&
                c.BookID == book.ID);

            ShoppingCartAddViewModel response = null;

            if (book.Quantity > 0)
            {
                if (cartItem == null)
                {
                    // Create a new cart item if no cart item exists
                    cartItem = new Cart
                    {
                        BookID      = book.ID,
                        CartID      = ShoppingCartId,
                        Count       = 1,
                        DateCreated = DateTime.Now
                    };
                    db.Carts.Add(cartItem);
                    response = new ShoppingCartAddViewModel
                    {
                        MessageSuccess = "Ksiązka " + book.Title + " została dodana do koszyka.",
                        MessageWarning = "",
                        MessageDanger  = ""
                    };
                }
                else
                {
                    response = new ShoppingCartAddViewModel
                    {
                        MessageSuccess = "",
                        MessageWarning = "Ksiązka " + book.Title + " jest już w koszyku.",
                        MessageDanger  = ""
                    };
                }
            }
            else
            {
                response = new ShoppingCartAddViewModel
                {
                    MessageSuccess = "",
                    MessageWarning = "",
                    MessageDanger  = "W bibliotece brakuje sztuk tej książki."
                };
            }


            // Save changes
            db.SaveChanges();
            return(response);
        }
Пример #4
0
        public ActionResult AddToCart(int id)
        {
            // Retrieve the album from the database
            var addedAlbum = db.Books
                             .Single(b => b.ID == id);

            // Add it to the shopping cart
            var cart = ShoppingCart.GetCart(this.HttpContext);

            ShoppingCartAddViewModel results = cart.AddToCart(addedAlbum);

            return(Json(results));
        }
Пример #5
0
        public ActionResult AddToCart(int id)
        {
            var addedProduct = db.Products.Single(p => p.Id == id);
            var productName  = addedProduct.Name;

            var cart = ShoppingCart.GetShoppingCart(this.HttpContext);

            int itemCount = cart.AddItemToCart(addedProduct);

            var results = new ShoppingCartAddViewModel
            {
                Message = Server.HtmlEncode(productName) +
                          " has been added to your shopping cart.",
                CartTotal        = cart.GetTotal(),
                CartCount        = cart.GetCount(),
                CartItemQuantity = itemCount,
                AddId            = id
            };

            return(Json(results));
        }