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)); }
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)); }