Пример #1
0
        public AjaxCollectionResponseViewModel GetAlumnos([FromUri]AjaxCollectionParamViewModel param)
        {
            IQueryable<Persona> personas = _db.Personas
                .Where(p => p.PERSONA_ES_ALUMNO == true)
                .OrderByDescending(e => e.ID);

            if (param.Filtro != null)
            {
                personas = personas.Where(i =>
                    i.PERSONA_DOCUMENTO_NUMERO.ToLower().Contains(param.Filtro.ToLower()) ||
                    i.PERSONA_NOMBRE.ToLower().Contains(param.Filtro.ToLower()) ||
                    i.PERSONA_APELLIDO.ToLower().Contains(param.Filtro.ToLower()) ||
                    i.PERSONA_TELEFONO.ToLower().Contains(param.Filtro.ToLower())
                );
            }

            IQueryable<object> vm = personas
                .Skip(param.Pagina * param.RegistrosPorPagina)
                .Take(param.RegistrosPorPagina)
                .Select(p => new
                {
                    PERSONA_DOCUMENTO_NUMERO = p.PERSONA_DOCUMENTO_NUMERO,
                    PERSONA_NOMBRE = p.PERSONA_NOMBRE,
                    PERSONA_APELLIDO = p.PERSONA_APELLIDO,
                    PERSONA_TELEFONO = p.PERSONA_TELEFONO,
                    ID = p.ID
                });

            AjaxCollectionResponseViewModel rvm = new AjaxCollectionResponseViewModel
            {
                Resultados = vm,
                CantidadResultados = param.Filtro != null ? vm.Count() : _db.Personas.Count(),
            };

            return rvm;
        }
Пример #2
0
 public AjaxCollectionResponseViewModel GetDetalles(int id, [FromUri] AjaxCollectionParamViewModel param)
 {
     var detalles = db.Equivalencias_Detalles
         .Where(e => e.EQUIVALENCIA_ID == id)
         .OrderBy(e => e.ID)
         .Skip(param.Pagina*param.RegistrosPorPagina)
         .Take(param.RegistrosPorPagina)
         .Select(e =>
         new
         {
             e.ID,
             e.EQUIVALENCIA_DETALLE_TIPO,
             e.EQUIVALENCIA_DETALLE_PROFESOR_ID,
             e.EQUIVALENCIA_DETALLE_PROFESOR.PERSONA_NOMBRE,
             e.EQUIVALENCIA_DETALLE_MATERIA_ID,
             e.EQUIVALENCIA_DETALLE_MATERIA.MATERIA_NOMBRE,
             e.EQUIVALENCIA_COMENTARIO,
         }
         );
     AjaxCollectionResponseViewModel rvm = new AjaxCollectionResponseViewModel
     {
         Resultados = detalles,
         CantidadResultados = db.Equivalencias_Detalles.Count(e => e.EQUIVALENCIA_ID == id)
     };
     return rvm;
 }
Пример #3
0
 // GET: api/Equivalencias
 public AjaxCollectionResponseViewModel GetEquivalencias([FromUri] AjaxCollectionParamViewModel param)
 {
     IQueryable<EquivalenciaViewModel> evm = db.Equivalencias
         .OrderByDescending(e => e.ID)
         .Skip(param.Pagina * param.RegistrosPorPagina)
         .Take(param.RegistrosPorPagina)
         .Select(e => new EquivalenciaViewModel
         {
             ID = e.ID,
             EQUIVALENCIA_FECHA = e.EQUIVALENCIA_FECHA,
             EQUIVALENCIA_NRO_DISPOSICION = e.EQUIVALENCIA_NRO_DISPOSICION,
             EQUIVALENCIA_ALUMNO_NOMBRE = e.EQUIVALENCIA_ALUMNO.PERSONA_NOMBRE + " " + e.EQUIVALENCIA_ALUMNO.PERSONA_APELLIDO,
             EQUIVALENCIA_CARRERA_NOMBRE = e.EQUIVALENCIA_CARRERA.CARRERA_NOMBRE
         });
     AjaxCollectionResponseViewModel rvm = new AjaxCollectionResponseViewModel
     {
         Resultados = evm,
         CantidadResultados = db.Equivalencias.Count(),
     };
     return rvm;
 }
Пример #4
0
        public AjaxCollectionResponseViewModel GetAlumnosQueAdeudanTituloSecundario([FromUri] AjaxCollectionParamViewModel param)
        {
            var personas = _db.Personas
                .Where(p => p.PERSONA_ES_ALUMNO.Value && p.PERSONA_TITULO_SECUNDARIO == "No")
                .OrderBy(p => p.ID)
                .Skip(param.Pagina * param.RegistrosPorPagina)
                .Take(param.RegistrosPorPagina)
                .Select(p =>
                new
                {
                    p.ID,
                    p.PERSONA_APELLIDO,
                    p.PERSONA_NOMBRE,
                    p.PERSONA_DOCUMENTO_NUMERO
                }
                );

            if (param.OrdenarPorColumna != null)
            {
                switch (param.OrdenarPorColumna)
                {
                    case "PERSONA_APELLIDO":
                        personas = param.OrdenarAsc ? personas.OrderBy(p => p.PERSONA_APELLIDO) : personas.OrderByDescending(p => p.PERSONA_APELLIDO);
                        break;
                    case "PERSONA_NOMBRE":
                        personas = param.OrdenarAsc ? personas.OrderBy(p => p.PERSONA_NOMBRE) : personas.OrderByDescending(p => p.PERSONA_NOMBRE);
                        break;
                    case "PERSONA_DOCUMENTO_NUMERO":
                        personas = param.OrdenarAsc ? personas.OrderBy(p => p.PERSONA_DOCUMENTO_NUMERO) : personas.OrderByDescending(p => p.PERSONA_DOCUMENTO_NUMERO);
                        break;
                }
            }
            else
            {
                personas = param.OrdenarAsc ? personas.OrderBy(p => p.ID) : personas.OrderByDescending(p => p.ID);
            }
            AjaxCollectionResponseViewModel rvm = new AjaxCollectionResponseViewModel
            {
                Resultados = personas,
                CantidadResultados = _db.Personas.Count(p => p.PERSONA_ES_ALUMNO.Value && p.PERSONA_TITULO_SECUNDARIO == "No")
            };
            return rvm;
        }
Пример #5
0
        public AjaxCollectionResponseViewModel GetFinales([FromUri]AjaxCollectionParamViewModel param)
        {
            int cantidadRegistros = 0;
            IQueryable<Acta_Examen> actas = _db.Actas_Examenes
                .OrderByDescending(e => e.ACTA_EXAMEN_FECHA);

            if (param.Filtro != null)
            {
                DateTime fecha = new DateTime();
                // DateTime fechaBusqueda = DateTime.ParseExact(param.sSearch, "dd/MM/yyyy", CultureInfo.InvariantCulture);//

                bool esFecha = DateTime.TryParseExact(param.Filtro, "dd/MM/yyyy",
                    System.Globalization.CultureInfo.InvariantCulture,
                    DateTimeStyles.None, out fecha);

                if (esFecha)
                {
                    actas = actas.Where(c =>
                        c.ACTA_EXAMEN_FECHA.Value.Day == fecha.Day &&
                        c.ACTA_EXAMEN_FECHA.Value.Month == fecha.Month &&
                        c.ACTA_EXAMEN_FECHA.Value.Year == fecha.Year);
                    cantidadRegistros = actas.Count();
                }
                else {

                    try
                    {
                        int id = int.Parse(param.Filtro);
                        actas = actas.Where(c =>
                            c.ID.Equals(id) ||
                                //c.ACTA_EXAMEN_FECHA == fecha  ||
                            c.ACTA_EXAMEN_CARRERA.CARRERA_NOMBRE.ToLower().Contains(param.Filtro.ToLower()) ||
                            c.ACTA_EXAMEN_MATERIA.MATERIA_NOMBRE.ToLower().Contains(param.Filtro.ToLower()) ||
                            c.ACTA_EXAMEN_FOLIO.ToLower().Contains(param.Filtro.ToLower()) ||
                            c.ACTA_EXAMEN_LIBRO.ToLower().Contains(param.Filtro.ToLower())
                        );
                    }
                    catch (Exception)
                    {
                        actas = actas.Where(c =>
                                //c.ACTA_EXAMEN_FECHA == fecha  ||
                            c.ACTA_EXAMEN_CARRERA.CARRERA_NOMBRE.ToLower().Contains(param.Filtro.ToLower()) ||
                            c.ACTA_EXAMEN_MATERIA.MATERIA_NOMBRE.ToLower().Contains(param.Filtro.ToLower()) ||
                            c.ACTA_EXAMEN_FOLIO.ToLower().Contains(param.Filtro.ToLower()) ||
                            c.ACTA_EXAMEN_LIBRO.ToLower().Contains(param.Filtro.ToLower())
                        );
                    }

                    cantidadRegistros = actas.Count();

                }
            }
            else
            {
                cantidadRegistros = actas.Count();
            }

            IQueryable<object> vm = actas
                .Skip(param.Pagina * param.RegistrosPorPagina)
                .Take(param.RegistrosPorPagina)
                .Select(a => new
                {
                    ACTA_EXAMEN_FECHA = a.ACTA_EXAMEN_FECHA.ToString(),
                    ACTA_EXAMEN_LIBRO = a.ACTA_EXAMEN_LIBRO,
                    ACTA_EXAMEN_FOLIO = a.ACTA_EXAMEN_FOLIO,
                    ACTA_EXAMEN_TURNO_EXAMEN = a.ACTA_EXAMEN_TURNO_EXAMEN.TURNO_EXAMEN_NOMBRE,
                    ACTA_EXAMEN_CARRERA = a.ACTA_EXAMEN_CARRERA.CARRERA_NOMBRE_CORTO,
                    ACTA_EXAMEN_MATERIA = a.ACTA_EXAMEN_MATERIA.MATERIA_NOMBRE,
                    ACTA_EXAMEN_NUMERO = a.ID,
                    ID = a.ID
                });

            AjaxCollectionResponseViewModel rvm = new AjaxCollectionResponseViewModel
            {
                Resultados = vm,
                CantidadResultados = cantidadRegistros
            };

            return rvm;
        }