Example #1
0
        public async Task <IActionResult> Edit(int id, [Bind("PedidoDetalheID,PedidoID,ProdutoID,Quantidade,Preco")] PedidoDetalhe pedidoDetalhe)
        {
            if (id != pedidoDetalhe.PedidoDetalheID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(pedidoDetalhe);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!PedidoDetalheExists(pedidoDetalhe.PedidoDetalheID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["PedidoID"]  = new SelectList(_context.Pedido, "PedidoID", "PedidoID", pedidoDetalhe.PedidoID);
            ViewData["ProdutoID"] = new SelectList(_context.Produto, "ProdutoID", "Nome", pedidoDetalhe.ProdutoID);
            return(View(pedidoDetalhe));
        }
Example #2
0
        public void CriarPedido(Pedido pedido)
        {
            pedido.PedidoEnviado = DateTime.Now;
            //pedido.PedidoEntregueEm = DateTime.Now;

            _appDbContext.Pedidos.Add(pedido);
            _appDbContext.SaveChanges();

            // para obter os items do carrinho
            var carrinhoCompraItens = _carrinhoCompra.CarrinhoCompraItens;

            // cada item do carrinho
            foreach (var carrinhoItem in carrinhoCompraItens)
            {
                var pedidoDetail = new PedidoDetalhe()
                {
                    Quantidade = carrinhoItem.Quantidade,
                    LancheId   = carrinhoItem.Lanche.LancheId,
                    PedidoId   = pedido.PedidoId,
                    Preco      = carrinhoItem.Lanche.Preco
                };
                _appDbContext.PedidoDetalhes.Add(pedidoDetail);
            }
            _appDbContext.SaveChanges();
        }
Example #3
0
        public override void Salvar(EntidadeDominio entidade)
        {
            if (connection.State == ConnectionState.Closed)
            {
                connection.Open();
            }
            PedidoDetalhe pedidoDetalhe = (PedidoDetalhe)entidade;

            pst.CommandText = "INSERT INTO tb_pedido_detalhe(pedido_fk, livro_pedido_fk, qtde, valor_unit_livro) " +
                              "VALUES (:1, :2, :3, :4)";

            parameters = new NpgsqlParameter[]
            {
                new NpgsqlParameter("1", pedidoDetalhe.IdPedido),
                new NpgsqlParameter("2", pedidoDetalhe.Livro.ID),
                new NpgsqlParameter("3", pedidoDetalhe.Quantidade),
                new NpgsqlParameter("4", pedidoDetalhe.ValorUnit)
            };

            pst.Parameters.Clear();
            pst.Parameters.AddRange(parameters);
            pst.Connection  = connection;
            pst.CommandType = CommandType.Text;
            pst.ExecuteNonQuery();

            if (ctrlTransaction == true)
            {
                pst.CommandText = "COMMIT WORK";
                connection.Close();
            }

            return;
        }
Example #4
0
        private void btnAlterar_Click(object sender, EventArgs e)
        {
            var repositorioProduto = new Repositorio.RepositorioProduto();

            Pedido.DataVenda = Convert.ToDateTime(txtmData.Text);

            foreach (DataGridViewRow row in dgvProdutos.Rows)
            {
                var cellTotal = row.Cells["Total"];
                if (cellTotal.Value != null)
                {
                    var repositorioDetalhe = new Repositorio.RepositorioPedidoDetalhe();

                    var quantidade = row.Cells["Quantidade"];
                    var desconto   = row.Cells["Desconto"];
                    var idProduo   = row.Cells["Id"];

                    var detalhe = Pedido.Detalhes.FirstOrDefault(d => d.Produto.Id == (int)idProduo.Value);
                    if (detalhe != null)
                    {
                        detalhe.Quantidade = Convert.ToInt32(quantidade.Value);
                        detalhe.Desconto   = Convert.ToDouble(desconto.Value.ToString().Replace("R$", ""));
                        detalhe.Valor      = Convert.ToDouble(cellTotal.Value);
                        detalhe.Pedido     = new Pedido {
                            Id = Pedido.Id
                        };

                        repositorioDetalhe.Atualizar(detalhe);
                    }
                    else
                    {
                        detalhe = new PedidoDetalhe
                        {
                            Quantidade = Convert.ToInt32(quantidade.Value),
                            Desconto   = Convert.ToDouble(desconto.Value.ToString().Replace("R$", "")),
                            Valor      = Convert.ToDouble(cellTotal.Value),
                            Produto    = new Produto {
                                Id = Convert.ToInt32(idProduo.Value)
                            },
                            Pedido = new Pedido {
                                Id = Pedido.Id
                            }
                        };

                        repositorioDetalhe.Inserir(detalhe);


                        Pedido.Detalhes.Add(detalhe);
                    }
                }
            }

            var repositorio = new Repositorio.RepositorioPedido();

            repositorio.Atualizar(Pedido);
        }
Example #5
0
        protected override void Editar(PedidoModel model)
        {
            var temporario = Mapper.Map <PedidoModel>(model);
            PedidoViewModelDetail viewModel = new PedidoViewModelDetail(temporario, Janelas.Editar, index);
            PedidoDetalhe         view      = new PedidoDetalhe(viewModel);

            view.ShowDialog();
            if (view.DialogResult.HasValue && view.DialogResult.Value)
            {
                Mapper.Map(temporario, model);
            }
        }
Example #6
0
        protected override void Adicionar()
        {
            PedidoViewModelDetail viewModel = new PedidoViewModelDetail(new PedidoModel(), Janelas.Adicionar, index);
            PedidoDetalhe         view      = new PedidoDetalhe(viewModel);

            view.ShowDialog();
            if (view.DialogResult.HasValue && view.DialogResult.Value)
            {
                Models.Add(viewModel.Model);
                index++;
            }
        }
Example #7
0
        public async Task <IActionResult> Create([Bind("PedidoDetalheID,PedidoID,ProdutoID,Quantidade,Preco")] PedidoDetalhe pedidoDetalhe)
        {
            if (ModelState.IsValid)
            {
                _context.Add(pedidoDetalhe);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["PedidoID"]  = new SelectList(_context.Pedido, "PedidoID", "PedidoID", pedidoDetalhe.PedidoID);
            ViewData["ProdutoID"] = new SelectList(_context.Produto, "ProdutoID", "Nome", pedidoDetalhe.ProdutoID);
            return(View(pedidoDetalhe));
        }
Example #8
0
        public void CriarPedido(Pedido pedido)
        {
            pedido.PedidoEnviado = DateTime.Now;
            _appDbContext.Pedidos.Add(pedido);

            var carrinhoCompraItens = _carrinhoCompra.CarrinhoCompraItens;

            foreach (var carrinhoItem in carrinhoCompraItens)
            {
                var pedidoDetalhe = new PedidoDetalhe()
                {
                    Quantidade = carrinhoItem.Quantidade,
                    LancheId   = carrinhoItem.Lanche.LancheId,
                    PedidoId   = pedido.PedidoId,
                    Preco      = carrinhoItem.Lanche.Preco
                };
                _appDbContext.PedidoDetalhes.Add(pedidoDetalhe);
            }
            _appDbContext.SaveChanges();
        }
Example #9
0
        public void CriarPedido(Pedido pedido)
        {
            pedido.PedidoEnviado = DateTime.Now;
            _appDbContext.Pedidos.Add(pedido);                             // envia para o banco
            _appDbContext.SaveChanges();                                   // persistir as informações no DB

            var carrinhoCompraItens = _carrinhoCompra.CarrinhoCompraItens; //obtem itens do carrinho

            foreach (var carrinhoItem in carrinhoCompraItens)
            {
                var pedidoDetalhe = new PedidoDetalhe()
                {
                    Quantidade = carrinhoItem.Quantidade,
                    LancheId   = carrinhoItem.Lanche.Id,
                    PedidoId   = pedido.Id,
                    Preco      = carrinhoItem.Lanche.Preco
                };
                _appDbContext.PedidoDetalhes.Add(pedidoDetalhe);
            }
            _appDbContext.SaveChanges(); // persistir as informações no DB
        }
Example #10
0
        /*medito criar pedido para persistencia dos produtos do carrinho*/
        public void CriarPedido(Pedido pedido)
        {
            pedido.PedidoTotal = _carrinho.GetCarrinhoTotal();

            _context.Pedidos.Add(pedido);

            var produtosCarrinho = _carrinho.GetProdutosCarrinho();

            foreach (var produtoCarrinho in produtosCarrinho)
            {
                var pedidoDetalhe = new PedidoDetalhe {
                    NumeroPedido = pedido.NumeroPedido,
                    ProdutoId    = produtoCarrinho.ProdutoId,
                    Preco        = produtoCarrinho.Preco,
                    Quantidade   = produtoCarrinho.Quantidade
                };

                _context.PedidoDetalhes.Add(pedidoDetalhe);
            }

            _context.SaveChanges();
        }
Example #11
0
        public void CriarPedido(Pedido pedido)
        {
            pedido.PedidoEnviado = DateTime.Now;
            //pedido.PedidoEntregueEm = DateTime.Now;

            _appDbContext.Pedidos.Add(pedido);
            _appDbContext.SaveChanges();

            var carrinhoCompraItens = _carrinhoCompra.CarrinhoCompraItens;

            foreach (var carrinhoItem in carrinhoCompraItens)
            {
                var pedidoDetail = new PedidoDetalhe()
                {
                    Quantidade = carrinhoItem.Quantidade,
                    ProdutoId  = carrinhoItem.Produto.ProdutoId,
                    PedidoId   = pedido.PedidoId,
                    Preco      = carrinhoItem.Produto.ValorVenda
                };
                _appDbContext.PedidoDetalhes.Add(pedidoDetail);
            }
            _appDbContext.SaveChanges();
        }
        public void CriarPedido(Pedido pedido)
        {
            pedido.Data = DateTime.Now;

            DateTime data = DateTime.Now;

            pedido.Hora      = data.ToString("HH:mm");
            pedido.Cliente   = _appDbContext.Cliente.Last();
            pedido.Atendente = _appDbContext.Atendente.First();
            pedido.Statusp   = "Em andamento";
            decimal d = _carrinhoCompra.GetCarrinhoCompraTotal();

            pedido.ValorAtual = (double)d;



            _appDbContext.Pedido.Add(pedido);

            var carrinhoCompraItens = _carrinhoCompra.CarrinhoCompraItens;

            foreach (var carrinhoItem in carrinhoCompraItens)
            {
                var pedidoDetail = new PedidoDetalhe()
                {
                    Quantidade = carrinhoItem.Quantidade,
                    ProdutoID  = carrinhoItem.Produto.ProdutoID,
                    PedidoID   = pedido.PedidoID,
                    Preco      = carrinhoItem.Produto.ValorUnitario
                };


                _appDbContext.PedidoDetalhe.Add(pedidoDetail);
            }

            _appDbContext.SaveChanges();
        }
Example #13
0
        private void btnCadastro_Click(object sender, EventArgs e)
        {
            var repositorioProduto = new Repositorio.RepositorioProduto();

            Pedido = new Pedido {
                DataVenda = Convert.ToDateTime(txtmData.Text)
            };

            foreach (DataGridViewRow row in dgvProdutos.Rows)
            {
                var cellTotal = row.Cells["Total"];
                if (cellTotal.Value != null)
                {
                    var quantidade = row.Cells["Quantidade"];
                    var desconto   = row.Cells["Desconto"];
                    var idProduo   = row.Cells["Id"];


                    var detalhe = new PedidoDetalhe
                    {
                        Quantidade = Convert.ToInt32(quantidade.Value),
                        Desconto   = Convert.ToDouble(desconto.Value.ToString().Replace("R$", "")),
                        Valor      = Convert.ToDouble(cellTotal.Value),
                        Produto    = new Produto {
                            Id = Convert.ToInt32(idProduo.Value)
                        },
                    };

                    Pedido.Detalhes.Add(detalhe);
                }
            }

            var repositorio = new Repositorio.RepositorioPedido();

            repositorio.Inserir(Pedido);
        }
Example #14
0
        protected void CheckoutBtn_Click(object sender, EventArgs e)
        {
            Pedido pedido = new Pedido();

            // pegando e adicionando usuário ao pedido
            pedido.Usuario = Context.User.Identity.Name;

            // pegando e adicionando endereço (ID) selecionado ao pedido
            pedido.EnderecoEntrega.ID = Convert.ToInt32(dropIdEnderecoEntrega.SelectedValue);

            // pegando e adicionando frete ao pedido
            float frete = (float)0.0;

            if (!lblFrete.Text.Trim().Equals("-"))
            {
                if (float.TryParse(lblFrete.Text.Remove(0, 3), out frete))
                {
                    pedido.Frete = frete;
                }
            }

            // pegando e adicionando total ao pedido
            float total = (float)0.0;

            if (!lblTotal.Text.Trim().Equals("-"))
            {
                if (float.TryParse(lblTotal.Text.Remove(0, 3), out total))
                {
                    pedido.Total = total;
                }
            }

            // Pegando e adicionando os item do carrinho em pedido
            foreach (CartItem cartItem in GetShoppingCartItems())
            {
                PedidoDetalhe detalhe = new PedidoDetalhe();
                detalhe.Livro.ID     = cartItem.livro_id;
                detalhe.Livro.Titulo = cartItem.titulo_livro;
                detalhe.Quantidade   = cartItem.quantidade;
                detalhe.ValorUnit    = cartItem.valor_venda;

                pedido.Detalhes.Add(detalhe);
            }

            CartaoCreditoPedido cartaoPedido = new CartaoCreditoPedido();

            if (Session["txtValorCCPagto1"] != null)
            {
                cartaoPedido.CC.ID = Convert.ToInt32(dropIdCC1.Text);
                decimal valorCC = 0;
                if (decimal.TryParse(Session["txtValorCCPagto1"].ToString(), NumberStyles.Number, CultureInfo.CreateSpecificCulture("en-US"), out valorCC))
                {
                    cartaoPedido.ValorCCPagto = (float)valorCC;
                }
                pedido.CCs.Add(cartaoPedido);
            }

            cartaoPedido = new CartaoCreditoPedido();
            if (Session["txtValorCCPagto2"] != null)
            {
                cartaoPedido.CC.ID = Convert.ToInt32(dropIdCC2.Text);
                decimal valorCC = 0;
                if (decimal.TryParse(Session["txtValorCCPagto2"].ToString(), NumberStyles.Number, CultureInfo.CreateSpecificCulture("en-US"), out valorCC))
                {
                    cartaoPedido.ValorCCPagto = (float)valorCC;
                }
                pedido.CCs.Add(cartaoPedido);
            }

            cartaoPedido = new CartaoCreditoPedido();
            if (Session["txtValorCCPagto3"] != null)
            {
                cartaoPedido.CC.ID = Convert.ToInt32(dropIdCC3.Text);
                decimal valorCC = 0;
                if (decimal.TryParse(Session["txtValorCCPagto3"].ToString(), NumberStyles.Number, CultureInfo.CreateSpecificCulture("en-US"), out valorCC))
                {
                    cartaoPedido.ValorCCPagto = (float)valorCC;
                }
                pedido.CCs.Add(cartaoPedido);
            }

            cartaoPedido = new CartaoCreditoPedido();
            if (Session["txtValorCCPagto4"] != null)
            {
                cartaoPedido.CC.ID = Convert.ToInt32(dropIdCC4.Text);
                decimal valorCC = 0;
                if (decimal.TryParse(Session["txtValorCCPagto4"].ToString(), NumberStyles.Number, CultureInfo.CreateSpecificCulture("en-US"), out valorCC))
                {
                    cartaoPedido.ValorCCPagto = (float)valorCC;
                }
                pedido.CCs.Add(cartaoPedido);
            }

            cartaoPedido = new CartaoCreditoPedido();
            if (Session["txtValorCCPagto5"] != null)
            {
                cartaoPedido.CC.ID = Convert.ToInt32(dropIdCC5.Text);
                decimal valorCC = 0;
                if (decimal.TryParse(Session["txtValorCCPagto5"].ToString(), NumberStyles.Number, CultureInfo.CreateSpecificCulture("en-US"), out valorCC))
                {
                    cartaoPedido.ValorCCPagto = (float)valorCC;
                }
                pedido.CCs.Add(cartaoPedido);
            }

            if (Session["idCupomPromo"] != null)
            {
                pedido.CupomPromocional.ID = Convert.ToInt32(Session["idCupomPromo"]);
            }

            Cupom cupomTroca = new Cupom();

            if (Session["dropIdCupomTroca1"] != null)
            {
                cupomTroca.ID = Convert.ToInt32(Session["dropIdCupomTroca1"]);
                pedido.CuponsTroca.Add(cupomTroca);
            }

            cupomTroca = new Cupom();
            if (Session["dropIdCupomTroca2"] != null)
            {
                cupomTroca.ID = Convert.ToInt32(Session["dropIdCupomTroca2"]);
                pedido.CuponsTroca.Add(cupomTroca);
            }

            cupomTroca = new Cupom();
            if (Session["dropIdCupomTroca3"] != null)
            {
                cupomTroca.ID = Convert.ToInt32(Session["dropIdCupomTroca3"]);
                pedido.CuponsTroca.Add(cupomTroca);
            }

            cupomTroca = new Cupom();
            if (Session["dropIdCupomTroca4"] != null)
            {
                cupomTroca.ID = Convert.ToInt32(Session["dropIdCupomTroca4"]);
                pedido.CuponsTroca.Add(cupomTroca);
            }

            cupomTroca = new Cupom();
            if (Session["dropIdCupomTroca5"] != null)
            {
                cupomTroca.ID = Convert.ToInt32(Session["dropIdCupomTroca5"]);
                pedido.CuponsTroca.Add(cupomTroca);
            }

            // passando Status inicial para o pedido
            // Status.ID = 1 / EM PROCESSAMENTO
            pedido.Status.ID = 1;

            resultado = commands["SALVAR"].execute(pedido);
            if (!string.IsNullOrEmpty(resultado.Msg))
            {
                lblResultado.Visible = true;
                lblResultado.Text    = resultado.Msg;
            }
            else
            {
                Response.Redirect("./CheckoutReview.aspx?idPedido=" + pedido.ID);
            }

            //using (ShoppingCartActions usersShoppingCart = new ShoppingCartActions())
            //{
            //    Session["payment_amt"] = usersShoppingCart.GetTotal(); // falta frete
            //}
            //Response.Redirect("~/Checkout/CheckoutStart.aspx");
        }
Example #15
0
        public override List <EntidadeDominio> Consultar(EntidadeDominio entidade)
        {
            if (connection.State == ConnectionState.Closed)
            {
                connection.Open();
            }
            PedidoDetalhe pedidoDetalhe = (PedidoDetalhe)entidade;
            StringBuilder sql           = new StringBuilder();

            sql.Append("SELECT * FROM tb_pedido_detalhe JOIN tb_pedido ON tb_pedido.id_pedido = tb_pedido_detalhe.pedido_fk ");
            sql.Append("JOIN tb_livro ON tb_livro.id_livro = tb_pedido_detalhe.livro_pedido_fk ");

            // WHERE sem efeito, usado apenas para poder diminuir o número de ifs da construção da query
            sql.Append("WHERE 1 = 1 ");

            if (pedidoDetalhe.ID != 0)
            {
                sql.Append("AND id_pedido_detalhe = :1 ");
            }

            if (pedidoDetalhe.IdPedido != 0)
            {
                sql.Append("AND pedido_fk = :2 ");
            }

            if (pedidoDetalhe.Livro.ID != 0)
            {
                sql.Append("AND livro_pedido_fk = :3 ");
            }

            if (pedidoDetalhe.Quantidade != 0)
            {
                sql.Append("AND qtde = :4 ");
            }

            if (pedidoDetalhe.ValorUnit != 0.0)
            {
                sql.Append("AND valor_unit_livro = :5 ");
            }

            sql.Append("ORDER BY tb_pedido_detalhe.id_pedido_detalhe,tb_pedido_detalhe.pedido_fk,tb_pedido_detalhe.livro_pedido_fk ");

            pst.CommandText = sql.ToString();
            parameters      = new NpgsqlParameter[]
            {
                new NpgsqlParameter("1", pedidoDetalhe.ID),
                new NpgsqlParameter("2", pedidoDetalhe.IdPedido),
                new NpgsqlParameter("3", pedidoDetalhe.Livro.ID),
                new NpgsqlParameter("4", pedidoDetalhe.Quantidade),
                new NpgsqlParameter("5", pedidoDetalhe.ValorUnit)
            };

            pst.Parameters.Clear();
            pst.Parameters.AddRange(parameters);
            pst.Connection  = connection;
            pst.CommandType = CommandType.Text;

            reader = pst.ExecuteReader();

            // Lista de retorno da consulta do banco de dados, que conterá os cartões do cliente encontrados
            List <EntidadeDominio> pedidoDetalhes = new List <EntidadeDominio>();

            while (reader.Read())
            {
                pedidoDetalhe          = new PedidoDetalhe();
                pedidoDetalhe.ID       = Convert.ToInt32(reader["id_pedido_detalhe"]);
                pedidoDetalhe.IdPedido = Convert.ToInt32(reader["pedido_fk"]);

                pedidoDetalhe.Livro.ID     = Convert.ToInt32(reader["id_livro"]);
                pedidoDetalhe.Livro.Titulo = reader["titulo_livro"].ToString();

                pedidoDetalhe.Quantidade = Convert.ToInt32(reader["qtde"]);
                pedidoDetalhe.ValorUnit  = Convert.ToSingle(reader["valor_unit_livro"]);

                pedidoDetalhes.Add(pedidoDetalhe);
            }
            connection.Close();
            return(pedidoDetalhes);
        }