Exemplo n.º 1
0
        public async Task <ResponseGetPagination> GetDataBDTestPaginationAsync(TestGetQueryFilter testQueryFilter)
        {
            testQueryFilter.NumeroDePagina = testQueryFilter.NumeroDePagina == 0 ? _paginationOptions.InicialNumeroDePagina : testQueryFilter.NumeroDePagina;
            testQueryFilter.TamanoDePagina = testQueryFilter.TamanoDePagina == 0 ? _paginationOptions.InicialTamanoDePagina : testQueryFilter.TamanoDePagina;

            var test = await _testRepository.GetDataBDTestAsync();

            if (test.Count() > 0)
            {
                var paginacion = ListaPaginada <object> .Crear(test, testQueryFilter.NumeroDePagina, testQueryFilter.TamanoDePagina);

                return(new ResponseGetPagination()
                {
                    Paginations = paginacion,
                    StatusCode = HttpStatusCode.OK
                });
            }
            else
            {
                return(new ResponseGetPagination()
                {
                    Messages = new Message[] { new Message()
                                               {
                                                   Type = TypeMessage.information.ToString(), Description = "No se encontraron datos en Test"
                                               } },
                    StatusCode = HttpStatusCode.NotFound
                });
            }
        }
Exemplo n.º 2
0
        public async Task <ListaPaginada <Mensaje> > ObtenerMensajesParaUsuario(MensajeParams mensajeParams)
        {
            var mensajes = _contexto.Mensajes
                           .Include(x => x.Remitente).ThenInclude(x => x.Imagenes)
                           .Include(x => x.Receptor).ThenInclude(x => x.Imagenes)
                           .AsQueryable();

            switch (mensajeParams.ContenedorMensaje)
            {
            case "Recibidos":
                mensajes = mensajes.Where(x => x.ReceptorId == mensajeParams.UsuarioId);
                break;

            case "Enviados":
                mensajes = mensajes.Where(x => x.RemitenteId == mensajeParams.UsuarioId);
                break;

            default:
                mensajes = mensajes.Where(x => x.ReceptorId == mensajeParams.UsuarioId && !x.Leido);
                break;
            }

            mensajes = mensajes.OrderByDescending(x => x.MensajeEnviado);
            return(await ListaPaginada <Mensaje> .Crear(mensajes, mensajeParams.NoPagina,
                                                        mensajeParams.TamanoPagina));
        }
Exemplo n.º 3
0
        public async Task <ListaPaginada <Usuario> > ObtenerUsuarios(UsuarioParams usuarioParams)
        {
            var usuarios = _contexto.Usuarios.Include(img => img.Imagenes).AsQueryable();

            if (usuarioParams.MeGustadores)
            {
                var usuarioMeGustadores = await ObtenerMeGustasDelUsuario(usuarioParams.UsuarioId, usuarioParams.MeGustadores);

                usuarios = usuarios.Where(x => usuarioMeGustadores.Contains(x.Id));
            }

            if (usuarioParams.MeGustas)
            {
                var usuarioMeGustas = await ObtenerMeGustasDelUsuario(usuarioParams.UsuarioId, usuarioParams.MeGustadores);

                usuarios = usuarios.Where(x => usuarioMeGustas.Contains(x.Id));
            }

            return(await ListaPaginada <Usuario> .Crear(usuarios,
                                                        usuarioParams.NoPagina, usuarioParams.TamanoPagina));
        }