コード例 #1
0
        public ActionResult Create([Bind(Include = "CodigoIdentificador,ExpectativaId,Data,MateriaPrima," +
                                                   "MPLote,MPConsumo,ProdIncio,ProdFim,Maquina,Produto,ProdutoCor,MasterLote,Fornecedor,TempAgua," +
                                                   "NivelOleo,Galho,OffSpec,RefugoKg,UnidadesProduzidas,ContadorInicial,ContadorFinal")] OrdemProducaoPeca ordemProducaoPeca)
        {
            var a = Request.Form["Parada.HoraParada"];
            var b = Request.Form["Parada.HoraRetorno"];
            var c = Request.Form["Parada.Motivo"];
            var d = Request.Form["Parada.Observacoes"];

            if (ModelState.IsValid)
            {
                string[]      hrP    = a.Split(',').ToArray();
                string[]      hrR    = b.Split(',').ToArray();
                string[]      mot    = c.Split(',').ToArray();
                string[]      obs    = d.Split(',').ToArray();
                List <Parada> parada = new List <Parada>();
                for (int x = 0; x < hrP.Count(); x++)
                {
                    Parada p = new Parada();
                    p.HoraParada  = hrP[x];
                    p.HoraRetorno = hrR[x];
                    p.Motivo      = mot[x];
                    p.Observacoes = obs[x];
                    parada.Add(p);
                }

                ordemProducaoPeca.Paradas = parada;

                var qtdOp       = 0;
                var mesAnterior = 0;
                if (db.OrdemProducaoPecas.ToList().Count() > 0)
                {
                    qtdOp       = db.OrdemProducaoPecas.ToList().Last().OPnoMes;
                    mesAnterior = db.OrdemProducaoPecas.ToList().Last().Data.Month;
                }
                if (mesAnterior != ordemProducaoPeca.Data.Month)
                {
                    ordemProducaoPeca.OPnoMes = 1;
                }
                else
                {
                    ordemProducaoPeca.OPnoMes = qtdOp + 1;
                }
                ordemProducaoPeca.Expectativa = db.Expectativas.Find(ordemProducaoPeca.ExpectativaId);
                //db.Entry(ordemProducaoPeca).Reference(f => f.Expectativa).Load();
                ordemProducaoPeca.ConfiguracaoInicial();
                db.OrdemProducaoPecas.Add(ordemProducaoPeca);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.ExpectativaId = new SelectList(db.Expectativas, "ExpectativaId", "Produto", ordemProducaoPeca.ExpectativaId);
            return(View(ordemProducaoPeca));
        }
コード例 #2
0
        public ActionResult Create([Bind(Include = "CodigoIdentificador,ExpectativaId,Data,MateriaPrima," +
                                                   "MPLote,MPConsumo,ProdIncio,ProdFim,MaquinaId,Produto,CorPecaId,MasterLote,Fornecedor,TempAgua," +
                                                   "NivelOleo,Galho,OffSpec,RefugoKg,UnidadesProduzidas,ContadorInicial,ContadorFinal")] OrdemProducaoPeca ordemProducaoPeca, bool Status)
        {
            if (ordemProducaoPeca.MateriaPrima == null)
            {
                ViewBag.MateriaPrima = "Preencha este campo!";
            }

            else
            {
                var a = Request.Form["Parada.HoraParada"];
                var b = Request.Form["Parada.HoraRetorno"];
                var c = Request.Form["Motivo"];
                var d = Request.Form["Parada.Observacoes"];
                var e = Request.Form["Hora"];
                var h = Request.Form["Assinatura"];
                ordemProducaoPeca.Status = Status;
                var maquina = db.Maquinas.Find(ordemProducaoPeca.MaquinaId);
                ordemProducaoPeca.Maquina = maquina;
                var qtdOp       = 0;
                var mesAnterior = 0;
                if (db.OrdemProducaoPecas.Count() > 0)
                {
                    qtdOp       = db.OrdemProducaoPecas.ToList().Last().OPnoMes;
                    mesAnterior = db.OrdemProducaoPecas.ToList().Last().Data.Month;
                }
                else
                {
                    qtdOp       = 0;
                    mesAnterior = 0;
                }
                if (mesAnterior != ordemProducaoPeca.Data.Month)
                {
                    ordemProducaoPeca.OPnoMes = 1;
                }
                else
                {
                    ordemProducaoPeca.OPnoMes = qtdOp + 1;
                }
                ordemProducaoPeca.Expectativa = db.Expectativas.Find(ordemProducaoPeca.ExpectativaId);
                //db.Entry(ordemProducaoPeca).Reference(f => f.Expectativa).Load();


                if (a != null)
                {
                    var           hrP    = a.Split(',');
                    var           hrR    = b.Split(',');
                    var           mot    = c.Split(',');
                    var           obs    = d.Split(',');
                    List <Parada> parada = new List <Parada>();
                    for (int x = 0; x < hrP.Count(); x++)
                    {
                        Parada p = new Parada();
                        p.HoraParada          = hrP[x];
                        p.HoraRetorno         = hrR[x];
                        p.Motivo              = mot[x];
                        p.Observacoes         = obs[x];
                        p.OrdemProducaoPecaId = ordemProducaoPeca.CodigoIdentificador;
                        parada.Add(p);
                    }
                    ordemProducaoPeca.Paradas = parada;
                }

                if (e != null)
                {
                    var           hora     = e.Split(',');
                    List <string> f        = new List <string>(Request.Form.GetValues("ControleDeQualidade.Ciclo"));
                    List <string> g        = new List <string>(Request.Form.GetValues("ControleDeQualidade.PesoDaPeca"));
                    var           ciclo    = f.Select(Double.Parse).ToList();
                    var           pesoPeca = g.Select(Double.Parse).ToList();
                    List <string> peso1    = new List <string>(Request.Form.GetValues("ControleDeQualidade.Peso"));
                    List <string> cor1     = new List <string>(Request.Form.GetValues("ControleDeQualidade.Cor"));
                    List <string> dim      = new List <string>(Request.Form.GetValues("ControleDeQualidade.Dimensao"));

                    peso1 = ordemProducaoPeca.RemoveExtraFalseFromCheckbox(peso1);
                    bool[] peso = peso1.Select(Boolean.Parse).ToArray();

                    cor1 = ordemProducaoPeca.RemoveExtraFalseFromCheckbox(cor1);
                    bool[] cor = cor1.Select(Boolean.Parse).ToArray();

                    dim = ordemProducaoPeca.RemoveExtraFalseFromCheckbox(dim);
                    bool[] dimensao = dim.Select(Boolean.Parse).ToArray();

                    var assinatura = h.Split(',').Select(Int32.Parse).ToArray();
                    List <ControleDeQualidade> ctrlQual = new List <ControleDeQualidade>();
                    for (int x = 0; x < hora.Count(); x++)
                    {
                        ControleDeQualidade c1 = new ControleDeQualidade();
                        c1.Hora                = hora[x];
                        c1.Ciclo               = ciclo[x];
                        c1.PesoDaPeca          = pesoPeca[x];
                        c1.Peso                = peso[x];
                        c1.Cor                 = cor[x];
                        c1.Dimensao            = dimensao[x];
                        c1.Assinatura          = assinatura[x];
                        c1.OrdemProducaoPecaId = ordemProducaoPeca.CodigoIdentificador;
                        ctrlQual.Add(c1);
                        //ordemProducaoPeca.ControleDeQualidade.ValidaInspecao();
                    }
                    ordemProducaoPeca.ControlesDeQualidade = ctrlQual;
                }

                if (ModelState.IsValid)
                {
                    ordemProducaoPeca.ConfiguracaoInicial();
                    db.OrdemProducaoPecas.Add(ordemProducaoPeca);
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }
            }
            //}
            ViewBag.MaquinaId     = new SelectList(db.Maquinas.ToList(), "MaquinaId", "NomeMaquina");
            ViewBag.Assinatura    = new SelectList(db.Usuarios.Where(u => u.Hierarquia == "Acesso Produção" || u.Hierarquia == "Acesso Supervisor"), "UsuarioId", "NomeUsuario");
            ViewBag.CorPecaId     = new SelectList(db.CorPecas, "CorPecaId", "NomeCorPeca", ordemProducaoPeca.CorPecaId);
            ViewBag.ExpectativaId = new SelectList(db.Expectativas, "ExpectativaId", "Produto", ordemProducaoPeca.ExpectativaId);
            return(View(ordemProducaoPeca));
        }