public ActionResult ConsultaPonto() { EstoqueDados eDados = new EstoqueDados(); ProdutoDados pDados = new ProdutoDados(); FreezerDados fDados = new FreezerDados(); List <PontoModel> listem = new List <PontoModel>(); List <Estoque> lista = (List <Estoque>)eDados.ListarTodos(); foreach (Estoque e in lista) { Produto p = pDados.ObterPorId(e.Produto.Id); Freezer f = fDados.ObterPorId(e.Freezer.Id); PontoModel em = new PontoModel(); if (e.Quantidade < p.PontoReposicao) { em.NomeProduto = p.Nome; em.Quantidade = e.Quantidade; em.PontoReposicao = p.PontoReposicao; em.QuantRepo = p.PontoReposicao - e.Quantidade; listem.Add(em); } } return(View(listem)); }
public ActionResult ConsultaEstoque() { EstoqueDados eDados = new EstoqueDados(); ProdutoDados pDados = new ProdutoDados(); FreezerDados fDados = new FreezerDados(); List <EstoqueModel> listem = new List <EstoqueModel>(); List <Estoque> lista = (List <Estoque>)eDados.ListarTodos(); foreach (Estoque e in lista) { //if (e.Quantidade == 0) // eDados.Excluir(e); Produto p = pDados.ObterPorId(e.Produto.Id); Freezer f = fDados.ObterPorId(e.Freezer.Id); EstoqueModel em = new EstoqueModel(); em.CodProduto = p.Codigo; em.NomeProduto = p.Nome; em.Freezer = f.Numeracao; em.DescFreezer = f.Descricao; em.Quantidade = e.Quantidade; em.PontoReposicao = p.PontoReposicao; listem.Add(em); } return(View(listem)); }
public ActionResult InstanciaConsulta() { EstoqueDados eDados = new EstoqueDados(); List <EstoqueModel> listem = new List <EstoqueModel>(); List <Estoque> lista = (List <Estoque>)eDados.ListarTodos(); foreach (Estoque e in lista) { if (e.Quantidade == 0) { eDados.Excluir(e); } } return(RedirectToAction("ConsultaEstoque")); }
public ActionResult DeletarProduto(int id) { List <Estoque> listaEst = new EstoqueDados().ObterFreezersPorProduto(id); ProdutoDados pDados = new ProdutoDados(); foreach (Estoque e in listaEst) { if (e.Quantidade == 0) { new EstoqueDados().Excluir(e); } else { ViewBag.MensagemErro = "Você não pode excluir um produto que tenha no estoque."; List <ProdutoModel> listpm = new List <ProdutoModel>(); List <Produto> lista = (List <Produto>)pDados.ListarTodos(); foreach (Produto p in lista) { ProdutoModel pm = new ProdutoModel(); pm.Id = p.Id; pm.Codigo = p.Codigo; pm.Nome = p.Nome; pm.PrecoCompra = p.PrecoCompra; pm.PrecoVenda = p.PrecoVenda; pm.PontoReposicao = p.PontoReposicao; listpm.Add(pm); } return(View("ConsultaProduto", listpm)); } } Produto prod = pDados.ObterPorId(id); pDados.Excluir(prod); return(RedirectToAction("ConsultaProduto")); }
public ActionResult SelecionaArmazenamentoVenda(int id) { ProdutoDados pDados = new ProdutoDados(); Produto p = pDados.ObterPorId(id); List <ProdutoDto> lista = (List <ProdutoDto>)Session["ListaVenda"]; ProdutoDto pDto = lista.Find(x => x.Produto.Id == p.Id); Session["ProdutoVenda"] = pDto; ViewBag.NomeProd = pDto.Produto.Nome.ToString(); ViewBag.QuantProd = pDto.Quantidade.ToString(); EstoqueDados eDados = new EstoqueDados(); CadastroArmazenamentoVendaModel cam = new CadastroArmazenamentoVendaModel(); cam.listaFreezerDisp = cam.listarFreezerDisp(id); List <SelectListItem> listaCombo = new List <SelectListItem>(); List <Estoque> listaAux = cam.listarFreezerDisp(id); foreach (Estoque e in listaAux) { Estoque estAux = new Estoque(); estAux.Freezer = e.Freezer; estAux.Produto = e.Produto; estAux.Quantidade = e.Quantidade; SelectListItem item = new SelectListItem(); item.Value = estAux.Freezer.Id.ToString(); item.Text = estAux.Freezer.Numeracao; listaCombo.Add(item); } cam.ListaFreezer = listaCombo; return(View(cam)); }
public List <Estoque> listarFreezerDisp(int id) { EstoqueDados eDados = new EstoqueDados(); List <Estoque> lista = new List <Estoque>(); List <Estoque> listaAux = eDados.ObterFreezersPorProduto(id); foreach (Estoque e in listaAux) { Estoque estAux = new Estoque(); estAux.Freezer = new FreezerDados().ObterPorId(e.Freezer.Id); estAux.Produto = new ProdutoDados().ObterPorId(e.Produto.Id); estAux.Quantidade = e.Quantidade; if (estAux.Quantidade > 0) { lista.Add(estAux); } else { eDados.Excluir(estAux); } } return(lista); }
public ActionResult AdicionarProduto(CadastroVendaModel model) { int QuantDisponivel; List <ProdutoDto> listaAux = new List <ProdutoDto>(); QuantDisponivel = new EstoqueDados().ObterQuantidadePorId(model.IdProduto); if (Session["ListaVenda"] != null) { listaAux = (List <ProdutoDto>)Session["ListaVenda"]; foreach (ProdutoDto pdto in listaAux) { if (pdto.Produto.Id == model.IdProduto) { QuantDisponivel = QuantDisponivel - pdto.Quantidade; } } } if (model.Quantidade > 0 && model.Quantidade <= QuantDisponivel) { List <ProdutoDto> listaProd = new List <ProdutoDto>(); if (Session["ListaVenda"] != null) { listaProd = (List <ProdutoDto>)Session["ListaVenda"]; } List <ProdutoDto> listaProd2 = new List <ProdutoDto>(); int cont = 0; foreach (ProdutoDto pdto in listaProd) { if (pdto.Produto.Id == model.IdProduto) { cont++; pdto.Quantidade += model.Quantidade; } listaProd2.Add(pdto); } if (cont == 0) { ProdutoDto pDto = new ProdutoDto(); ProdutoDados pDados = new ProdutoDados(); Produto p = pDados.ObterPorId(model.IdProduto); pDto.Produto = p; pDto.Quantidade = model.Quantidade; listaProd2.Add(pDto); } VendaModel vm = new VendaModel(); vm.ListagemProdutosVenda = listaProd2; Session["ListaVenda"] = listaProd2; ModelState.Clear(); ViewBag.MensagemVenda = "Produto adicionado à lista com sucesso."; ViewBag.MensagemVendaErro = null; } else { ModelState.Clear(); ViewBag.MensagemVendaErro = "A quantidade digitada é inválida ou não está disponível no estoque."; ViewBag.MensagemVenda = null; } return(View("AdicaoProduto", new CadastroVendaModel())); }
public ActionResult ArmazenaVenda(CadastroArmazenamentoVendaModel model) { if (model.Quantidade > 0) { ProdutoDto pDto = (ProdutoDto)Session["ProdutoVenda"]; EstoqueDados eDados = new EstoqueDados(); Estoque e = eDados.ObterPorIdComposto(pDto.Produto.Id, model.IdFreezer); if (e != null) { if (model.Quantidade <= e.Quantidade) { if (model.Quantidade <= pDto.Quantidade) { e.Quantidade = e.Quantidade - model.Quantidade; eDados.Alterar(e); pDto.Quantidade = pDto.Quantidade - model.Quantidade; Session["ProdutoVenda"] = pDto; List <ProdutoDto> listaProd = (List <ProdutoDto>)Session["ListaVenda"]; List <ProdutoDto> listaProd2 = new List <ProdutoDto>(); Session["ListaVenda"] = null; foreach (ProdutoDto p in listaProd) { if (p.Produto.Id != pDto.Produto.Id) { listaProd2.Add(p); } } if (pDto.Quantidade != 0) { listaProd2.Add(pDto); } Session["ListaVenda"] = listaProd2; } else { ViewBag.MensagemVenda = "A quantidade que você tentou retirar não condiz com a venda efetuada."; if (Session["ListaVenda"] != null) { VendaModel vm = new VendaModel(); vm.ListagemProdutosVenda = (List <ProdutoDto>)Session["ListaVenda"]; return(View("ArmazenamentoVenda", vm)); } } } else { ViewBag.MensagemVenda = "A quantidade que você solicitou não está disponível no freezer selecionado."; if (Session["ListaVenda"] != null) { VendaModel vm = new VendaModel(); vm.ListagemProdutosVenda = (List <ProdutoDto>)Session["ListaVenda"]; return(View("ArmazenamentoVenda", vm)); } } } else { ViewBag.MensagemVenda = "Você deve preencher todo o formulário."; if (Session["ListaVenda"] != null) { VendaModel vm = new VendaModel(); vm.ListagemProdutosVenda = (List <ProdutoDto>)Session["ListaVenda"]; return(View("ArmazenamentoVenda", vm)); } } } else { ViewBag.MensagemVenda = "A quantidade digitada é inválida."; if (Session["ListaVenda"] != null) { VendaModel vm = new VendaModel(); vm.ListagemProdutosVenda = (List <ProdutoDto>)Session["ListaVenda"]; return(View("ArmazenamentoVenda", vm)); } } if (Session["ListaVenda"] != null) { return(RedirectToAction("ArmazenamentoVenda")); } else { return(RedirectToAction("InstanciaConsulta")); } }
public ActionResult ArmazenaCompra(CadastroArmazenamentoModel model) { if (model.Quantidade > 0) { ProdutoDto pDto = (ProdutoDto)Session["Produto"]; if (model.Quantidade <= pDto.Quantidade) { EstoqueDados eDados = new EstoqueDados(); if (eDados.ObterPorIdComposto(pDto.Produto.Id, model.IdFreezer) != null) { Estoque e = eDados.ObterPorIdComposto(pDto.Produto.Id, model.IdFreezer); e.Quantidade += model.Quantidade; eDados.Alterar(e); } else { FreezerDados fDados = new FreezerDados(); Estoque e = new Estoque(); e.Produto = pDto.Produto; e.Freezer = fDados.ObterPorId(model.IdFreezer); e.Quantidade = model.Quantidade; if (e.Produto != null && e.Freezer != null) { eDados.Inserir(e); } else { ViewBag.Mensagem = "Você deve preencher todo o formulário."; if (Session["Lista"] != null) { CompraModel cm = new CompraModel(); cm.ListagemProdutosCompra = (List <ProdutoDto>)Session["Lista"]; return(View("ArmazenamentoCompra", cm)); } } } pDto.Quantidade = pDto.Quantidade - model.Quantidade; Session["Produto"] = pDto; List <ProdutoDto> listaProd = (List <ProdutoDto>)Session["Lista"]; List <ProdutoDto> listaProd2 = new List <ProdutoDto>(); Session["Lista"] = null; foreach (ProdutoDto p in listaProd) { if (p.Produto.Id != pDto.Produto.Id) { listaProd2.Add(p); } } if (pDto.Quantidade != 0) { listaProd2.Add(pDto); } Session["Lista"] = listaProd2; } else { ViewBag.Mensagem = "A quantidade que você tentou inserir não condiz com a compra efetuada."; if (Session["Lista"] != null) { CompraModel cm = new CompraModel(); cm.ListagemProdutosCompra = (List <ProdutoDto>)Session["Lista"]; return(View("ArmazenamentoCompra", cm)); } } } else { ViewBag.Mensagem = "A quantidade digitada é inválida."; if (Session["Lista"] != null) { CompraModel cm = new CompraModel(); cm.ListagemProdutosCompra = (List <ProdutoDto>)Session["Lista"]; return(View("ArmazenamentoCompra", cm)); } } if (Session["Lista"] != null) { return(RedirectToAction("ArmazenamentoCompra")); } else { return(RedirectToAction("InstanciaConsulta")); } }