public ActionResult AddProduto(int produtoId, int pedidoId)
        {
            if (pedidoId == 0)
            {
                _pedidoApp.Add(new Pedido());
            }

            return(RedirectToAction("Index"));
        }
        public ActionResult Create(PedidoViewModel pedido)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var pedidoDomain = Mapper.Map <PedidoViewModel, Pedido>(pedido);

                    pedidoDomain.ItensPedido.Add(new ItemPedido()
                    {
                        ProdutoId = 1, Quantidade = 1, ValorDesconto = 0
                    });

                    _pedidoApp.Add(pedidoDomain);

                    return(RedirectToAction("Index"));
                }

                return(View(pedido));
            }
            catch (Exception ex)
            {
                return(View());
            }
        }
Beispiel #3
0
        public ActionResult EfetuarPedido(PedidoViewModel pedidoViewModel)
        {
            TempData["Menu"] = "efetuar-pedido";
            if (!ModelState.IsValid)
            {
                return(View(pedidoViewModel));
            }

            try
            {
                var lista = (List <KeyValuePair <Guid, PedidoDetalheViewModel> >)Session["Produtos"];

                Pedido pedido = Mapper.Map <PedidoViewModel, Pedido>(pedidoViewModel);

                foreach (var item in lista)
                {
                    if (item.Value.ValorFinal != null)
                    {
                        pedido.ValorTotal = pedido.ValorTotal + Convert.ToDecimal(item.Value.ValorFinal);
                    }
                }

                _pedidoAppService.Add(pedido);

                List <PedidoDetalhes> pedidoDetalhes = new List <PedidoDetalhes>();

                foreach (var item in lista)
                {
                    item.Value.PedidoId = pedido.PedidoId;
                    pedidoDetalhes.Add(Mapper.Map <PedidoDetalheViewModel, PedidoDetalhes>(item.Value));
                }

                _pedidoAppService.AddPedidoDetalheRange(pedidoDetalhes);
            }
            catch (DbEntityValidationException ex)
            {
                string errors = "";
                foreach (var eve in ex.EntityValidationErrors)
                {
                    errors += "Entity of type " + eve.Entry.Entity.GetType().Name + " in state " + eve.Entry.State + " has the following validation errors:\n";
                    foreach (var ve in eve.ValidationErrors)
                    {
                        errors += "- Property: " + ve.PropertyName + ", Error: " + ve.ErrorMessage + "\n";
                    }
                }
                throw new Exception(errors);
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(RedirectToAction("Index"));
        }
 public IActionResult PostPedido(PedidoCreateDTO pedidoDTO)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(pedidoDTO));
     }
     _pedidoApp.Add(pedidoDTO);
     pusher.TriggerAsync("favo_de_mel", "pedido", new { message = "" });
     pusher.TriggerAsync("favo_de_mel", "comanda", new { message = "Novo Pedido (Comanda Nº " + pedidoDTO.ComandaId + ")" });
     return(Ok(pedidoDTO));
 }
        public IEnumerable <PedidoViewModel> Get()
        {
            for (int i = 0; i < 10; i++)
            {
                _pedidoAppService.Add(new PedidoViewModel {
                    Numero = i
                });
            }

            return(_pedidoAppService.GetAll());
        }
Beispiel #6
0
        public ActionResult Create(PedidoViewModel pedido)
        {
            if (ModelState.IsValid)
            {
                var pedidoDomain = Mapper.Map <PedidoViewModel, Pedido>(pedido);
                _pedidoApp.Add(pedidoDomain);

                return(RedirectToAction("Index"));
            }
            ViewBag.PedidoId = new SelectList(_produtoApp.GetAll(), "ProdutoId", "Descricao", pedido.ProdutoId);
            return(View(pedido));
        }
        public ActionResult Create(PedidoViewModel pedidoViewModel)
        {
            Pedido pedido = null;

            if (ModelState.IsValid)
            {
                pedido = Mapper.Map <PedidoViewModel, Pedido>(pedidoViewModel);

                if (pedidoViewModel.ProdutoId != 0 && pedidoViewModel.QuantidadeProduto != 0)
                {
                    var produtoAdicionado = _produtoApp.GetById(pedidoViewModel.ProdutoId);

                    var itemPedidoNovo = new ItensPedido
                    {
                        ProdutoId  = produtoAdicionado.ProdutoId,
                        Quantidade = pedidoViewModel.QuantidadeProduto,
                        Subtotal   = produtoAdicionado.Valor * pedidoViewModel.QuantidadeProduto
                    };

                    if (pedido.ItensPedido == null)
                    {
                        pedido.ItensPedido = new List <ItensPedido>();
                    }

                    pedido.ItensPedido.Add(itemPedidoNovo);
                    pedido.ValorTotal         = itemPedidoNovo.Subtotal * itemPedidoNovo.Quantidade;
                    pedido.QuantidadeProdutos = 1;
                    pedido.Codigo             = _pedidoApp.GetAll().Count();
                    pedido.Data = DateTime.Today;
                    _pedidoApp.Add(pedido);
                    // pedido.ItensPedido.ToList()[0].Produto = produtoAdicionado;
                    //pedidoViewModel = Mapper.Map<Pedido, PedidoViewModel>(pedido);
                    //pedidoViewModel.PedidoId = pedido.PedidoId;
                }
            }

            ViewBag.Produtos     = new SelectList(_produtoApp.GetAll(), "ProdutoId", "Descricao");
            ViewBag.Fornecedores = new SelectList(_fornecedorApp.GetAll(), "FornecedorId", "RazaoSocial");

            if (pedido != null)
            {
                return(RedirectToAction("Edit", new { id = pedido.PedidoId }));
            }
            else
            {
                return(View());
            }
        }
        public ActionResult Confirmacao()
        {
            var pedidoModel = (PedidoViewModel)Session["Pedido"];

            if (pedidoModel == null)
            {
                return(RedirectToAction("Vazio", "Carrinho"));
            }

            var formaPagamento = _formaPagamentoApp.GetByIdTipoInteiro(pedidoModel.IdFormaDePagamento);

            if (formaPagamento != null)
            {
                ViewBag.FormaDePagamento = formaPagamento.Descricao;
            }

            //Carrinho carrinho = ObterCarrinho();
            //return PartialView(carrinho);
            //return View(pedidoModel);

            if (ModelState.IsValid)
            {
                var result = _pedidoApp.Add(pedidoModel);

                if (!result.IsValid)
                {
                    foreach (var validationAppError in result.Erros)
                    {
                        ModelState.AddModelError(string.Empty, validationAppError.Message);
                    }
                    return(View(pedidoModel));
                }

                //emailPedido.ProcessarPedido(carrinho, pedido);
                //carrinho.LimparCarrinho();
                Session.Remove("Carrinho");
                Session.Remove("Pedido");
                //return View("PedidoConcluido");
                return(View("Confirmacao", pedidoModel));
            }
            else
            {
                //return View();
                return(View(pedidoModel));
            }
        }
Beispiel #9
0
        public ActionResult Create(PedidoViewModel pedido)
        {
            DateTime localDate = DateTime.Now;

            pedido.DataPedido = localDate;
            foreach (var item in pedido.Produtos)
            {
                item.Fornecedor = _fornecedorAPP.GetAll().First();
            }

            var pedidoDomain = Mapper.Map <PedidoViewModel, Pedido>(pedido);

            _pedidoAPP.Add(pedidoDomain);


            ViewBag.FornecedorID = new SelectList(_fornecedorAPP.GetAll(), "FornecedorID", "RazaoSocial", pedido.FornecedorID);
            ViewBag.ProdutoID    = new SelectList(_produtoApp.GetAll(), "ProdutoID", "Nome");
            return(View());
        }
        public ActionResult Create(PedidoViewModel pedido)
        {
            if (ModelState.IsValid)
            {
                ItensPedido itensPed     = new ItensPedido();
                var         pedidoDomain = Mapper.Map <PedidoViewModel, Pedido>(pedido);

                pedidoDomain.ValorTotal = pedApp.CalcularTotal(ItensPedidoService.Carrinho);
                pedApp.Add(pedidoDomain);

                for (int i = 0; i < ItensPedidoService.Carrinho.Count; i++)
                {
                    itensPed          = ItensPedidoService.Carrinho[i];
                    itensPed.PedidoId = pedidoDomain.PedidoId;
                    ipedApp.Add(itensPed);
                }

                return(RedirectToAction("Index"));
            }
            return(View(pedido));
        }
Beispiel #11
0
 public async Task <ActionResult> Add([FromBody] Requests.Pedido cliente)
 {
     return(Ok(await clienteAppService.Add(cliente)));
 }