Beispiel #1
0
        public async Task <ActionResult> AddToCartDrinkFromCart(int?DrinkId, int Quantity)
        {
            var drink = await DrinkServices.FindDrinkAsync(DrinkId);

            //Create the cart if it doesnt exist or get the existing cart
            var cart = CreateOrGetCart();

            //Find if the drink exists in the CartDrink list
            var existingDrink = cart.CartDrinks.FirstOrDefault(x => x.DrinkId == drink.Id);

            //If it does,add 1 to its quantity
            if (existingDrink != null)
            {
                existingDrink.Quantity = Quantity;
                var cartburgersCount  = 0;
                var cartdrinksCount   = 0;
                var cartBurgersLength = cart.CartBurgers.Count;
                var cartDrinksLength  = cart.CartDrinks.Count;
                for (int i = 0; i < cartBurgersLength; i++)
                {
                    cartburgersCount += cart.CartBurgers[i].Quantity;
                }

                for (int i = 0; i < cartDrinksLength; i++)
                {
                    cartdrinksCount += cart.CartDrinks[i].Quantity;
                }

                Session["count"] = cartburgersCount + cartdrinksCount;
            }

            SaveCart(cart);
            return(RedirectToAction("Index", "Cart"));
        }
Beispiel #2
0
        //DRINK
        public async Task <ActionResult> AddToCartDrink(int?DrinkId)
        {
            var drink = await DrinkServices.FindDrinkAsync(DrinkId);

            //Create the cart if it doesnt exist or get the existing cart
            var cart = CreateOrGetCart();

            //Find if the drink exists in the CartDrink list
            var existingDrink = cart.CartDrinks.FirstOrDefault(x => x.DrinkId == drink.Id);

            //If it does,add 1 to its quantity
            if (existingDrink != null)
            {
                existingDrink.Quantity++;
                Session["count"] = Convert.ToInt32(Session["count"]) + 1;
            }
            //If it doesnt,create a new CartDrink and save it into the CartDrinks list of the cart
            else
            {
                cart.CartDrinks.Add(new CartDrink()
                {
                    DrinkId  = drink.Id,
                    Name     = drink.Name,
                    Litre    = drink.Litre,
                    Price    = drink.Price,
                    Quantity = 1
                });
                Session["count"] = Convert.ToInt32(Session["count"]) + 1;
            }

            SaveCart(cart);

            return(new EmptyResult());
        }
        // GET: Drink/Edit/5
        public async Task <ActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(View("Error"));
            }
            Drink drink = await DrinkServices.FindDrinkAsync(id);

            if (drink == null)
            {
                return(View("Error"));
            }
            return(View(drink));
        }
Beispiel #4
0
        public async Task <ActionResult> DeleteDrink(int DrinkId)
        {
            var drink = await DrinkServices.FindDrinkAsync(DrinkId);

            //Create the cart if it doesnt exist or get the existing cart
            var cart = CreateOrGetCart();

            //Find if the drink exists in the CartDrinks list and find its Quantity
            var existingItem    = cart.CartDrinks.FirstOrDefault(x => x.DrinkId == drink.Id);
            var quantityDeleted = existingItem.Quantity;

            //If it does,remove it from the list
            if (existingItem != null)
            {
                cart.CartDrinks.Remove(existingItem);
            }
            Session["count"] = Convert.ToInt32(Session["count"]) - quantityDeleted;

            SaveCart(cart);

            return(RedirectToAction("Index", "Cart"));
        }