Esempio n. 1
0
        public ActionResult Pedido(PedidoModel model)
        {
            bool         verificdor        = false;
            var          context           = new ContextMercadOn();
            var          pedidoService     = new PedidoService(context);
            var          clienteService    = new ConsumidorService(context);
            var          mercadoService    = new MercadoService(context);
            var          precoService      = new PrecoService(context);
            var          pedidoItemService = new PedidoItemService(context);
            PedidoEntity novoPedido        = new PedidoEntity();

            novoPedido.ativo          = 1;
            novoPedido.ClienteEntity  = clienteService.Consultar(model.clienteid);
            novoPedido.dataPedido     = DateTime.Now;
            novoPedido.MercadoEntity  = mercadoService.Consultar(model.mercadoid);
            novoPedido.dataConfirmado = DateTime.Now;
            var split = model.Carrinho.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);

            var produtosItens = new List <ItemPedidoEntity>();

            try
            {
                foreach (var item in split)
                {
                    int id       = int.Parse(item);
                    var produto  = precoService.ConsultarPorFiltro(x => x.idProduto == id, x => x.ProdutoEntity).FirstOrDefault();
                    var novoItem = new ItemPedidoEntity()
                    {
                        PedidoEntity = novoPedido,
                        PrecoEntity  = produto,
                        quantidade   = 1,
                        precoItem    = produto.precoProduto
                    };

                    pedidoItemService.Adicionar(novoItem);
                    verificdor = true;
                }
            }
            catch (Exception exp)
            {
                verificdor = false;
            }


            //bool adicionado = pedidoService.Adicionar(novoPedido);

            if (verificdor)
            {
                TempData["Status"] = true;
                TempData["Msg"]    = "Pedido realizado com sucesso, aguarde entrega.";
            }
            else
            {
                TempData["Status"] = false;
                TempData["Msg"]    = "Pedido não realizado, verifique com o administrador.";
            }

            return(RedirectToAction("Pedido", new { mercadoid = model.mercadoid, clienteid = model.clienteid }));
        }
        private PedidoItemDetail Converter(ItemPedidoEntity e)
        {
            PedidoItemDetail d = new PedidoItemDetail();

            d.pedidoitemid = e.idItemPedido;
            d.produto      = e.PrecoEntity.ProdutoEntity.nomeProduto;
            d.quantidade   = e.quantidade;
            d.valor        = e.precoItem;

            return(d);
        }