Ejemplo n.º 1
0
        internal PizzaAndOrder GetPizzaAndOrder()
        {
            PizzaAndOrder res = new PizzaAndOrder()
            {
                PizzaPrice         = 24.00m,
                OrderTotalPrice    = 24.00m,
                OrderTotalQuantity = 2
            };

            return(res);
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> ChangeQuantity([FromBody] QuantityUpdate quantity)
        {
            //get the  order
            var order = await DAL.GetOrder(quantity.oid);

            if (order == null)
            {
                return(BadRequest());
            }
            //get pizza
            var pizza = await DAL.GetPizza(quantity.pid);

            if (pizza == null)
            {
                return(BadRequest());
            }

            GetToppings(pizza);
            var tempPrice   = pizza.Price;
            var oldQuantity = pizza.Quantity;

            //update new quantity and the price of pizza;
            pizza.Quantity = quantity.quantity;

            pizza.Price      = TotalPrice(pizza);
            order.Price      = order.Price - tempPrice + pizza.Price;
            order.TotalPizza = order.TotalPizza - oldQuantity + pizza.Quantity;
            PizzaAndOrder update = new PizzaAndOrder()
            {
                PizzaPrice         = pizza.Price,
                OrderTotalQuantity = order.TotalPizza,
                OrderTotalPrice    = order.Price
            };
            //update both order and pizza detail
            await DAL.UpdateOrder(order);

            await DAL.UpdatePizza(pizza);

            return(Ok(update));
        }