Beispiel #1
0
        public JsonResult ObtenerDocumentosRequeridoPorProcesoPresentadosEstudiante(ProcesoEnum proceso, int idEstudiante, int idGradoAnio)
        {
            var rows = from DocumentoRequeridoModel e in ServiceLocator.Current.GetInstance <IEntidadesGeneralesRules>().GetDocumentosRequeridoPorProcesoPresentadosEstudiante(proceso, idEstudiante, idEscuela, idGradoAnio, null)
                       select new { cell = new string[] { e.Id.ToString(), e.GradoAnio, e.Proceso.ToString(), e.Documento.Nombre } };

            return(Json(new { rows = rows }, JsonRequestBehavior.AllowGet));
        }
Beispiel #2
0
        /// <summary>
        /// Metodo que recibe desde la vista todos los parametros necesarios para la obtención de los registros a mostrar, filtrarlos y paginados.
        /// A partir del parámetro id (sin incluirlo), los parámetros siguientes son opcionales y dependientes del caso de uso.
        /// </summary>
        /// <param name="sidx">Campo por el cual se ordenan los registros</param>
        /// <param name="sord">Dirección de ordenamiento (Ascendente/Descendente)</param>
        /// <param name="page">Número de página a mostrar</param>
        /// <param name="rows">Cantidad de registros por página</param>
        /// <param name="id">Valor de filtrado por ID</param>
        /// <returns>Objeto JSON que representa la matriz de datos a ser mostrados en la grilla</returns>
        public JsonResult ProcesarBusqueda(string sidx, string sord, int page, int rows, string filtroProceso, string filtroGradoAnio)
        {
            // Construyo la funcion de ordenamiento
            Func <DocumentoRequeridoModel, IComparable> funcOrden =
                /****************************** INICIO AREA EDITABLE ******************************/
                sidx == "Proceso" ? x => x.Proceso :
                sidx == "Grado/Año" ? x => x.GradoAnio :
                /******************************** FIN AREA EDITABLE *******************************/
                (Func <DocumentoRequeridoModel, IComparable>)(x => x.Id);

            // Obtengo los registros filtrados segun los criterios ingresados
            /****************************** INICIO AREA EDITABLE ******************************/
            ProcesoEnum proc;

            ProcesoEnum.TryParse(filtroProceso, out proc);

            var registros = Rule.DocumentoRequeridoDireccionDeNivelByFiltros(proc, int.Parse(filtroGradoAnio));

            /******************************** FIN AREA EDITABLE *******************************/

            // Ordeno los registros
            if (sord == "asc")
            {
                registros = registros.OrderBy(funcOrden).ToList();
            }
            else
            {
                registros = registros.OrderByDescending(funcOrden).ToList();
            }

            // Selecciono los registros segun el numero de pagina y cantidad de registros por pagina
            int totalRegistros = registros.Count();
            int totalPages     = (int)Math.Ceiling((decimal)totalRegistros / (decimal)rows);

            registros = registros.Skip((page - 1) * rows).Take(rows).ToList();

            // Construyo el json con los valores que se mostraran en la grilla
            var jsonData = new
            {
                total   = totalPages,
                page    = page,
                records = totalRegistros,
                rows    = from a in registros
                          select new
                {
                    cell = new string[] {
                        a.Id.ToString(),
                        // Respetar el orden en que se mostrarán las columnas
                        /****************************** INICIO AREA EDITABLE ******************************/
                a.Documento.Nombre,
                a.Documento.Descripcion,
                a.Proceso.ToString(),
                a.GradoAnio
                        /******************************** FIN AREA EDITABLE *******************************/
                    }
                }
            };

            return(Json(jsonData, JsonRequestBehavior.AllowGet));
        }
Beispiel #3
0
        public JsonResult ObtenerDocumentosRequeridoPorProcesoGradoAnio(ProcesoEnum proceso, int gradoAnioId)
        {
            var rows = from DocumentoRequeridoModel e in ServiceLocator.Current.GetInstance <IDocumentoRequeridoRules>().DocumentoRequeridoByFiltros(proceso, gradoAnioId, null)
                       select new { cell = new string[] { e.Id.ToString(), e.GradoAnio, e.Proceso.ToString(), e.Documento.Nombre } };

            return(Json(new { rows = rows }, JsonRequestBehavior.AllowGet));
        }
Beispiel #4
0
        public JsonResult ObtenerDocumentosRequeridoPorProcesoPorCarrera(ProcesoEnum proceso, int idCarrera)
        {
            var rows = from DocumentoRequeridoModel e in ServiceLocator.Current.GetInstance <IEntidadesGeneralesRules>().GetDocumentosRequeridoPorProcesoYCarrera(proceso, idCarrera)
                       select new { cell = new string[] { e.Id.ToString(), e.GradoAnio, e.Proceso.ToString(), e.Documento.Nombre, e.Observaciones, /*Aca va el dato de presentado*/ "" } };

            return(Json(new { rows = rows }, JsonRequestBehavior.AllowGet));
        }
Beispiel #5
0
 public List <DocumentoRequeridoModel> GetDocumentosRequeridoPorProcesoYCarrera(ProcesoEnum proceso, int idCarrera)
 {
     return(ServiceLocator.Current.GetInstance <IDocumentoRequeridoRules>().DocumentoRequeridoByFiltros(proceso, null, idCarrera));
 }
Beispiel #6
0
 public List <DocumentoRequeridoModel> GetDocumentosRequeridoPorProcesoPresentadosEstudiante(ProcesoEnum proceso, int idEstudiante, int idEscuela, int?idGradoAnio, int?idCarrera)
 {
     return(ServiceLocator.Current.GetInstance <IDocumentoRequeridoRules>().DocumentoRequeridoByEscuelaCarreraYProcesoPresentadosPorEstudiante(proceso, idEstudiante, idEscuela, idCarrera, idGradoAnio));
 }
Beispiel #7
0
 public List <DocumentoRequeridoModel> GetDocumentosRequeridoPorProceso(ProcesoEnum proceso)
 {
     return(ServiceLocator.Current.GetInstance <IDocumentoRequeridoRules>().DocumentoRequeridoByEscuelaLogeadaYProceso(proceso));
 }