public ActionResult CadastroAmostras(LimiteControleViewModel model) { try { if (ModelState.IsValid) { var l = new Lote(); l.UsuarioAnalise = new Usuario(); l.Maquina = new Maquina(); l.IdLote = model.CadastroLoteAmostra.IdLote; l.DataHora = DateTime.Now; l.QtdTotal = model.CadastroLoteAmostra.QtdTotal; l.QtdReprovada = model.CadastroLoteAmostra.QtdReprovada; l.PercentualReprovado = Convert.ToDecimal(l.QtdReprovada) / Convert.ToDecimal(l.QtdTotal); l.Comentario = model.CadastroLoteAmostra.Comentario; l.UsuarioAnalise.IdUsuario = model.CadastroLoteAmostra.UsuarioAnalise.IdUsuario; l.TipoLote = model.CadastroLoteAmostra.TipoLote; l.Maquina.IdMaquina = model.CadastroLoteAmostra.IdMaquina; new LoteDAL().CadastrarLoteAmostra(l); TempData["Sucesso"] = true; TempData["Mensagem"] = $"Lote {model.CadastroLoteAmostra.IdLote} cadastrado com sucesso"; ModelState.Clear(); } } catch (Exception e) { TempData["Sucesso"] = false; TempData["Mensagem"] = $"Erro: {e.Message}"; } return(CadastroAmostras()); }
// GET: AreaRestrita/Lote public ActionResult CadastroAmostras() { var model = new LimiteControleViewModel(); model.CadastroLoteAmostra = new CadastroLoteAmostraViewModel(); model.CadastroLoteAmostra.UsuarioAnalise = new Usuario(); try { model.ConsultaLoteAmostra = ConsultarAmostras(); model.CadastroLoteAmostra.TipoCarta = new LimiteControle().TipoCarta; model.CadastroLoteAmostra.UsuarioAnalise = (Usuario)Session["usuario"]; model.CadastroLoteAmostra.TipoLote = Entidades.Enuns.TipoLote.Amostra; model.CadastroLoteAmostra.QtdTotal = model.ConsultaLoteAmostra.Count > 0 ? model.ConsultaLoteAmostra.FirstOrDefault().QtdTotal : 0; model.CadastroLoteAmostra.IdMaquina = model.ConsultaLoteAmostra.Count > 0 ? model.ConsultaLoteAmostra.FirstOrDefault().Maquina.IdMaquina : 0; } catch (Exception e) { TempData["Sucesso"] = false; TempData["Mensagem"] = "Erro: " + e.Message; } return(View(model)); }
private LimiteControleViewModel CalcularLimiteControle() { try { var model = new LimiteControleViewModel(); model.LimiteControle = new LimiteControle(); model.ConsultaLoteAmostra = ConsultarAmostras(); double totalDefeitos = model.ConsultaLoteAmostra.Sum(m => m.QtdReprovada); double qtdAmostras = model.ConsultaLoteAmostra.Count(); double qtdInspecao = model.ConsultaLoteAmostra.FirstOrDefault().QtdTotal; double p = Math.Round(totalDefeitos / (qtdAmostras * qtdInspecao), 4); model.LimiteControle.LC = Convert.ToDecimal(p); model.LimiteControle.LSC = Math.Round(Convert.ToDecimal(p + 3 * Math.Sqrt((p * (1 - p)) / qtdAmostras)), 4); model.LimiteControle.LIC = Math.Round(Convert.ToDecimal(p - 3 * Math.Sqrt((p * (1 - p)) / qtdAmostras)), 4); return(model); } catch (Exception e) { throw e; } }
public ActionResult ConsultaAmostras(int id) { var model = new LimiteControleViewModel(); model.ConsultaLoteAmostra = ConsultarAmostras(id); model.LimiteControle = new LimiteDAL().ConsultarLimiteControle(null, id).FirstOrDefault(); return(View(model)); }