public ActionResult Ver() { if (SessionHandler.Logged && SessionHandler.Perfil == 5) { if (RouteData.Values["id"] != null) { string id = RouteData.Values["id"].ToString(); if (StringHelper.ContarCaracteres(id, '-') == 3) { EtapasModel modelEtapas = new EtapasModel(); MantenedorModel modelMantenedor = new MantenedorModel(); CuentaActivaModel modelCuentaActiva = new CuentaActivaModel(); ViewBag.UsuarioNombre = SessionHandler.Usuario; ViewBag.Menu = MenuHelper.menuPorPerfil(SessionHandler.Perfil); string[] campos = id.Split('-'); string numero = campos[0]; int cuentaId = int.Parse(campos[1]); int mes = int.Parse(campos[2]); int año = int.Parse(campos[3]); ViewBag.PageTitle = "Analisis Cuenta: " + numero; ViewBag.Numero = numero; ViewBag.Mes = StringHelper.DosNumeros(mes); ViewBag.Año = año; CuentaActiva cuenta = modelCuentaActiva.obtenerCuentaActivaPorId(cuentaId, mes, año); //Usuario usuario = modelMantenedor.ObtenerUsuarioPorId(cuenta.id); ViewBag.Empresa = cuenta.empresa.razonSocial; ViewBag.Rubro = cuenta.rubro.rubroNombre; ViewBag.Grupo = cuenta.grupo.grupoNombre; string botones = ""; botones = "<a class='btn btn-info blue' onclick='agregarArchivo()'>Agregar Archivo</a> "; botones += "<a class='btn btn-info blue' onclick='prepararEnviar()'>Finalizar Cuenta</a> "; botones += "<a class='btn btn-info blue' onclick='prepararRetroceder()'> Retroceder a Validación </a>"; if (cuenta.cuentaActivaEstado == 3) { ViewBag.botones = botones; } ViewBag.Analista = cuenta.analista.nombre; ViewBag.Validador = cuenta.validador.nombre; ViewBag.Certificador = cuenta.certificador.nombre; ViewBag.Archivos = this.ListaArchivos(cuentaId, mes, año, 3); ViewBag.CuentaId = cuentaId; ViewBag.CuentaFecha = cuenta.cuentaActivaFecha; ViewBag.LineaDeTiempo = this.TimeLine(cuentaId, mes, año); ViewBag.Logs = this.ListaLogs(cuentaId, mes, año); ViewBag.LogStatus = modelEtapas.ObtenerCuentaActivaEstadoLog(cuentaId, mes, año); return(View()); } } return(Redirect("~/Certificacion/Index")); } else { return(Redirect("~/Login/Index")); } }
public ActionResult Descargar(string annos, string meses, string empresas, string rubros, string grupos, string cuentas) { var modelReporte = new ReporteModel(); var modelEtapas = new EtapasModel(); var lista = new List <List <string> >(); var cuentasActivas = modelReporte.ObtenerCuentasActivasPorFiltro( validarArreglo(annos), validarArreglo(meses), validarArreglo(empresas), validarArreglo(rubros), validarArreglo(grupos), validarArreglo(cuentas) ); foreach (var cuenta in cuentasActivas) { var fila = new List <string>(); int estado = modelEtapas.ObtenerCuentaActivaEstadoLog(cuenta.cuentaActivaId, cuenta.cuentaActivaFecha.Month, cuenta.cuentaActivaFecha.Year); string estadoStr = ""; string descripcion = ""; switch (estado) { case 0: estadoStr = "0%"; descripcion = "En Borrador"; break; case 1: estadoStr = "33%"; descripcion = "Rechazado desde Validación"; break; case 2: estadoStr = "66%"; descripcion = "Enviado a Validación"; break; case 3: estadoStr = "66%"; descripcion = "Enviado a Certificación"; break; case 4: estadoStr = "66%"; descripcion = "Rechazado desde Certificación"; break; case 5: estadoStr = "100%"; descripcion = "Certificado"; break; } fila.Add(cuenta.empresa.razonSocial); fila.Add(cuenta.numero); fila.Add(cuenta.rubro.rubroNombre); fila.Add(cuenta.grupo.grupoNombre); fila.Add(StringHelper.fechaDMA(cuenta.cuentaActivaFecha)); fila.Add(cuenta.cuentaActivaDiasPlazo.ToString()); fila.Add(descripcion); fila.Add(cuenta.analista.nombre); fila.Add(cuenta.validador.nombre); fila.Add(cuenta.certificador.nombre); fila.Add(estadoStr); lista.Add(fila); } //string archivo = modelReporte.GenerarExcel(lista); string path = HostingEnvironment.ApplicationPhysicalPath + "Archivos\\"; string file = StringHelper.HashUnico("Excel_", ".xlsx"); System.IO.File.Copy(path + "Plantillas\\Plantilla_Reporte1.xlsx", path + "Temporal\\" + file, true); modelReporte.GenerarReporte1(path + "Temporal\\" + file, lista); byte[] contenido = GetFile(path + "Temporal\\" + file);; return(File(contenido, "application/force-download", "CuentasActivas-" + DateTime.Now.ToShortDateString() + ".xlsx")); //} //else //{ // switch (usuarioId) // { // case -1: // return Json(new { response = "error", message = "Nombre de Usuario o password Incorrecto" }, JsonRequestBehavior.AllowGet); // case -2: // return Json(new { response = "error", message = "No se ha podido establecer una conexion con el Servidor" }, JsonRequestBehavior.AllowGet); // } // return Json(new { response = "error", message = "Error Desconocido" }, JsonRequestBehavior.AllowGet); //} }
public ActionResult Filtrar(string annos, string meses, string empresas, string rubros, string grupos, string cuentas) { var modelReporte = new ReporteModel(); var modelEtapas = new EtapasModel(); var lista = new List <List <string> >(); var cuentasActivas = modelReporte.ObtenerCuentasActivasPorFiltro( validarArreglo(annos), validarArreglo(meses), validarArreglo(empresas), validarArreglo(rubros), validarArreglo(grupos), validarArreglo(cuentas) ); foreach (var cuenta in cuentasActivas) { var fila = new List <string>(); int estado = modelEtapas.ObtenerCuentaActivaEstadoLog(cuenta.cuentaActivaId, cuenta.cuentaActivaFecha.Month, cuenta.cuentaActivaFecha.Year); string estadoStr = ""; string descripcion = ""; switch (estado) { case 0: estadoStr = "<b>0%</b>"; descripcion = "En Borrador"; break; case 1: estadoStr = "<b style='color: #ff0000'>33%</b>"; descripcion = "Rechazado desde Validación"; break; case 2: estadoStr = "<b style='color: #ff6600;'>66%</b>"; descripcion = "Enviado a Validación"; break; case 3: estadoStr = "<b style='color: #ff6600;'>66%</b>"; descripcion = "Enviado a Certificación"; break; case 4: estadoStr = "<b style='color: #ff6600;'>66%</b>"; descripcion = "Rechazado desde Certificación"; break; case 5: estadoStr = "<b style='color: #66ff33;'>100%</b>"; descripcion = "Certificado"; break; } fila.Add(cuenta.empresa.razonSocial); fila.Add(cuenta.numero); fila.Add(cuenta.rubro.rubroNombre); fila.Add(cuenta.grupo.grupoNombre); fila.Add(StringHelper.fechaDMA(cuenta.cuentaActivaFecha)); fila.Add(cuenta.cuentaActivaDiasPlazo.ToString()); fila.Add(descripcion); fila.Add(cuenta.analista.nombre); fila.Add(cuenta.validador.nombre); fila.Add(cuenta.certificador.nombre); fila.Add(estadoStr); lista.Add(fila); } return(Json(new { data = lista }, JsonRequestBehavior.AllowGet)); //return Json(new { response = "success" }, JsonRequestBehavior.AllowGet); //} //else //{ // switch (usuarioId) // { // case -1: // return Json(new { response = "error", message = "Nombre de Usuario o password Incorrecto" }, JsonRequestBehavior.AllowGet); // case -2: // return Json(new { response = "error", message = "No se ha podido establecer una conexion con el Servidor" }, JsonRequestBehavior.AllowGet); // } // return Json(new { response = "error", message = "Error Desconocido" }, JsonRequestBehavior.AllowGet); //} }
// GET: Dashboard public ActionResult Index() { if (SessionHandler.Logged) { if (SessionHandler.pwdEstado) { ViewBag.PageTitle = "Dashboard"; ViewBag.UsuarioNombre = SessionHandler.Usuario; ViewBag.Menu = MenuHelper.menuPorPerfil(SessionHandler.Perfil); EtapasModel modelEtapas = new EtapasModel(); List <CuentaActiva> cuentas = new List <CuentaActiva>(); if (SessionHandler.Perfil >= 3) { switch (SessionHandler.Perfil) { case 3: cuentas = modelEtapas.obtenerCuentasActivas(DateTime.Today.Month, DateTime.Today.Year, SessionHandler.UsuarioId); break; case 4: cuentas = modelEtapas.obtenerCuentasActivas(DateTime.Today.Month, DateTime.Today.Year, -1, SessionHandler.UsuarioId); break; case 5: cuentas = modelEtapas.obtenerCuentasActivas(DateTime.Today.Month, DateTime.Today.Year, -1, -1, SessionHandler.UsuarioId); break; } } else { cuentas = modelEtapas.obtenerCuentasActivas(DateTime.Today.Month, DateTime.Today.Year); } string html = ""; foreach (CuentaActiva cuenta in cuentas) { string tr = "<tr><td>{0}</td><td>{1}</td><td>{2}</td><td>{3}</td><td>{4}</td><td>{5}</td><td>{6}</td><td>{7}</td><td>{8}</td></tr>"; int estado = modelEtapas.ObtenerCuentaActivaEstadoLog(cuenta.cuentaActivaId, cuenta.cuentaActivaFecha.Month, cuenta.cuentaActivaFecha.Year); string estadoStr = ""; string descripcion = ""; if (estado == 0) { estado = modelEtapas.ObtenerCuentaActivaEstadoParaEstado0(cuenta.cuentaActivaId, cuenta.cuentaActivaFecha.Month, cuenta.cuentaActivaFecha.Year); } switch (estado) { case -1: estadoStr = "<b>0%</b>"; descripcion = "Asignado (Sin Movimientos)"; break; case 0: estadoStr = "<b style='color: #993333'>25%</b>"; descripcion = "En Borrador"; break; case 1: estadoStr = "<b style='color: #993333'>25%</b>"; descripcion = "Rechazado desde Validación"; break; case 2: estadoStr = "<b style='color: #ff0000;'>50%</b>"; descripcion = "Enviado a Validación"; break; case 3: estadoStr = "<b style='color: #ff9933;'>75%</b>"; descripcion = "Enviado a Certificación"; break; case 4: estadoStr = "<b style='color: #ff0000;'>50%</b>"; descripcion = "Rechazado desde Certificación"; break; case 5: estadoStr = "<b style='color: #66ff33;'>100%</b>"; descripcion = "Certificado"; break; } html += string.Format(tr, cuenta.empresa.razonSocial, cuenta.numero, StringHelper.fechaDMA(cuenta.cuentaActivaFecha), cuenta.cuentaActivaDiasPlazo, descripcion, cuenta.analista.nombre, cuenta.validador.nombre, cuenta.certificador.nombre, estadoStr ); } ViewBag.Table = html; return(View()); } else { return(Redirect("~/Perfil/Index")); } } else { return(Redirect("~/Login/Index")); } }