public ApplicationResponse <PaginaListaResponse> PaginarLista(PaginaListaRequest sourcePaginar) { try { var count = sourcePaginar.Lista.Count(); PaginaListaResponse responseListaPaginada = new PaginaListaResponse() { ListaPaginada = _contatoService.PaginarLista(sourcePaginar.Lista, sourcePaginar.TamanhoPagina, sourcePaginar.IndicePagina).ToArray(), PageIndex = sourcePaginar.IndicePagina, TotalPages = (int)Math.Ceiling(count / (double)sourcePaginar.TamanhoPagina) }; return(new ApplicationResponse <PaginaListaResponse>( responseListaPaginada, ApplicationResponseStatus.Success, "Sucesso na paginação" )); } catch (Exception ex) { return(new ApplicationResponse <PaginaListaResponse>( null, ApplicationResponseStatus.Error, "Erro na paginação" )); } }
private void PaginarLista() { var sourcePaginarListaBefore = Contatos; var sourcePaginarListaAfter = new PaginaListaRequest() { Lista = sourcePaginarListaBefore.ListaContatos.ListaPaginada, IndicePagina = sourcePaginarListaBefore.ListaContatos.PageIndex, TamanhoPagina = sourcePaginarListaBefore.ListaContatos.TotalPages }; var responseListarPaginada = IntegrationAPI.InvokeObject <ApplicationResponse <PaginaListaResponse>, PaginaListaRequest>( ConstContato.UrlPaginarLista, HttpMethod.Post, sourcePaginarListaAfter ); if (responseListarPaginada.Status == ApplicationResponseStatus.Success) { var listPaginada = responseListarPaginada.Value; Contatos.ListaContatos.ListaPaginada = listPaginada.ListaPaginada; Contatos.ListaContatos.PageIndex = listPaginada.PageIndex; Contatos.ListaContatos.TotalPages = listPaginada.TotalPages; this.SaveInSession <ContatosPageModel>(Contatos, ViewDataContatos); } }
public async Task <ApplicationResponse <PaginaListaResponse> > PaginaLista([FromBody] PaginaListaRequest request) { return(this.RequestService <ApplicationResponse <PaginaListaResponse> >(() => { return _contatoApplication.PaginarLista(request); })); }
public async Task PaginacaoListaTeste() { PaginaListaRequest request = new PaginaListaRequest { IndicePagina = 1, TamanhoPagina = 3, Lista = new[] { "A", "C", "B", "F", "E", "F", "HG" } }; ActionResult <PaginaListaResponse> expected = new ActionResult <PaginaListaResponse>(new PaginaListaResponse { ListaPaginada = new[] { "F", "E", "F" } }); ActionResult <PaginaListaResponse> obtained = await RecrutamentoController.PaginaLista(request); if (!(obtained.Result is OkObjectResult)) { Assert.Fail("A resposta da controller não é um OkObjectResult."); } else { CollectionAssert.AreEqual(expected.Value.ListaPaginada, ((PaginaListaResponse)((OkObjectResult)obtained.Result).Value).ListaPaginada); } }
public async Task <ActionResult <PaginaListaResponse> > PaginaLista([FromBody] PaginaListaRequest request) { throw new NotImplementedException(); }