Exemplo n.º 1
0
        public ActionResult <RemoveItemResponse> ClearBasket()
        {
            if (!ValidateRequest())
            {
                return(BadRequest(new RemoveItemResponse()
                {
                    Failure = new RequestFailure(Error)
                }));
            }

            try
            {
                this.Basket.Products.Clear();
                this.DbContext.Save();

                var response = new RemoveItemResponse()
                {
                    Items      = this.Basket.GetBasketItems(),
                    TotalPrice = Basket.Products.Sum(x => x.Price)
                };

                return(Ok(response));
            }
            catch (Exception ex)
            {
                return(BadRequest(new RemoveItemResponse()
                {
                    Failure = new RequestFailure(ex.Message)
                }));
            }
        }
Exemplo n.º 2
0
        public ActionResult <RemoveItemResponse> RemoveFromBasket(int id)
        {
            if (!ValidateRequest())
            {
                return(BadRequest(new RemoveItemResponse()
                {
                    Failure = new RequestFailure(Error)
                }));
            }

            try
            {
                var item = this.Basket.Products.Where(x => x.ExternalId == id).FirstOrDefault();
                if (item == null)
                {
                    throw new Exception("Cannot find item in basket.");
                }

                this.Basket.Products.Remove(item);
                this.DbContext.Save();

                var response = new RemoveItemResponse()
                {
                    Items      = this.Basket.GetBasketItems(),
                    TotalPrice = Basket.Products.Sum(x => x.Price)
                };

                return(Ok(response));
            }
            catch (Exception ex)
            {
                return(BadRequest(new RemoveItemResponse()
                {
                    Failure = new RequestFailure(ex.Message)
                }));
            }
        }