Ejemplo n.º 1
0
        // GET: Checkout
        public ActionResult Index(string acao = null, int?produtoId = null)
        {
            if (produtoId.HasValue)
            {
                var produto = CarrinhoDeCompras.GetItem(produtoId.Value);
                switch (acao)
                {
                case "incrementar":
                    produto.Quantidade++;
                    CarrinhoDeCompras.SetItem(produto);
                    break;

                case "decrementar":
                    produto.Quantidade--;
                    CarrinhoDeCompras.SetItem(produto);

                    if (produto.Quantidade == 0)
                    {
                        CarrinhoDeCompras.Remove(produtoId.Value);
                    }

                    break;

                case "remover":
                    CarrinhoDeCompras.Remove(produtoId.Value);
                    break;

                default:
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest, $"ação '{acao}' inválida"));
                }
            }

            ViewBag.CarrinhoDeCompras = CarrinhoDeCompras;
            return(View(CarrinhoDeCompras));
        }