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