Пример #1
0
        public ActionResult listarAntecedentesProductos(long incidencia)
        {
            var listaAntecedentes = MantenimientoData.GetListarAntecedentesProductos(incidencia);
            var draw          = Request.Form.GetValues("draw").FirstOrDefault();
            var start         = Request.Form.GetValues("start").FirstOrDefault();
            var length        = Request.Form.GetValues("length").FirstOrDefault();
            var sortColumn    = Request.Form.GetValues("columns[" + Request.Form.GetValues("order[0][column]").FirstOrDefault() + "][name]").FirstOrDefault();
            var sortColumnDir = Request.Form.GetValues("order[0][dir]").FirstOrDefault();

            if (sortColumn != "" && sortColumnDir != "")
            {
                if (sortColumnDir.ToUpper() == "DESC")
                {
                    var parametro    = sortColumn;
                    var propertyInfo = typeof(ListarAntecedentesIncidenteDto).GetProperty(parametro);
                    listaAntecedentes = listaAntecedentes.OrderByDescending(x => propertyInfo.GetValue(x, null)).ToList();
                }
                else
                {
                    var parametro    = sortColumn;
                    var propertyInfo = typeof(ListarAntecedentesIncidenteDto).GetProperty(parametro);
                    listaAntecedentes = listaAntecedentes.OrderBy(x => propertyInfo.GetValue(x, null)).ToList();
                }
            }

            var displayedDocumentos = listaAntecedentes;
            int pageSize            = length != null?Convert.ToInt32(length) : 0;

            int skip = start != null?Convert.ToInt32(start) : 0;

            int recordsTotal = 0;

            recordsTotal = displayedDocumentos.Count();
            var data = displayedDocumentos.Skip(skip).Take(pageSize).ToList();

            return(Json(new { draw = draw, recordsFiltered = recordsTotal, recordsTotal = recordsTotal, data = data }, JsonRequestBehavior.AllowGet));
        }