public ActionResult Form(Produto produto) { CategoriasDAO categoriasDAO = new CategoriasDAO(); ViewBag.Categorias = categoriasDAO.Lista(); ViewBag.Produto = produto; return View("Form"); }
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"); } }
public void Atualiza(Produto produto) { using (var contexto = new EstoqueContext()) { contexto.Entry(produto).State = System.Data.Entity.EntityState.Modified; contexto.SaveChanges(); } }
public void Adiciona(Produto produto) { using (var context = new EstoqueContext()) { context.Produtos.Add(produto); context.SaveChanges(); } }
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); }
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(); }
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(); }
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"); } }
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; }