async Task RefreshCommandExecute() { if (this.IsBusy) { return; } this.IsBusy = true; this.RefreshCommand.ChangeCanExecute(); try { Ceps.Clear(); foreach (var item in Data.DatabaseService.Current.Listar()) { this.Ceps.Add(item); } await Task.FromResult(0); } catch (Exception ex) { await App.Current.MainPage.DisplayAlert("Alerta!", ex.Message, "OK"); } finally { this.IsBusy = false; this.RefreshCommand.ChangeCanExecute(); } }
async Task RefreshCommandExecute() { try { await Task.FromResult <object>(null); if (IsBusy) { return; } IsBusy = true; RefreshCommand.ChangeCanExecute(); Ceps.Clear(); foreach (var item in DatabaseService.Current.CepGetAll()) { Ceps.Add(item); } } catch (Exception ex) { throw; } }
public CepsViewModel() : base() { MessagingCenter.Subscribe <BuscaCepViewModel>(this, "ADICIONAR_CEP", (sender) => { if (!Ceps.Any(lbda => lbda.Equals(sender.CEP))) { Ceps.Add(sender.CEP); } }); }
public ActionResult <Ceps> CreateOrUpdate([FromQuery(Name = "cep")] string cep) { var tokenApi = _config["APICEP:Token"]; cep = cep.Replace("-", "").Replace(".", ""); var client = new RestClient("https://www.cepaberto.com/api/v3/"); var request = new RestRequest($"cep?cep={cep}"); request.AddHeader("Authorization", $"Token token={tokenApi}"); var response = client.Get(request).Content; JObject json = JObject.Parse(response); if (response == "{}") { return(NotFound("CEP inexistente.")); } var cidadeApi = json["cidade"]["nome"].ToString(); var cepApi = Convert.ToInt64(json["cep"].ToString()); var logadrouroApi = json["logradouro"].ToString(); var bairroApi = json["bairro"].ToString(); var estadoApi = json["estado"]["sigla"].ToString(); var cepFind = Get(cep).Value; if (cepFind == null) { var cepCreated = new Ceps() { Bairro = bairroApi, Cep = cepApi, Cidade = cidadeApi, Logradouro = logadrouroApi, Estado = estadoApi, }; var created = _cepService.Create(cepCreated); return(created); } else { if (cepFind.Bairro != bairroApi || cepFind.Logradouro != logadrouroApi || cepFind.Cidade != cidadeApi || cepFind.Estado != estadoApi) { cepFind.Bairro = bairroApi; cepFind.Logradouro = logadrouroApi; cepFind.Cidade = cidadeApi; cepFind.Estado = estadoApi; Update(cep, cepFind); } } return(cepFind); }
async Task RefreshCommandExecute() { try { if (IsBusy) { return; } IsBusy = true; RefreshCommand.ChangeCanExecute(); Ceps.Clear(); // Recupera informações do banco de dados remoto API (Aula 4) foreach (var item in await BuscaCepHttpClient.Current.GetCeps()) { Ceps.Add(item); } // Recupera informações do banco de dados local (SQLite - Aula 3 parte 2) //foreach (var item in DatabaseService.Current.CepGetAll()) //{ // Ceps.Add(item); //} } catch (UnauthorizedAccessException ex) { if (await App.Current.MainPage.DisplayAlert("Ooops", ex.Message, "Sim", "Não")) { await BuscaCepHttpClient.Current.Autenticar(SEU_USUARIO, SUA_SENHA); IsBusy = false; RefreshCommand.ChangeCanExecute(); await RefreshCommandExecute(); } } catch (InvalidOperationException ex) { await App.Current.MainPage.DisplayAlert("Ooops", ex.Message, "Ok"); } catch (Exception ex) { await App.Current.MainPage.DisplayAlert("Ah não!", ex.Message, "Ok"); } finally { IsBusy = false; RefreshCommand.ChangeCanExecute(); } }
private async Task RefreshCommandExecute() { try { await Task.FromResult <object>(null); RefreshCommand.ChangeCanExecute(); //LIMPAMOS A LISTA ANTES DE APRESENTAR AO NOSSO CLIENTE Ceps.Clear(); //ADICIONA O NOVO CEP A LISTA QUE VAI PARA A VIEW foreach (var item in DatabaseService.Current.GetAll()) { Ceps.Add(item); } } catch (Exception) { throw; } }
private void Update(string cep, Ceps cepIn) { _cepService.Update(cep, cepIn); }
public void Update(string cep, Ceps cepIn) => _ceps.ReplaceOne(u => u.Cep == Convert.ToInt64(cep), cepIn);
public Ceps Create(Ceps cep) { _ceps.InsertOne(cep); return(cep); }