Beispiel #1
0
        public IActionResult Get(string pesquisa, int numeroPagina, int numeroItensPorPagina)
        {
            try
            {
                IQueryable <Usuario> lista = _serviceUsuario.Get();

                if (!String.IsNullOrEmpty(pesquisa))
                {
                    lista = lista.Where(x => (x.Nome + x.Sobrenome).ToUpper().Contains(pesquisa.ToUpper()));
                }

                UsuarioPaginacao usuarioPaginacao = new UsuarioPaginacao();
                usuarioPaginacao.NumeroPagina         = numeroPagina;
                usuarioPaginacao.NumeroItensPorPagina = numeroItensPorPagina;
                usuarioPaginacao.Total = (int)Math.Ceiling((lista.Count() / (double)numeroItensPorPagina));

                lista = lista.OrderByDescending(x => x.Atualizacao).Skip((numeroPagina - 1) * numeroItensPorPagina).Take(numeroItensPorPagina);

                usuarioPaginacao.Usuarios = lista.ToList();

                return(new ObjectResult(usuarioPaginacao));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex));
            }
        }
Beispiel #2
0
        public UsuarioPaginacaoResponse(UsuarioPaginacao usuarioPaginacao, IUrlHelper urlHelper, UsuarioAutenticado usuarioAutenticado)
        {
            _urlHelper          = urlHelper;
            _usuarioAutenticado = usuarioAutenticado;

            Pagina     = usuarioPaginacao.Pagina;
            Total      = usuarioPaginacao.Total;
            PorPagina  = usuarioPaginacao.PorPagina;
            Order      = usuarioPaginacao.Order;
            Resultados = usuarioPaginacao.Resultados.Select(x => {
                var usuario = new UsuarioResponse(x, urlHelper, usuarioAutenticado);
                return(usuario);
            }).ToList();
        }
Beispiel #3
0
        public async Task <IActionResult> GetAllAsync(int?pagina, int?porPagina, string order)
        {
            try
            {
                var usuarioAutenticado = new UsuarioAutenticado(User);
                var usuarioPaginacao   = new UsuarioPaginacao(porPagina: porPagina, pagina: pagina, order: order);
                var usuarios           = await _usuarioService.GetAllAsync(usuarioPaginacao);

                return(Ok(new UsuarioPaginacaoResponse(usuarios, _urlHelper, usuarioAutenticado)));
            }
            catch (Exception e)
            {
                return(StatusCode(404, ErrorResponse.From(e)));
            }
        }
        public async Task <UsuarioPaginacao> GetAllAsync(UsuarioPaginacao data)
        {
            string sql = String.Format(@"
                SELECT 
                    count(id) 
                FROM usuarios;
                SELECT 
                    * 
                FROM usuarios 
                    ORDER BY {0} 
                    LIMIT @PorPagina 
                    OFFSET(@Pagina - 1) * @PorPagina;
            ", data.Order);

            using (var result = await _dbConnection.QueryMultipleAsync(sql, data))
            {
                data.Total      = result.Read <int>().FirstOrDefault();
                data.Resultados = result.Read <Usuario>().ToList();
            }

            return(data);
        }
        public async Task <IActionResult> ListaUsuariosPagina(string pesquisa, int numeroPagina, int numeroItensPorPagina)
        {
            UsuarioPaginacao usuarioPaginacao = await _api.GetUsuarioPaginaAsync(pesquisa, numeroPagina, numeroItensPorPagina);

            return(Json(usuarioPaginacao));
        }
 public async Task <UsuarioPaginacao> GetAllAsync(UsuarioPaginacao data)
 {
     return(await _usuarioRepository.GetAllAsync(data));
 }