public async Task <IActionResult> CreadasPaginado([FromBody] Paginacion paginacion) { #region CreadasPaginado try { var user = _httpContextAccessor.GetUsuarioInfoViewModel(); List <Encuesta> encuestas; if (user.Rol.Equals(Constantes.RolesSistema.Administrador)) { encuestas = (await _repository.FindBy <Encuesta>(null, x => x.OrderByDescending(x => x.Fecha), x => x.IdCarreraNavigation, x => x.IdEstatusEncuestaNavigation)).ToList(); } else { encuestas = (await _repository.FindBy <Encuesta>(x => x.IdUsuarioRegistro == user.Id, x => x.OrderByDescending(x => x.Fecha), x => x.IdCarreraNavigation, x => x.IdEstatusEncuestaNavigation)).ToList(); } int totalRegistros = encuestas.Count(); int column = paginacion.Order[0].Column; var order = paginacion.Order[0].Dir; if (!string.IsNullOrEmpty(paginacion.Search.Value)) { encuestas = encuestas.Where(x => x.Nombre.Contains(paginacion.Search.Value)).ToList(); } switch (column) { case 0: if (order.Equals("asc")) { encuestas = encuestas.OrderBy(x => x.IdEstatusEncuestaNavigation.Descripcion).ToList(); } else { encuestas = encuestas.OrderByDescending(x => x.IdEstatusEncuestaNavigation.Descripcion).ToList(); } break; case 1: if (order.Equals("asc")) { encuestas = encuestas.OrderBy(x => x.Fecha).ToList(); } else { encuestas = encuestas.OrderByDescending(x => x.Fecha).ToList(); } break; case 2: if (order.Equals("asc")) { encuestas = encuestas.OrderBy(x => x.Nombre).ToList(); } else { encuestas = encuestas.OrderByDescending(x => x.Nombre).ToList(); } break; case 3: if (order.Equals("asc")) { encuestas = encuestas.OrderBy(x => x.IdCarreraNavigation.Nombre).ToList(); } else { encuestas = encuestas.OrderByDescending(x => x.IdCarreraNavigation.Nombre).ToList(); } break; default: break; } var encuestasResult = encuestas .Skip(paginacion.Start) .Take(paginacion.Length) .Select(x => new { x.Id, x.Fecha, x.Nombre, IdCarreraNavigation = new { x.IdCarreraNavigation.Nombre }, x.IdEstatusEncuesta, IdEstatusEncuestaNavigation = new { x.IdEstatusEncuestaNavigation.Descripcion } }) .ToList(); var registrosFiltrados = encuestasResult.Count(); var totalRegistrosFiltrados = totalRegistros; var datosPaginados = encuestasResult; return(Json(new { draw = paginacion.Draw, recordsFiltered = registrosFiltrados, recordsTotal = totalRegistrosFiltrados, data = datosPaginados })); } catch (Exception ex) { _logger.LogError(ex.Message); return(BadRequest(ex.Message)); } #endregion }
// GET: Carrera public async Task <IActionResult> Index(string search, string Filter, string sortOrder, int?page) { var i = (ClaimsIdentity)User.Identity; if (i.IsAuthenticated) { //Permisos de usuario var permisos = i.Claims.Where(c => c.Type == "Carreras").Select(c => c.Value).SingleOrDefault().Split(";"); ViewData["Crear"] = Convert.ToBoolean(permisos[1]); ViewData["Editar"] = Convert.ToBoolean(permisos[2]); ViewData["Eliminar"] = Convert.ToBoolean(permisos[3]); ViewData["Exportar"] = Convert.ToBoolean(permisos[4]); if (Convert.ToBoolean(permisos[0])) { ViewData["NombreSortParam"] = string.IsNullOrEmpty(sortOrder) ? "nombre_desc" : ""; ViewData["FacultadSortParam"] = sortOrder == "fac_asc" ? "fac_desc" : "fac_asc"; //permite mantener la busqueda introducida en el filtro de busqueda if (search != null) { page = 1; } else { search = Filter; } ViewData["Filter"] = search; ViewData["CurrentSort"] = sortOrder; var carrera = from c in _context.Carrera.Include(c => c.Facultad) select c; if (!String.IsNullOrEmpty(search)) { carrera = carrera.Where(s => s.Nombre.Contains(search) || s.Facultad.Nombre.Contains(search)); } switch (sortOrder) { case "nombre_desc": carrera = carrera.OrderByDescending(s => s.Nombre); break; case "fac_asc": carrera = carrera.OrderBy(s => s.Facultad.Nombre); break; case "fac_desc": carrera = carrera.OrderByDescending(s => s.Facultad.Nombre); break; default: carrera = carrera.OrderBy(s => s.Nombre); break; } int pageSize = 10; return(View(await Paginacion <Carrera> .CreateAsync(carrera, page ?? 1, pageSize))); // page devuelve valor si lo tiene caso contrario devuelve 1 } else { return(Redirect("../Home")); } } else { return(Redirect("../Identity/Account/Login")); } }
public ListaPaginada <SubCategoriaDto> ListarSubCategoriasPaginado(string filtro, Paginacion paginacion) { Expression <Func <SubCategoria, bool> > expresionFiltro = null; if (!string.IsNullOrEmpty(filtro)) { filtro = filtro.Trim(); expresionFiltro = x => x.Descripcion.Contains(filtro) || x.Categoria.Descripcion.Contains(filtro); } var subCategorias = Repositorio.Listar <SubCategoria>(expresionFiltro, paginacion); return(MapearPaginado <SubCategoria, SubCategoriaDto>(subCategorias)); }
// GET: MetricaViews public async Task <IActionResult> Index(string SortOrder, string currentFilter, string searchString, int?page) { ViewData["NombreSortParm"] = String.IsNullOrEmpty(SortOrder) ? "nombre_desc" : ""; if (searchString != null) { page = 1; } else { searchString = currentFilter; } ViewData["CurrentFilter"] = searchString; ViewData["CurrentSort"] = SortOrder; var metricasView = from m in _context.MetricasView select m; if (!String.IsNullOrEmpty(searchString)) { metricasView = metricasView.Where(m => m.Documento.Contains(searchString) || m.Nombre.Contains(searchString) || m.Apellido.Contains(searchString) || m.UserName.Contains(searchString)); } switch (SortOrder) { case "nombre_desc": metricasView = metricasView.OrderByDescending(m => m.Nombre); break; case "apellido_desc": metricasView = metricasView.OrderByDescending(m => m.Apellido); break; case "apellido_asc": metricasView = metricasView.OrderBy(m => m.Apellido); break; case "documento_desc": metricasView = metricasView.OrderByDescending(m => m.Documento); break; case "documento_asc": metricasView = metricasView.OrderBy(m => m.Documento); break; case "useName_desc": metricasView = metricasView.OrderByDescending(m => m.UserName); break; case "useName_asc": metricasView = metricasView.OrderBy(m => m.UserName); break; default: metricasView = metricasView.OrderBy(m => m.Nombre).OrderBy(m => m.HoraInicio); break; } int pageSize = 7; return(View(await Paginacion <MetricasView> .CreateAsync(metricasView.AsNoTracking(), page ?? 1, pageSize))); //return View(await _context.MetricasView.ToListAsync()); }
/// <summary> /// Consulta en la base de datos la tabla Bitacora /// </summary> /// <param name="pBitacora"></param> /// <returns></returns> public RespuestaListaBitacoraAplicacion ObtenerBitacoraPaginado(BitacoraAplicacion pBitacora, Paginacion pPaginacion) { RespuestaListaBitacoraAplicacion respuesta = new RespuestaListaBitacoraAplicacion(); respuesta.ListaBitacora = new List <BitacoraAplicacion>(); //STRORE PROCEDURE DEFINITION DbCommand dbCommand = database1.GetStoredProcCommand(defaultSchema + StoredProcedure.ObtenerBitacoraPaginado); //IN PARAMETERS if (pBitacora.IdBitacora != 0) { database1.AddInParameter(dbCommand, parameterName(BitacoraAplicacion.idBitacoraProperty), DbType.Decimal, pBitacora.IdBitacora); } if (pBitacora.FechaRegistro != DateTime.MinValue) { database1.AddInParameter(dbCommand, parameterName(BitacoraAplicacion.fechaRegistroProperty), DbType.DateTime, pBitacora.FechaRegistro); } if (pBitacora.FechaInicio != DateTime.MinValue) { database1.AddInParameter(dbCommand, parameterName(BitacoraAplicacion.fechaInicioProperty), DbType.DateTime, pBitacora.FechaInicio); } if (pBitacora.FechaFinal != DateTime.MinValue) { database1.AddInParameter(dbCommand, parameterName(BitacoraAplicacion.fechaFinalProperty), DbType.DateTime, pBitacora.FechaFinal); } database1.AddInParameter(dbCommand, parameterName(BitacoraAplicacion.tipoEventoProperty), DbType.String, pBitacora.TipoEvento); database1.AddInParameter(dbCommand, parameterName(BitacoraAplicacion.mensajeRegistroProperty), DbType.AnsiString, pBitacora.MensajeRegistro); database1.AddInParameter(dbCommand, parameterName(BitacoraAplicacion.mensajeTecnicoProperty), DbType.AnsiString, pBitacora.MensajeTecnico); database1.AddInParameter(dbCommand, parameterName(BitacoraAplicacion.trazadorProperty), DbType.AnsiString, pBitacora.Trazador); database1.AddInParameter(dbCommand, parameterName(BaseEntidad.idEntidadProperty), DbType.Int64, pBitacora.IdEntidad); database1.AddInParameter(dbCommand, parameterName(Paginacion.numPaginaProperty), DbType.Int32, pPaginacion.NumPagina); //OUT PARAMETERS database1.AddOutParameter(dbCommand, parameterName(Paginacion.totalRegistrosProperty), DbType.Int32, 32); database1.AddOutParameter(dbCommand, parameterName(Paginacion.tamanoPaginaProperty), DbType.Int32, 32); database1.AddOutParameter(dbCommand, parameterName(BaseEntidad.codErrorProperty), DbType.String, Constantes.BaseDatos.codErrorTamano); database1.AddOutParameter(dbCommand, parameterName(BaseEntidad.mensajeProperty), DbType.String, Constantes.BaseDatos.mensajeTamano); //EXECUTE PROCEDURE - CONVERT ROWS using (IDataReader Reader = database1.ExecuteReader(dbCommand)) { while (Reader.Read()) { respuesta.ListaBitacora.Add(new BitacoraAplicacion(Reader)); } } //ERROR CODE AND MESSAGE COLLECTOR respuesta.Respuesta = new Respuesta(); respuesta.Respuesta.CodMensaje = DBHelper.ReadNullSafeString(database1.GetParameterValue(dbCommand, parameterName(BaseEntidad.codErrorProperty))); respuesta.Respuesta.Mensaje = DBHelper.ReadNullSafeString(database1.GetParameterValue(dbCommand, parameterName(BaseEntidad.mensajeProperty))); respuesta.TotalRegistros = DBHelper.ReadNullSafeInt(database1.GetParameterValue(dbCommand, parameterName(Paginacion.totalRegistrosProperty))); respuesta.NumPagina = pPaginacion.NumPagina; respuesta.TamanoPagina = pPaginacion.TamanoPagina; if (respuesta.Respuesta.CodMensaje == Respuesta.CodExitoso) { respuesta.Respuesta = new Respuesta(respuesta.Respuesta.CodMensaje); } return(respuesta); }
/// <summary> /// Metodo que sirve para Obtener la lista de tipo AutorizacionDetalle con paginacion /// </summary> /// <param name="pAutorizacionDetalle">Filtro de tipo AutorizacionDetalle</param> /// <param name="pPaginacion">Uso de Paginacion</param> /// <returns></returns> public RespuestaListaAutorizacionDetalle ObtenerAutorizacionDetallePaginado(AutorizacionDetalle pAutorizacionDetalle, Paginacion pPaginacion) { var respuesta = new RespuestaListaAutorizacionDetalle(); try { RespuestaSesion respS = sesion.ObtenerSesion(new Sesion() { Token = pAutorizacionDetalle.UsrtokensAuthenticate }); if (respS.Respuesta.CodMensaje == Respuesta.CodExitoso) { respuesta = dal.ObtenerAutorizacionDetallePaginado(pAutorizacionDetalle, pPaginacion); return(respuesta); } else { return new RespuestaListaAutorizacionDetalle { Respuesta = respS.Respuesta, ListaAutorizacionDetalle = new List <AutorizacionDetalle>() } }; } catch (Exception ex) { ControlExcepciones.ControlExcepciones.ManejoExcepciones(ex, pAutorizacionDetalle); BitacoraLogicaNegocios.RegistrarBitacora(MENSAJES_SISTEMA.ErrorExcepcion, TraceData.Utilities.Enums.TypeTrace.Exception, ex, MethodBase.GetCurrentMethod().Name); return(new RespuestaListaAutorizacionDetalle { Respuesta = new Respuesta(TipoRespuesta.Excepcion, ex.Message, Respuesta.CodNoValido) }); } }
/// <summary> /// Metodo que sirve para Obtener la lista de tipo Proveedor con paginacion /// </summary> /// <param name="pProveedor">Filtro de tipo Proveedor</param> /// <param name="pPaginacion">Uso de Paginacion</param> /// <returns></returns> public RespuestaListaProveedor ObtenerProveedorPaginado(Proveedor pProveedor, ref Paginacion pPaginacion) { var respuesta = new RespuestaListaProveedor(); try { respuesta = dal.ObtenerProveedorPaginado(pProveedor, ref pPaginacion); return(respuesta); } catch (Exception ex) { ControlExcepciones.ControlExcepciones.ManejoExcepciones(ex, pProveedor); BitacoraLogicaNegocios.RegistrarBitacora(MENSAJES_SISTEMA.ErrorExcepcion, TraceData.Utilities.Enums.TypeTrace.Exception, ex, MethodBase.GetCurrentMethod().Name); return(new RespuestaListaProveedor { Respuesta = new Respuesta(TipoRespuesta.Excepcion, ex.Message, Respuesta.CodNoValido) }); } }
public async Task <ActionResult <List <Inventario> > > GetInventarioPorDeposito([FromQuery] Paginacion paginacion, int depositoId, int cantidadDeRegistros, string filtro) { var queryable = _context.inventario .Include(x => x.ProductoPresentacion.Producto) .Include(x => x.ProductoPresentacion.PresentacionProducto).Where(x => x.DepositoId == depositoId) .OrderBy(x => x.ProductoPresentacion.Producto.nombre).AsQueryable(); if (cantidadDeRegistros != 0) { paginacion.CantidadRegistros = cantidadDeRegistros; } if (!string.IsNullOrWhiteSpace(filtro)) { queryable = queryable.Where(x => x.ProductoPresentacion.Producto.nombre.Contains(filtro)).AsQueryable(); } await HttpContext.InsertarParametrosPaginacionEnRespuesta(queryable, paginacion.CantidadRegistros); return(await queryable.Paginar(paginacion).ToListAsync()); }
// GET: CertificadosMedicos public async Task <IActionResult> Index(string sortOrder, string Filter, int?page, string search) { var i = (ClaimsIdentity)User.Identity; if (i.IsAuthenticated) { //Permisos de usuario var permisos = i.Claims.Where(c => c.Type == "CertificadosMedicos").Select(c => c.Value).SingleOrDefault().Split(";"); ViewData["Crear"] = Convert.ToBoolean(permisos[1]); ViewData["Editar"] = Convert.ToBoolean(permisos[2]); ViewData["Eliminar"] = Convert.ToBoolean(permisos[3]); ViewData["Exportar"] = Convert.ToBoolean(permisos[4]); if (Convert.ToBoolean(permisos[0])) { ViewData["NombreSortParam"] = String.IsNullOrEmpty(sortOrder) ? "nombre_desc" : ""; //permite mantener la busqueda introducida en el filtro de busqueda if (search != null) { page = 1; } else { search = Filter; } ViewData["Filter"] = search; ViewData["CurrentSort"] = sortOrder; var fechaInicioDia = new DateTime(); var fechaInicioFinDia = new DateTime(); if (String.IsNullOrEmpty(search)) { var fecha = Funciones.ObtenerFechaActual("SA Pacific Standard Time"); //fechaInicioDia = new DateTime(fecha.Year, fecha.Month, fecha.Day, 00, 00, 00); //fechaInicioFinDia = new DateTime(fecha.Year, fecha.Month, fecha.Day, 23, 59, 59); fechaInicioDia = new DateTime(fecha.Year, fecha.Month, 11, 00, 00, 00); fechaInicioFinDia = new DateTime(fecha.Year, fecha.Month, 11, 23, 59, 59); } else { var fecha = Convert.ToDateTime(search); fechaInicioDia = new DateTime(fecha.Year, fecha.Month, fecha.Day, 00, 00, 00); fechaInicioFinDia = new DateTime(fecha.Year, fecha.Month, fecha.Day, 23, 59, 59); } //poner liuego esto var citaOdontologica = from c in _context.CitaOdontologica.Include(a => a.Personal).Include(a => a.Paciente) .Where(a => a.FechaInicio > fechaInicioDia && a.FechaInicio < fechaInicioFinDia && (a.Estado == "A")) .OrderBy(p => p.FechaInicio) select c; int pageSize = 10; return(View(await Paginacion <CitaOdontologica> .CreateAsync(citaOdontologica, page ?? 1, pageSize))); // page devuelve valor si lo tiene caso contrario devuelve 1 } else { return(Redirect("../Home")); } } else { return(Redirect("../Identity/Account/Login")); } }