private async void BtConfirmar_Clicked(object sender, EventArgs e) { btConfirmar.IsEnabled = false; if (cidade.Text == "") { await DisplayAlert("", "Campo Cidade Obrigatório.", "Ok"); btConfirmar.IsEnabled = true; } else if (pckTipoInstituicao.SelectedIndex == 0) { await DisplayAlert("", "Campo Tipo Instituição Obrigatório.", "Ok"); btConfirmar.IsEnabled = true; } else if (SearchConteudo.Text == "") { await DisplayAlert("", "Campo Instituição Obrigatório.", "Ok"); btConfirmar.IsEnabled = true; } else if (txtData.IsEnabled == false) { if (op == 1) { await DisplayAlert("", "Campo Data da Visita Obrigatório.", "Ok"); } else if (op == 2) { await DisplayAlert("", "Campo Data da Revisita Obrigatório.", "Ok"); } else { await DisplayAlert("", "Campo Data é Obrigatório.", "Ok"); } txtData.IsEnabled = true; btConfirmar.IsEnabled = true; } else { QuestionarioApi questionarioApi = new QuestionarioApi(); Instituto _instituto = institutoService.GetInstituto(nomeinstituto, 13); //Verificar a substituição do valor 13 pelo cidadeId DownloadQuestionario downloadQuestionario = new DownloadQuestionario(); OnDateSelected(); string idinstituto = _instituto.Id.ToString(); string token = Settings.Token; dataVisita = Convert.ToString(dataVisita.ToString()); string respVisita = string.Empty; try { var QuestionarioExist = databaseHelper.GetQuestionarioVisita(Convert.ToInt32(idinstituto), txtData.Date); var idUsuario = Convert.ToInt32(Settings.idUsuario); if (QuestionarioExist.Count == 0) { using (var Dialog = UserDialogs.Instance.Loading("Gerando Questionário...", null, null, true, MaskType.Black)) { var addQuestionario = new AddQuestionario { id = idUsuario, instituicaoId = Convert.ToInt32(idinstituto), dataAplicacao = dataVisita, colaboradorExternoId = 0, formaColetaId = 0 }; string jsonRequest = JsonConvert.SerializeObject(addQuestionario); StringContent httpContent = new StringContent(jsonRequest, Encoding.UTF8, "application / json"); var client = new HttpClient(); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); var endereco = Settings.EnderecoApi; //var orgaoEmissor = Settings.emissorExternoId; client.BaseAddress = new Uri(endereco); var url = string.Format("visita/adicionar-visita"); var resultVisita = await client.PostAsync(url, httpContent); respVisita = await resultVisita.Content.ReadAsStringAsync(); if (!resultVisita.IsSuccessStatusCode) { throw new Exception(resultVisita.RequestMessage.Content.ToString()); } await Task.Delay(10000); } QuestionarioApi resposta; using (var Dialog = UserDialogs.Instance.Loading("Sincronizando questionário...", null, null, true, MaskType.Black)) { resposta = JsonConvert.DeserializeObject <QuestionarioApi>(respVisita); await Task.CompletedTask; } if (resposta.success) { VisitaToken visitaToken; bool retorno; using (var Dialog = UserDialogs.Instance.Loading("Sincronizando aspectos e questões...", null, null, true, MaskType.Black)) { visitaToken = new VisitaToken(); retorno = visitaToken.ConsumirVisita(resposta); await Task.Delay(30000); } if (retorno) { await DisplayAlert("", "Questionário baixado com sucesso.", "Ok"); await Navigation.PushAsync(new VisualizarQuestionariosBaixados(), true); } } else { await DisplayAlert("Erro", "Não é permitido baixar um questionário com emissor associado a outro órgão.", "Ok"); } } else { await DisplayAlert("", "Já possui um registro deste questionário no aplicativo.", "Ok"); } } catch (Exception ex) { await DisplayAlert("", "Não existem registros para o(s) critério(s) informado(s).", "Ok"); } btConfirmar.IsEnabled = true; } }
private async void BtConfirmar_Clicked(object sender, EventArgs e) { btConfirmar.IsEnabled = false; if (cidade.Text == "") { await DisplayAlert("", "Campo Cidade Obrigatório.", "Ok"); btConfirmar.IsEnabled = true; } else if (pckTipoInstituicao.SelectedIndex == 0) { await DisplayAlert("", "Campo Tipo Instituição Obrigatório.", "Ok"); btConfirmar.IsEnabled = true; } else if (SearchConteudo.Text == "") { await DisplayAlert("", "Campo Instituição Obrigatório.", "Ok"); btConfirmar.IsEnabled = true; } else if (txtData.IsEnabled == false) { if (op == 1) { await DisplayAlert("", "Campo Data da Visita Obrigatório.", "Ok"); } else if (op == 2) { await DisplayAlert("", "Campo Data da Revisita Obrigatório.", "Ok"); } else { await DisplayAlert("", "Campo Data é Obrigatório.", "Ok"); } txtData.IsEnabled = true; btConfirmar.IsEnabled = true; } else { QuestionarioApi questionarioApi = new QuestionarioApi(); var Cidade = databaseHelper.GetMunicipioData(nomeCidade); CidadeId = Cidade.Id; Instituto _instituto = institutoService.GetInstituto(nomeinstituto, CidadeId); DownloadQuestionario downloadQuestionario = new DownloadQuestionario(); OnDateSelected(); string idinstituto = _instituto.Id.ToString(); string token = Settings.Token; dataVisita = Convert.ToString(dataVisita.ToString()); string respVisita = string.Empty; try { var QuestionarioExist = databaseHelper.GetQuestionarioVisita(Convert.ToInt32(idinstituto), txtData.Date); if (QuestionarioExist.Count == 0) { if (op == 1) { using (var Dialog = UserDialogs.Instance.Loading("Sincronizando...", null, null, true, MaskType.Black)) { var client = new HttpClient(); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); var endereco = Settings.EnderecoApi; var orgaoEmissor = Settings.emissorExternoId; client.BaseAddress = new Uri(endereco); var url = string.Format("visita/obter-visita/{0}/{1}/{2}", idinstituto, dataVisita, Settings.emissorExternoId); var resultVisita = await client.GetAsync(url); respVisita = await resultVisita.Content.ReadAsStringAsync(); if (!resultVisita.IsSuccessStatusCode) { throw new Exception(resultVisita.RequestMessage.Content.ToString()); } await Task.Delay(10000); } } else if (op == 2) { using (var Dialog = UserDialogs.Instance.Loading("Sincronizando...", null, null, true, MaskType.Black)) { var client = new HttpClient(); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); var endereco = Settings.EnderecoApi; var orgaoEmissor = Settings.emissorExternoId; client.BaseAddress = new Uri(endereco); var url = string.Format("visita/obter-revisita/{0}/{1}/{2}", idinstituto, dataVisita, Settings.emissorExternoId); var resultVisita = await client.GetAsync(url); respVisita = await resultVisita.Content.ReadAsStringAsync(); if (!resultVisita.IsSuccessStatusCode) { throw new Exception(resultVisita.RequestMessage.Content.ToString()); } await Task.Delay(10000); } } QuestionarioApi resposta; using (var Dialog = UserDialogs.Instance.Loading("Sincronizando questionário...", null, null, true, MaskType.Black)) { resposta = JsonConvert.DeserializeObject <QuestionarioApi>(respVisita); await Task.CompletedTask; } if (resposta.success) { VisitaToken visitaToken; bool retorno; using (var Dialog = UserDialogs.Instance.Loading("Sincronizando aspectos e questões...", null, null, true, MaskType.Black)) { visitaToken = new VisitaToken(); retorno = visitaToken.ConsumirVisita(resposta); await Task.Delay(30000); } if (retorno) { await DisplayAlert("", "Questionário baixado com sucesso.", "Ok"); await Navigation.PushAsync(new VisualizarQuestionariosBaixados(), true); } } else { await DisplayAlert("Erro", "Não é permitido baixar um questionário com emissor associado a outro órgão.", "Ok"); } } else { await DisplayAlert("", "Já possui um registro deste questionário no aplicativo.", "Ok"); } } catch (Exception ex) { await DisplayAlert("", "Não existem registros para o(s) critério(s) informado(s).", "Ok"); } /* if((op == 1)||(op==2)) * { * //var resposta = JsonConvert.DeserializeObject<QuestionarioApi>(respVisita); * * * using (var Dialog = UserDialogs.Instance.Loading("Sincronizando...", null, null, true, MaskType.Black)) * { * questionarioApi = JsonConvert.DeserializeObject<QuestionarioApi>(respVisita); * //await Task.Delay(30000); * } * if (questionarioApi.data != null) * { * using (var Dialog = UserDialogs.Instance.Loading("Baixando Questionário...", null, null, true, MaskType.Black)) * { * downloadQuestionario.BaixarQuestionario(idinstituto, token, dataVisita, op); * await Task.Delay(60000); * } * await DisplayAlert("", "Questionário baixado com sucesso.", "Ok"); * } * else * { * await DisplayAlert("", "Nenhum registro encontrado.", "Ok"); * } * * } * else * { * string day = _dataConsultaVisita.Day.ToString(); * string month = _dataConsultaVisita.Month.ToString(); * string year = _dataConsultaVisita.Year.ToString(); * string datavisita = day + "/" + month + "/" + year; * var dataQuestionario = Convert.ToDateTime(datavisita); * //await Navigation.PushAsync(new VisualizarQuestionariosBaixados(idinstituto, dataQuestionario), true); * }*/ btConfirmar.IsEnabled = true; } }