//DelcaraONo public async Task <Response> PostGetMovements( string MovementsServicePrefix, Models.Request.Movements.RootObject model) { try { var request = JsonConvert.SerializeObject(model); var content = new StringContent(request, Encoding.UTF8, "application/json"); var client = new HttpClient(); client.BaseAddress = new Uri(Constants.Url.BaseAdressBluemix); var url = MovementsServicePrefix;//string.Format("{0}{1}", servicePrefix, controller); var response = await client.PostAsync(Constants.Url.BaseAdressBluemix + url, content); if (!response.IsSuccessStatusCode) { return(new Response { IsSuccess = false, Message = response.StatusCode.ToString(), }); } var result = await response.Content.ReadAsStringAsync(); var newRecord = JsonConvert.DeserializeObject <Models.Responses.Movements.RootObject> (result); return(new Response { IsSuccess = true, Message = "OK", Result = newRecord, }); } catch (Exception ex) { return(new Response { IsSuccess = false, Message = ex.Message, }); } }
public void CallApi() { progressBar.Visibility = ViewStates.Visible; contentLinearLayout.Visibility = ViewStates.Gone; Task.Factory.StartNew(() => { //Armando el objeto para consumir API movements //No borrar Declara o nó var header = new Models.Request.Movements.Header { token = HomeActivity.GetInstance().access_token, }; var datum = new Models.Request.Movements.Datum { header = header, }; var requestModel = new Models.Request.Movements.RootObject { data = new List <Models.Request.Movements.Datum>() }; requestModel.data.Add(datum); var ResponseValiateStatement = ApiService.PostGetMovements( Constants.Url.MovementsServicePrefix, requestModel).Result; if (!ResponseValiateStatement.IsSuccess) { RunOnUiThread(() => { progressBar.Visibility = Android.Views.ViewStates.Gone; Android.App.AlertDialog.Builder dialog = new AlertDialog.Builder(this); AlertDialog alert = dialog.Create(); alert.SetTitle("ALERTA"); alert.SetMessage("Hubo un error inesperado"); alert.SetButton("ACEPTAR", (c, ev) => { CallApi(); }); alert.SetButton2("CANCEL", (c, ev) => { Finish(); }); alert.Show(); return; }); } RunOnUiThread(() => { progressBar.Visibility = Android.Views.ViewStates.Gone; contentLinearLayout.Visibility = Android.Views.ViewStates.Visible; }); var Movements = (Models.Responses.Movements.RootObject)ResponseValiateStatement.Result; if (Movements.data[0].header.Status == 200) { if (Movements.data[0].declaration) { //TODO: Crear intent para que salga que debe declarar RunOnUiThread(() => { capable.Text = "Por la suma de tus ingresos anuales, eres contribuyente y debes hacer la declaración de renta ante la DIAN"; }); return; } // TODO: No declara RunOnUiThread(() => { capable.Text = "Por la suma de tus ingresos anuales, no eres contribuyente y no debes hacer la declaración de renta ante la DIAN"; }); } }); }