Exemple #1
0
 public ActionResult Form(Produto produto)
 {
     CategoriasDAO categoriasDAO = new CategoriasDAO();
     ViewBag.Categorias = categoriasDAO.Lista();
     ViewBag.Produto = produto;
     return View("Form");
 }
Exemple #2
0
        public Produto BuscaPorId(int id)
        {
            DBSession session = new DBSession();
            Query query = session.CreateQuery("select p.*, c.id as categoria_id, c.nome as categoria_nome, c.descricao as descricao_categoria " +
                                    "from produtos p inner join categorias c on p.categoria_id=c.id " +
                                    "where p.id = @produtoId");
            query.SetParameter("produtoId", id);
            IDataReader reader = query.ExecuteQuery();
            Produto produto = null;
            if (reader.Read())
            {
                CategoriaDoProduto categoria = new CategoriaDoProduto()
                {
                    Id = Convert.ToInt32(reader["categoria_id"]),
                    Nome = Convert.ToString(reader["categoria_nome"]),
                    Descricao = Convert.ToString(reader["descricao_categoria"])
                };
                produto = new Produto()
                {
                    Id = Convert.ToInt32(reader["id"]),
                    Nome = Convert.ToString(reader["nome"]),
                    Preco = Convert.ToSingle(reader["preco"]),
                    Descricao = Convert.ToString(reader["descricao"]),
                    Quantidade = Convert.ToInt32(reader["quantidade"]),
                    Categoria = categoria
                };
            }
            reader.Close();

            session.Close();

            return produto;
        }
 public ActionResult Adiciona(Produto produto)
 {
     int idDaInformatica = 1;
     double informatica = 100;
     if(produto.Categoria.Id.Equals(idDaInformatica))
     {
         ModelState.AddModelError("produto.InformaticaComPrecoInvalido", "Produtos da categoria informática devem");
     }
     if (produto.Categoria.Equals(informatica))
     {
         ModelState.AddModelError("produto.InformaticaComPrecoInvalido", "Produtos da categoria informática devem ter preço maior do que 100");
     }
     if(ModelState.IsValid) 
     {
         ProdutoDao dao = new ProdutoDao();
         dao.Salva(produto);
         return RedirectToAction("Index");
     }
     else
     {
         ViewBag.Produto = produto;
         CategoriaDao categoriaDao = new CategoriaDao();
         List<CategoriaDoProduto> categorias = categoriaDao.Lista();
         return View("Form", categorias);
     }
 }
        public ActionResult Adiciona(Produto produto)
        {
            // Validações.
            int idDaInformatica = 1;
            if (produto.CategoriaId.Equals(idDaInformatica) && produto.Preco < 100)
            {
                ModelState.AddModelError("produto.PrecoInvalido", "Produtos da categoria informática devem ter preço maior do que 100 ");

            }

            if (ModelState.IsValid) // saber se o modelo obedece ou nao as regras de validação.
            {
                ProdutosDAO dao = new ProdutosDAO();
                dao.Adiciona(produto);
                return RedirectToAction("Index", "Produto");
            }
            else
            {
                ViewBag.Produto = produto;

                CategoriasDAO categoriasDAO = new CategoriasDAO();
                IList<CategoriaDoProduto> categorias = categoriasDAO.Lista();
                ViewBag.Categorias = categorias;
                return View("Form");

            }
        }
Exemple #5
0
 public void Atualiza(Produto produto)
 {
     using (var contexto = new EstoqueContext())
     {
         contexto.Entry(produto).State = System.Data.Entity.EntityState.Modified;
         contexto.SaveChanges();
     }
 }
Exemple #6
0
 public void Adiciona(Produto produto)
 {
     using (var context = new EstoqueContext())
     {
         context.Produtos.Add(produto);
         context.SaveChanges();
     }
 }
Exemple #7
0
 public void Deleta(Produto produto)
 {
     DBSession session = new DBSession();
     Query query = session.CreateQuery("delete from produtos where id=@id");
     query.SetParameter("id", produto.Id);
     query.ExecuteUpdate();
     session.Close();
 }
 public ActionResult DecrementaQtd(int id)
 {
     ProdutosDAO dao = new ProdutosDAO();
        Produto produto = new Produto();
        produto = dao.BuscaPorId(id);
        produto.Quantidade--;
        dao.Atualiza(produto);
        return Json(produto);
 }
Exemple #9
0
        public void Atualiza(Produto produto)
        {
            DBSession session = new DBSession();

            Query query = session.CreateQuery("update produtos set nome=@nome, preco=@preco, descricao=@descricao, categoria_id=@categoriaId, quantidade=@quantidade where id=@id");
            query.SetParameter("nome", produto.Nome)
                 .SetParameter("preco", produto.Preco)
                 .SetParameter("descricao", produto.Descricao)
                 .SetParameter("categoriaId", produto.Categoria.Id)
                 .SetParameter("quantidade", produto.Quantidade)
                 .SetParameter("id", produto.Id);
            query.ExecuteUpdate();
            session.Close();
        }
Exemple #10
0
        public void Salva(Produto produto)
        {
            DBSession session = new DBSession();

            String sql = String.Format("insert into produtos (nome, preco, descricao, categoria_id, quantidade) values " +
                "(@nome, @preco, @descricao, @categoriaId, @quantidade)");
            Query query = session.CreateQuery(sql);
            query.SetParameter("nome", produto.Nome)
                 .SetParameter("preco", produto.Preco)
                 .SetParameter("descricao", produto.Descricao)
                 .SetParameter("categoriaId", produto.Categoria.Id)
                 .SetParameter("quantidade", produto.Quantidade);
            query.ExecuteUpdate();
            session.Close();
        }
Exemple #11
0
        public ActionResult Adiciona(Produto produto)
        {
            if (!produto.PrecoMaiorOuIgual100())
            {
                ModelState.AddModelError("Produto.InformaticaComPrecoInvalido", "Informática com preço abaixo de 100 reais");
            }

            if (ModelState.IsValid)
            {
                ProdutosDAO produtosDAO = new ProdutosDAO();
                produtosDAO.Adiciona(produto);

                return RedirectToAction("Index", "Home");
            }
            else
            {
                return Form(produto);
            }
        }
        public ActionResult Adiciona(Produto produto)
        {
            int informaticaId = 1;
            if (produto.CategoriaId.Equals(informaticaId) && produto.Preco < 100)
            {
                ModelState.AddModelError("produto.PrecoMenorQueCem", "O preço para Informática deve ser no mínimo 100 reais");
            }

            if (ModelState.IsValid)
            {
                new ProdutosDAO().Adiciona(produto);
                return RedirectToAction("Index");
            }
            else
            {
                ViewBag.Categorias = new CategoriasDAO().Lista();
                ViewBag.Produto = produto;
                return View("Form");
            }
        }
 public ActionResult Adiciona(Produto produto)
 {
     int idDaInformatica = 1;
     if (produto.CategoriaId.Equals(idDaInformatica) && produto.Preco < 100)
     {
         ModelState.AddModelError("produto.InformaticaComPrecoInvalido", "Produtos da categoria informática devem ter preço maior do que 100");
     }
     if (ModelState.IsValid)
     {
         ProdutosDAO dao = new ProdutosDAO();
         dao.Adiciona(produto);
         return RedirectToAction("Index");
     }
     else
     {
         ViewBag.Produto = produto;
         CategoriasDAO categoriasDAO = new CategoriasDAO();
         ViewBag.Categorias = categoriasDAO.Lista();
         return View("Form");
     }
 }
 public ActionResult Adiciona(Produto produto)
 {
     int idDaInformatica = 1;
     if (produto.CategoriaId.Equals(idDaInformatica) && produto.Preco < 100)
     {
         ModelState.AddModelError("produto.Invalido", "Produto da informática com preço abaixo do permitido.");
     }
     if (ModelState.IsValid)
     {
         ProdutosDAO dao = new ProdutosDAO();
         dao.Adiciona(produto);
         //Redireciona para outra action RedirectToAction("Index", "Controller")
         return RedirectToAction("Index");
     }
     else
     {
         ViewBag.Produto = produto;
         CategoriasDAO categoriasDAO = new CategoriasDAO();
         ViewBag.Categorias = categoriasDAO.Lista();
         return View("FormCadastraProduto");
     }
 }
Exemple #15
0
        public Produto BuscaPorId(int id)
        {
            DBSession session = new DBSession();
            Query query = session.CreateQuery("select p.*, c.id as id_categoria, c.nome as nome_categoria, c.descricao as descricao_categoria " +
                                    "from produtos p inner join categorias c on p.categoria_id=c.id " +
                                    "where p.id = @produtoId");
            query.SetParameter("produtoId", id);
            DbDataReader reader = query.ExecuteQuery();
            Produto produto = null;
            if (reader.Read())
            {
                object[] array = new object[50];
                reader.GetValues(array);
                String nome = reader.GetName(8);
                CategoriaDoProduto categoria = new CategoriaDoProduto
                {
                    Id = reader.GetInt32(reader.GetOrdinal("id_categoria")),
                    Nome = reader.GetString(reader.GetOrdinal("nome_categoria")),
                    Descricao = reader.GetString(reader.GetOrdinal("descricao_categoria"))
                };
                produto = new Produto
                {
                    Id = reader.GetInt32(reader.GetOrdinal("id")),
                    Nome = reader.GetString(reader.GetOrdinal("nome")),
                    Preco = reader.GetFloat(reader.GetOrdinal("preco")),
                    Descricao = reader.GetString(reader.GetOrdinal("descricao")),
                    Quantidade = reader.GetInt32(reader.GetOrdinal("quantidade")),
                    Categoria = categoria
                };
            }
            reader.Close();

            session.Close();

            return produto;
        }