コード例 #1
0
        public ActionResult RemoverItem(int id)
        {
            ItemVenda itemVenda = ItemVendaDAO.BuscarItemVendaPorId(id);

            ItemVendaDAO.RemoverItem(itemVenda);
            return(RedirectToAction("CarrinhoCompras"));
        }
コード例 #2
0
ファイル: MItemVenda.cs プロジェクト: sarah-duarte/LojaRoupas
        public List <ItemVenda> ListarItemVenda(int idVenda)
        {
            List <ItemVenda> Lista = new List <ItemVenda>();

            this.Conect();
            sql = "SELECT id, idproduto, qtditens, totalpreco, prcvenda, idvenda FROM tbitemvenda where idvenda = @idvenda order by id;";
            cmd = new NpgsqlCommand(sql, con);
            cmd.Parameters.AddWithValue("idvenda", idVenda);
            cmd.Prepare();
            rdr = cmd.ExecuteReader();

            while (rdr.Read())
            {
                ItemVenda i = new ItemVenda();
                i.setID(rdr.GetInt32(0));
                i.setIdProduto(rdr.GetInt32(1));
                i.setQtdItens(rdr.GetInt32(2));
                i.setTotalPreco(rdr.GetDouble(3));
                i.SetPrcVenda(rdr.GetDouble(4));
                i.setIdDocumento(rdr.GetInt32(5));
                Lista.Add(i);
            }
            this.Desconect();
            return(Lista);
        }
コード例 #3
0
        public ActionResult RemoverItemCarrinho(int?id)
        {
            ItemVenda iv = ItemVendaDAO.BuscarItemVendaPorId(id);

            ItemVendaDAO.RemoverItemVenda(iv);
            return(RedirectToAction("CarrinhoDeCompras", "Home"));
        }
コード例 #4
0
        public ResultadoOperacao ConsistirNovoItem(ItemVenda itemVenda)
        {
            ResultadoOperacao resultado = this.ItemVendaValidator.ConsistirPreco(itemVenda.Preco);

            if (resultado.VerificarFalhaOperacao())
            {
                resultado.Campo = CAMPO_ITEM_PRECO;
                return(resultado);
            }

            resultado = this.ItemVendaValidator.ConsistirQuantidade(itemVenda.Quantidade);
            if (resultado.VerificarFalhaOperacao())
            {
                resultado.Campo = CAMPO_ITEM_QUANTIDADE;
                return(resultado);
            }

            resultado = this.ItemVendaValidator.ConsistirDesconto(itemVenda.Desconto);
            if (resultado.VerificarFalhaOperacao())
            {
                resultado.Campo = CAMPO_ITEM_DESCONTO;
                return(resultado);
            }

            return(new ResultadoSucesso());
        }
コード例 #5
0
        public ActionResult AdicionarAoCarrinho(int id)
        {
            Produto produto = produtoDAO.BuscarPorId(id);

            foreach (ItemVenda item in itemVendaDAO.ListarPorCarrinho(Sessao.RetornarCarrinhoId().ToString()))
            {
                if (item.Produto.IdProduto == id)
                {
                    item.Quantidade += 1;

                    itemVendaDAO.Atualizar(item);
                    return(RedirectToAction("CarrinhoCompras"));
                }
            }
            ItemVenda itemVenda = new ItemVenda
            {
                Produto    = produto,
                Quantidade = 1,
                Preco      = produto.Preco,
                Data       = DateTime.Now,
                CarrinhoId = Sessao.RetornarCarrinhoId().ToString()
            };

            itemVendaDAO.AdicionarItem(itemVenda);
            return(RedirectToAction("CarrinhoCompras"));
        }
コード例 #6
0
        public void SetVenda(ItemVenda it)
        {
            Venda v = new Venda();

            v.Data = DateTime.Now;
            v.Id   = it.IdVenda;
        }
コード例 #7
0
        // Caso adicionar seja true, então adiciona +1 ao carrinho
        // Caso adicionar seja false, então remove -1 do carrinho
        public static ItemVenda EditaQuantidadeItemVendaNoCarrinho(Produto produto, bool adicionar)
        {
            var sessaoId = Sessao.RetornarCarrinhoId();

            ItemVenda itemCarrinho = contexto.ItensVenda.FirstOrDefault(_ => _.Produto.ProdutoId == produto.ProdutoId && _.CarrinhoId == sessaoId);

            if (adicionar)
            {
                if (itemCarrinho == null)
                {
                    itemCarrinho            = new ItemVenda();
                    itemCarrinho.Produto    = produto;
                    itemCarrinho.Preco      = produto.Preco;
                    itemCarrinho.Data       = DateTime.Now;
                    itemCarrinho.CarrinhoId = sessaoId;
                    itemCarrinho.Quantidade = 1;
                }
                else
                {
                    AumentarItemNoCarrinho(itemCarrinho);
                }
            }
            else
            {
                if (!DiminuirItemAteUm(itemCarrinho))
                {
                    RemoverItem(itemCarrinho.ItemVendaId);
                }
            }

            return(itemCarrinho);
        }
コード例 #8
0
        // GET: ItemVenda/Create
        public ActionResult Create(int id)
        {
            ItemVenda iv = new ItemVenda();

            string carrinhoId = Util.Util.RetornarCarrinhoId();

            iv = db.ItensVenda.FirstOrDefault(x => x.CarrinhoId.Equals(carrinhoId) && x.JogoId == id);
            if (iv == null)
            {
                iv                     = new ItemVenda();
                iv.CarrinhoId          = Util.Util.RetornarCarrinhoId();
                iv.JogoId              = id;
                iv.ItemVendaData       = DateTime.Now;
                iv.ItemVendaQuantidade = 1;
                iv.Jogo                = db.Jogos.Find(id);
                if (ModelState.IsValid)
                {
                    db.ItensVenda.Add(iv);
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }
            }
            else
            {
                iv.ItemVendaQuantidade++;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }


            ViewBag.JogoId = new SelectList(db.Jogos, "JogoId", "JogoNome", iv.JogoId);
            return(View(iv));
        }
コード例 #9
0
ファイル: ItemVendaDAO.cs プロジェクト: TiranoMax/ASP.NET_
        public static void AumentarItemCart(int id)
        {
            ItemVenda item = contexto.ItemVenda.Find(id);

            item.Qtde++;
            contexto.SaveChanges();
        }
コード例 #10
0
        public void Deletar(ItemVenda itemVenda)
        {
            var entry = _contexto.Entry <ItemVenda>(itemVenda);

            entry.State = System.Data.Entity.EntityState.Deleted;
            _contexto.SaveChanges();
        }
コード例 #11
0
        public static void AumentarItem(int id)
        {
            ItemVenda venda = context.ItensVenda.Find(id);

            venda.QtdeVenda++;
            context.SaveChanges();
        }
コード例 #12
0
        public ItemVenda Adicionar(ItemVenda itemVenda)
        {
            var resultado = _contexto.ItensVenda.Add(itemVenda);

            _contexto.SaveChanges();
            return(resultado);
        }
コード例 #13
0
        public static ItemVenda BuscarPorId(long id)
        {
            ItemVenda itemVenda = null;

            try
            {
                SqlCommand cmd;
                cmd = new SqlCommand("select iv.id, iv.quantidade, iv.valor, iv.id_produto, iv.id_venda from item_venda as iv where iv.id=@id", DBUtil.getConnection());
                DBUtil.getConnection().Open();
                cmd.Parameters.AddWithValue("@id", id);
                cmd.ExecuteNonQuery();

                DataTable dt = new DataTable();

                SqlDataAdapter da = new SqlDataAdapter();
                da.SelectCommand = cmd;
                da.Fill(dt);

                itemVenda = getItemVenda(dt.Rows[0].ItemArray);
            }
            catch (Exception e)
            {
                Debug.WriteLine("Erro ao buscar por id do item venda" + e.Message);
            }
            finally
            {
                DBUtil.closeConnection();
            }

            return(itemVenda);
        }
コード例 #14
0
        public void Obter_SubTotal_Produto_Nulo_Item_Venda_Test()
        {
            ItemVenda itemVenda = new ItemVenda();

            itemVenda.Qtd = 10;
            itemVenda.ObterSubTotal();
        }
コード例 #15
0
        public HttpResponseMessage BuscarPorId(int id)
        {
            ItemVenda retorno   = null;
            var       formatter = new JsonMediaTypeFormatter();
            string    mensagem  = null;

            try
            {
                if (ModelState.IsValid)
                {
                    retorno = _itemVendaAppServiceBase.GetById(id);

                    if (retorno == null)
                    {
                        mensagem = "Item da Venda por Id não encontrado.";
                    }
                }
                var jsonSerialize = new JsonSerialize();
                jsonSerialize.SerializarJson(formatter);
            }
            catch (Exception ex)
            {
                mensagem = "Houve um erro interno:" + ex;
            }

            return(Request.CreateResponse(System.Net.HttpStatusCode.OK, new { retorno, mensagem }, formatter));
        }
コード例 #16
0
        internal void RealizarVenda(int clienteId, int vendedorId, int produtoId, int quantidade)
        {
            database1Entities1 context   = new database1Entities1();
            ProdutoGD          produtoGD = new ProdutoGD(context);

            var produto  = produtoGD.RecuperarPorId(produtoId);
            var cliente  = new ClienteGD(context).RecuperarPorId(clienteId);
            var vendedor = new VendedorGD(context).RecuperarPorId(vendedorId);

            if ((produto.estoque - quantidade) < 0)
            {
                throw new Exception("quantidade excedida");
            }
            produto.estoque -= quantidade;

            produtoGD.Editar(produto);

            Venda venda = new Venda()
            {
                data     = DateTime.Now,
                Cliente  = cliente,
                Vendedor = vendedor
            };
            ItemVenda itemVenda = new ItemVenda()
            {
                precoUnitario = produto.precoUnitario,
                quantidade    = quantidade,
                Produto       = produto,
                Venda         = venda
            };

            new VendaGD(context).Adicionar(venda);
            new ItemVendaGD(context).Adicionar(itemVenda);
        }
コード例 #17
0
ファイル: ItemVendaDAO.cs プロジェクト: lczyzy/hotelcachorro
        public void AumentarQuantidade(int id)
        {
            ItemVenda i = BuscarPorId(id);

            i.Quantidade++;
            Alterar(i);
        }
コード例 #18
0
        public void Atualizar(ItemVenda entity)
        {
            contexto.Entry(entity).State =
                System.Data.Entity.EntityState.Modified;

            contexto.SaveChanges();
        }
コード例 #19
0
        public JsonResult VenderProduto(ItemVenda venda)
        {
            // Valida se tem estoque
            ProdutoEmEvento estoque = _context.ProdutoEmEvento.First(pe => pe.Eventos.IdEvento == venda.IdEvento && pe.Produto.IdProduto == venda.IdProduto);

            if (estoque.Quantidade > 0)
            {
                venda.Produto = _context.Produtos.First(p => p.IdProduto == venda.IdProduto);
                venda.Evento  = _context.Eventos.First(e => e.IdEvento == venda.IdEvento);
                // Atualiza valor
                venda.ValorUnit     = venda.Produto.ValorProduto;
                venda.ValorTotal    = venda.ValorUnit * venda.Quantidade;
                venda.Evento.Caixa += venda.ValorTotal;

                // Registra a venda
                _context.ItemVenda.Add(venda);

                // Atualiza o caixa
                _context.Eventos.Update(venda.Evento);

                // Atualiza o estoque
                estoque.Quantidade = estoque.Quantidade - 1;
                _context.ProdutoEmEvento.Update(estoque);
                _context.SaveChanges();
                return(Json(new { codigo = 1, mensagem = "Venda efetuada!" }));
            }
            else
            {
                return(Json(new { codigo = 2, mensagem = "Produto esgotado!" }));
            }
        }
コード例 #20
0
        public ActionResult Detalhes(string CarrinhoId)
        {
            Venda     v  = new Venda();
            ItemVenda iv = new ItemVenda();
            Cliente   c  = new Cliente();



            v  = VendaDAO.BuscarCarrinhoPorId(CarrinhoId);
            iv = ItemVendaDAO.BuscarCarrinhoPorId(CarrinhoId);
            c  = ClienteDAO.BuscarDadosClientePorEmail(v.Email);

            ViewData["IdVenda"]       = v.VendaId;
            ViewData["StatusServico"] = v.StatusVenda;
            ViewData["NomeProduto"]   = iv.Produto.Nome;
            ViewData["ImagemProduto"] = iv.Produto.Imagem;
            ViewData["Preco"]         = iv.Produto.Preco;
            ViewData["Cep"]           = v.Cep;
            ViewData["Rua"]           = v.Logradouro;
            ViewData["Numero"]        = v.NumeroRua;
            ViewData["PlacaCarro"]    = v.PlacaCarro;
            ViewData["MarcaCarro"]    = v.MarcaCarro;
            ViewData["NomeCliente"]   = c.Nome;



            return(View(iv));
        }
コード例 #21
0
        public List <ItemVenda> BuscarPorVenda(int idVenda)
        {
            var lst = new List <ItemVenda>();

            //Criando uma conexão com o banco de dados
            using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["Db"].ConnectionString))
            {
                //Criando instrução sql para selecionar todos os registros na tabela de Categorias
                string strSQL = @"SELECT 
                                      IV.*, 
                                      P.NOME AS NOME_PRODUTO,
                                      V.NOMECLIENTE
                                  FROM ITEM_VENDA IV
                                  INNER JOIN PRODUTO P ON (P.ID = IV.ID_PRODUTO) 
                                  INNER JOIN VENDA   V ON (V.ID = IV.ID_VENDA)
                                  WHERE IV.ID_VENDA = @ID_VENDA;";

                //Criando um comando sql que será executado na base de dados
                using (SqlCommand cmd = new SqlCommand(strSQL))
                {
                    //Abrindo conexão com o banco de dados
                    conn.Open();
                    cmd.Connection = conn;
                    cmd.Parameters.Add("@ID_VENDA", SqlDbType.Int).Value = idVenda;
                    cmd.CommandText = strSQL;

                    //Executando instrução sql
                    var dataReader = cmd.ExecuteReader();
                    var dt         = new DataTable();
                    dt.Load(dataReader);
                    //Fechando conexão com o banco de dados
                    conn.Close();

                    //Percorrendo todos os registros encontrados na base de dados e adicionando em uma lista
                    foreach (DataRow row in dt.Rows)
                    {
                        var itemVenda = new ItemVenda()
                        {
                            Id    = Convert.ToInt32(row["id"]),
                            Venda = new Venda()
                            {
                                Id          = Convert.ToInt32(row["id_venda"]),
                                NomeCliente = row["NomeCliente"].ToString()
                            },
                            Produto = new Produto()
                            {
                                Id   = Convert.ToInt32(row["id_produto"]),
                                Nome = row["NOME_PRODUTO"].ToString()
                            },
                            Quantidade     = Convert.ToInt32(row["Quantidade"]),
                            Valor_Unitario = Convert.ToDecimal(row["Valor_Unitario"])
                        };

                        lst.Add(itemVenda);
                    }
                }
            }

            return(lst);
        }
コード例 #22
0
        public static void Incrementar(int id)
        {
            ItemVenda item = context.ItensVenda.Find(id);

            item.Quantidade++;
            context.SaveChanges();
        }
コード例 #23
0
        private void lv_itens_venda_DoubleClick(object sender, EventArgs e)
        {
            ItemVenda itemVendaSelecionado = (ItemVenda)lv_itens_venda.SelectedItems[0].Tag;

            venda.itensVenda.Remove(itemVendaSelecionado);
            ExibirItensVenda(venda.itensVenda);
        }
コード例 #24
0
        private void AddItensPedido_Click(object sender, RoutedEventArgs e)
        {
            itemVenda         = new ItemVenda();
            itemVenda.Pizzas  = listaPizza;
            itemVenda.Bebidas = listaBebidas;
            double precoBebida = 0, precoPizza = 0;

            foreach (var pizza in listaPizza)
            {
                precoPizza += pizza.Tamanho.Preco;
            }
            foreach (var bebida in listaBebidas)
            {
                precoBebida += bebida.Preco;
            }
            itemVenda.Preco = precoBebida + precoPizza;
            listaItemVenda.Add(itemVenda);

            dynamic d = new
            {
                Tamanho     = pizza.Tamanho.Nome,
                PreçoPizza  = pizza.Tamanho.Preco,
                SaboresQqtd = pizza.Tamanho.QtdSabores,
                Bebida      = bebida.Nome,
                PreçoBebida = bebida.Preco,
                Preço       = pizza.Tamanho.Preco + bebida.Preco
            };

            ListaProdutos.Add(d);
            dtaItensVenda.ItemsSource = ListaProdutos;
            dtaItensVenda.Items.Refresh();
        }
コード例 #25
0
        //salvar item
        public void SalvarItemVenda(ItemVenda itemVenda)
        {
            try
            {
                Conectar();

                //pegar a última info inserida
                command = new MySqlCommand("select max(codVenda) from venda;", conexao);
                MySqlDataReader dr = command.ExecuteReader();
                while (dr.Read())
                {
                    itemVenda.Venda.CodVenda = dr.GetInt64("max(codVenda)");
                }
                dr.Close();

                command = new MySqlCommand("insert into itemvenda (Livro_codLivro, quantidade, subTotal, Venda_codVenda) value (@codLivro, @quantidade, @subTotal, @codVenda)", conexao); //conexao está referente as infos do banco

                command.Parameters.AddWithValue("@quantidade", itemVenda.Quantidade);
                command.Parameters.AddWithValue("@subTotal", itemVenda.SubTotal);
                command.Parameters.AddWithValue("@codLivro", itemVenda.Livro.CodLivro);
                command.Parameters.AddWithValue("@codVenda", itemVenda.Venda.CodVenda);
                command.ExecuteNonQuery();
            }
            catch (Exception error)
            {
                throw error;
            }
        }
コード例 #26
0
        public void InserirItemVenda(ItemVenda itemVenda)
        {
            conexao.InserirItemVenda(itemVenda);
            CProduto produto = new CProduto();

            produto.SaidaEstoqueProduto(itemVenda.getQtdItens(), itemVenda.getIdProduto());
        }
コード例 #27
0
        public static void AdicionarItem(int id)
        {
            ItemVenda item = ctx.ItensVenda.Find(id);

            item.Quantidade++;
            ctx.SaveChanges();
        }
コード例 #28
0
        public static bool InsertVendaEItemOnTable(Venda V)
        {
            LojaEntities db = SingletonObjectContext.Instance.Context;

            try
            {
                for (int i = 0; i < ItemVendaDAO.GetListItens().Count; i++)
                {
                    var IV  = new ItemVenda();
                    var VEI = new VendaEItem();
                    var P   = new Produto();
                    VEI.Venda     = V;
                    VEI.ItemVenda = ItemVendaDAO.GetListItens()[i];
                    P.Codigo      = VEI.ItemVenda.Produto.Codigo;
                    P             = ProdutoDAO.FindCodigo(P);
                    P.Estoque    -= VEI.ItemVenda.Quant;
                    ProdutoDAO.Alter(P);
                    ItemVendaDAO.Insert(VEI.ItemVenda);
                    VEI.ItemVenda = ItemVendaDAO.Find(VEI.ItemVenda);
                    VendaEItemDAO.Insert(VEI);
                }
                ItemVendaDAO.ClearList();
                return(true);
            }
            catch
            {
                return(false);
            }
        }
コード例 #29
0
        public ActionResult DiminuirQuantidadeItemVenda(int?id)
        {
            ItemVenda iv = ItemVendaDAO.BuscarItemVendaPorId(id);

            ItemVendaDAO.DiminuirQuantidadeItemVenda(iv);
            return(RedirectToAction("CarrinhoDeCompras", "Home"));
        }
コード例 #30
0
        public ActionResult AdicionarAoCarrinho(int id)
        {
            ViewBag.Title = "Carrinho Compras";
            Produto produto = ProdutoDAO.BuscarProdutoPorId(id);
            var     itens   = ItemVendaDAO.RetornarItensVendaPorCarrinho(Usuario.UsuarioId.ToString());

            if (!itens.Where(a => a.Produto.Categoria.Nome == produto.Categoria.Nome).Any())
            {
                ItemVenda item = new ItemVenda
                {
                    Produto    = produto,
                    Preco      = produto.Preco,
                    Quantidade = 1,
                    Data       = DateTime.Now,
                    CarrinhoId = Usuario.UsuarioId.ToString(),
                    Carrinho   = true
                };
                ItemVendaDAO.CadastrarItemVenda(item);
                return(RedirectToAction("CarrinhoCompras"));
            }
            else
            {
                TempData["Erro"] = new Erros {
                    Erro = true, Data = "Só é possível adicionar 1 produto por categoria."
                };
                return(RedirectToAction("Index"));
            }
        }