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);
            }
        }
        private void ListarContatos()
        {
            var responseListarContatos = IntegrationAPI.InvokeObject <ApplicationResponse <string[]> >(
                ConstContato.UrlListarContatos,
                HttpMethod.Get
                );

            if (responseListarContatos.Status == ApplicationResponseStatus.Success)
            {
                Contatos.ListaContatos.ListaPaginada = responseListarContatos.Value;
                OrdenarLista();
            }
        }
        private void OrdenarLista()
        {
            var responseListarContatosOrdenada = IntegrationAPI.InvokeObject <ApplicationResponse <OrdenaListaResponse>, OrdenaListaRequest>(
                ConstContato.UrlOrdenarLista,
                HttpMethod.Post,
                new OrdenaListaRequest()
            {
                Lista = Contatos.ListaContatos.ListaPaginada.ToArray()
            }
                );

            if (responseListarContatosOrdenada.Status == ApplicationResponseStatus.Success)
            {
                Contatos.ListaContatos.ListaPaginada = responseListarContatosOrdenada.Value.ListaOrdenada;
                Contatos.ListaOriginal = Contatos.ListaContatos.ListaPaginada;
                PaginarLista();
            }
        }
        private void BuscarContato(string termo)
        {
            var responseBusca = IntegrationAPI.InvokeObject <ApplicationResponse <BuscaContatoResponse>, BuscaContatoRequest>(
                ConstContato.UrlBuscarContato,
                HttpMethod.Post,
                new BuscaContatoRequest()
            {
                Busca = termo, QuantidadeRegistro = Contatos.ListaContatos.TotalPages
            }
                );

            if (responseBusca.Status == ApplicationResponseStatus.Success)
            {
                var resultBusca = responseBusca.Value;
                Contatos.ListaContatos.ListaPaginada = resultBusca.ListaContatos.Select(item => item.Nome).ToArray();
                Contatos.ListaContatos.PageIndex     = 1;
                this.SaveInSession <ContatosPageModel>(Contatos, ViewDataContatos);
            }
        }
        public async Task <IActionResult> OnPostAsync()
        {
            if (!ModelState.IsValid)
            {
                return(Page());
            }
            var responseOcorrencia = IntegrationAPI.InvokeObject <ApplicationResponse <ContaPalavrasTextoResponse>, ContaPalavrasTextoRequest>(
                ConstOcorrencia.UrlOcorrenciaTermo,
                HttpMethod.Post,
                new ContaPalavrasTextoRequest()
            {
                Texto = Ocorrencia.Texto, Palavra = Ocorrencia.Palavra
            }
                );

            if (responseOcorrencia.Status == ApplicationResponseStatus.Success)
            {
                Ocorrencia.Quantidade = responseOcorrencia.Value.QuantidadeOcorrencias;
                this.SaveInSession <OcorrenciaPageModel>(Ocorrencia, SessionModel);
            }

            return(RedirectToPage("/OcorrenciasTermo"));
        }
        public async Task <IActionResult> OnPostAsync()
        {
            Tabuleiro.TemVencedor = false;
            if (!ModelState.IsValid)
            {
                return(Page());
            }

            var responseListarContatos = IntegrationAPI.InvokeObject <ApplicationResponse <TemVencedorResponse>, TemVencedorRequest>(
                ConstJogoDaVelha.UrlTemVencedor,
                HttpMethod.Post,
                new TemVencedorRequest()
            {
                Jogo = Tabuleiro.Velha
            }
                );

            if (responseListarContatos.Status == ApplicationResponseStatus.Success)
            {
                Tabuleiro.TemVencedor = responseListarContatos.Value.TemVencedor;
                this.SaveInSession <JogoDaVelhaPageModel>(Tabuleiro, SessionTabuleiro);
            }
            return(RedirectToPage("/JogoDaVelha"));
        }