Exemple #1
0
        public ActionResult IndexAll([Bind(Include = "yacimiento,campo, yacimientos,campos,procesados,metodo")] PozosView datamodel, int page = 0, int checkpozoid = 0, int metodo = 0, int?flow = 0)
        {
            int pageindex = page;
            var pagesize  = 12;

            if (flow == 5)
            {
                if (datamodel.metodo == 1)
                {
                    return(RedirectToAction("SorGraph2", "Pozos", datamodel));
                }
                else
                {
                    return(RedirectToAction("SorGraph", "Pozos", datamodel));
                }
            }

            datamodel.procesados = true;
            var campos_Qry = db.cat_campo.ToList().OrderBy(o => o.campo);

            datamodel.campos = new SelectList(campos_Qry, "id_campo", "campo", datamodel.campo);
            if (datamodel.campo == 0)
            {
                datamodel.campo = campos_Qry.FirstOrDefault().id_campo;
            }
            if (datamodel.yacimiento == 0)
            {
                datamodel.yacimiento = db.cat_yacimiento.Where(y => y.id_campo == datamodel.campo).FirstOrDefault().id_yacimiento;
            }

            var yacimientos_Qry = db.cat_yacimiento.Where(w => w.id_campo == datamodel.campo).ToList().OrderBy(o => o.yacimiento);

            if (yacimientos_Qry.Where(y => y.id_yacimiento == datamodel.yacimiento).Count() == 0)
            {
                datamodel.yacimiento = yacimientos_Qry.FirstOrDefault().id_yacimiento;
            }
            datamodel.yacimientos = new SelectList(yacimientos_Qry, "id_yacimiento", "yacimiento", datamodel.yacimiento);
            var detalles = new List <PozosViewDetail>();

            Services.Set(MethodProvider.Get(datamodel.metodo));
            detalles = GetDetalles(datamodel.campo, datamodel.yacimiento, datamodel.procesados).ToList();

            if (pageindex == 0)
            {
                pageindex = 1;
            }
            if ((datamodel.yacimiento != (int?)Session["yacimiento"]) || (datamodel.procesados != (bool?)Session["procesado"]))
            {
                pageindex = 1;
            }
            datamodel.Preguntas = Preguntas.Where(w => w.Metodo == metodo).ToList();
            datamodel.Detalle   = detalles.ToPagedList(pageindex, pagesize);
            ViewBag.SubTitle    = "Inferencia del Método";
            return(View(datamodel));
        }
Exemple #2
0
        public ActionResult Index([Bind(Include = "yacimiento,campo, yacimientos,campos,procesados,metodo")] PozosView datamodel, int page = 0, int checkpozoid = 0, int metodo1 = 0, int?flow = 0, int metodoindex = 0)
        {
            int pageindex = page;
            var pagesize  = 11;

            if (flow == 5)
            {
                return(RedirectToAction("IndexAll", "Pozos", datamodel));
            }


            var campos_Qry = db.cat_campo.ToList().OrderBy(o => o.campo);

            datamodel.campos = new SelectList(campos_Qry, "id_campo", "campo", campos_Qry.FirstOrDefault());

            if (datamodel.campo == 0)
            {
                datamodel.campo = campos_Qry.FirstOrDefault().id_campo;
            }

            if (datamodel.yacimiento == 0)
            {
                datamodel.yacimiento = db.cat_yacimiento.Where(y => y.id_campo == datamodel.campo).FirstOrDefault().id_yacimiento;
            }

            var yacimientos_Qry = db.cat_yacimiento.ToList().OrderBy(o => o.yacimiento).Where(w => w.id_campo == datamodel.campo);

            datamodel.yacimientos = new SelectList(yacimientos_Qry, "id_yacimiento", "yacimiento");

            var detalles = new List <PozosViewDetail>();

            try
            {
                detalles = db.GetPozos(datamodel.campo, datamodel.yacimiento);
                foreach (PozosViewDetail pozo in detalles)
                {
                    detalles.Find(f => f.id_pozo == pozo.id_pozo).estatus = db.respuestasPozos.Where(w => w.Idpozo == pozo.id_pozo && w.metodo == datamodel.metodo).Any().ToString();
                }
            }
            catch { }

            if (datamodel.procesados)
            {
                try
                {
                    detalles = detalles.Where(w => w.estado == "Procesado").ToList();
                }
                catch { }
            }

            if (pageindex == 0)
            {
                pageindex = 1;
            }

            if ((datamodel.yacimiento != (int?)Session["yacimiento"]) || (datamodel.procesados != (bool?)Session["procesado"]))
            {
                pageindex = 1;
            }

            datamodel.Detalle   = detalles.ToPagedList(pageindex, pagesize);
            datamodel.Preguntas = Preguntas.Where(w => w.Metodo == datamodel.metodo).ToList();

            ServCuestionario.ProcesaCuestionarios(datamodel.campo, datamodel.yacimiento, datamodel.metodo);

            Session["yacimiento"] = datamodel.yacimiento;
            Session["procesado"]  = datamodel.procesados;
            ViewBag.Title         = "Sistema Experto";

            ViewBag.SubTitle      = Services.GetMethodName(datamodel.metodo);
            TempData["dataModel"] = datamodel;
            ViewBag.page          = page;
            return(View(datamodel));
        }