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
                });
            }
        }
Example #2
0
        public async Task <IActionResult> GetDataBDPaginationTestAsync([FromQuery] TestGetQueryFilter testQueryFilter)
        {
            try
            {
                _logger.LogInformation("Iniciando Proceso para recuperar datos Test de la BD");
                var test = await _testService.GetDataBDTestPaginationAsync(testQueryFilter);

                if (test == null)
                {
                    _logger.LogWarning("No se encontraron datos.");
                }

                var pagination = new Pagination
                {
                    TotalRegistros       = test.Paginations.TotalRegistros,
                    TamanoDePagina       = test.Paginations.TamanoDePagina,
                    PaginaActual         = test.Paginations.PaginaActual,
                    TotalPaginas         = test.Paginations.TotalPaginas,
                    TienePaginaAnterior  = test.Paginations.TienePaginaAnterior,
                    TienePaginaSiguiente = test.Paginations.TienePaginaSiguiente
                };

                var response = new ApiResponse <IEnumerable <object> >(test.Paginations)
                {
                    Pagination = pagination,
                    Messages   = test.Messages
                };

                return(StatusCode((int)test.StatusCode, response));
            }
            catch (Exception err)
            {
                _logger.LogError(err, "Error inesperado");
                var responsePost = new ResponsePost()
                {
                    Messages = new Message[] { new Message()
                                               {
                                                   Type = TypeMessage.error.ToString(), Description = err.Message
                                               } },
                };
                return(StatusCode(500, responsePost));
                //throw new BussinesException(err.Message);
            }
        }