private static async Task <bool> SearchPhysicalPerson() { Console.WriteLine("starting SearchPhysicalPerson"); HttpResponseMessage response; try { response = await HttpClient.GetAsync($"{_endpoint}/PhysicalPerson"); if (!response.IsSuccessStatusCode) { return(false); } } catch (Exception e) { Console.WriteLine(e); return(false); } string responseBodyAsText = await response.Content.ReadAsStringAsync(); List <PhysicalPersonModel> listaPhysicalPerson = JsonConvert.DeserializeObject <List <PhysicalPersonModel> >(responseBodyAsText); var pessoas = listaPhysicalPerson.Where(x => x.ResultadoFinal == null || !x.ResultadoFinal.Completed).ToList(); foreach (var pessoa in pessoas) { Console.WriteLine("********"); Console.WriteLine($"Buscando Pessoa: {pessoa.CPF}"); Console.WriteLine("********"); // executando o Crawler PhysicalPersonModel resultCrawler; try { resultCrawler = new PhysicalPersonCoordinator(pessoa).StartSearch();; Console.WriteLine("Completou a busca? {0}", resultCrawler.ResultadoFinal.Completed); } catch (Exception e) { Console.WriteLine(e); continue; } Console.WriteLine("Salvando informações obtidas..."); var pessoaJson = JsonConvert.SerializeObject(resultCrawler); var pessoaJsonJsonString = new StringContent(pessoaJson, Encoding.UTF8, "application/json"); var response3 = HttpClient.PutAsync($"{_endpoint}/PhysicalPerson/{pessoa.Id}", pessoaJsonJsonString).Result; Console.WriteLine(response3); } return(true); }
static void Main(string[] args) { Console.WriteLine("Iniciando a busca"); #region objetos de teste var exampleLegalPerson = new LegalPersonModel { NomeFantasia = "PETROBRASIL", CNPJ = "1111111111", CPFDoFundador = "2222222222", Contador = "333333333", }; var examplePhysicalPerson = new PhysicalPersonModel() { NomeCompleto = "JULIO AVILA", CPF = "1111111111", RG = "22222222222", DataDeNascimento = "23/01/1997", NomeDaMae = "SELMA AVILA" }; #endregion try { using (var db = new DataBaseContext()) { Console.WriteLine("running migrations"); db.Database.Migrate(); Console.WriteLine("saving legal person"); db.LegalPerson.Add(exampleLegalPerson); db.SaveChanges(); var empresas = db.LegalPerson; foreach (var empresa in empresas) { Console.WriteLine($"Empresa: {empresa.NomeFantasia}"); var crawler = new LegalPersonCoordinator(empresa); var result = crawler.Run(); Console.WriteLine("Completou a busca? {0}", result.Completed); } Console.WriteLine("saving physical person"); db.PhysicalPerson.Add(examplePhysicalPerson); db.SaveChanges(); var pessoas = db.PhysicalPerson; foreach (var pessoa in pessoas) { Console.WriteLine($"Pessoa: {pessoa.NomeCompleto}"); var crawler = new PhysicalPersonCoordinator(pessoa); var result = crawler.Run(); Console.WriteLine("Completou a busca? {0}", result.Completed); } } } catch (Exception e) { Console.WriteLine("Search execution error: {0}", e.Message); } Console.WriteLine("finished application"); Console.ReadKey(); }