private async void Button_Clicked(object sender, EventArgs e) { if (Boton.Text.Equals("Finalizar Viaje")) { var myHttpClient = new HttpClient(); Archivo d = JsonConvert.DeserializeObject <Archivo>(TextoJson); var formContent = new FormUrlEncodedContent(new Dictionary <string, string> { }); var uri = new Uri("https://urbanmove-back.azurewebsites.net/api/Viaje/FinalizarViaje?idEmpresa=" + d.idEmpresa + "&idVehiculo=" + d.idVehiculo + "&codigo=" + this.TxtCodReserva.Text); var codigoRespuesta = myHttpClient.PostAsync(uri.ToString(), formContent).Result; // Use default vibration length Vibration.Vibrate(); // Or use specified time var duration = TimeSpan.FromSeconds(1); Vibration.Vibrate(duration); if (codigoRespuesta.StatusCode == System.Net.HttpStatusCode.OK) { //Controlamos la respuesta de la api aTimer.Stop(); //a2Timer.Stop(); var responseString = await codigoRespuesta.Content.ReadAsStringAsync(); RespuestaJsonFinViaje des = JsonConvert.DeserializeObject <RespuestaJsonFinViaje>(responseString); lblPrueba1.Text = "Ha finalizado su viaje!! "; lblPrueba1.TextColor = Color.Green; lblPrueba2.Text = "El viaje salió $" + des.precio + "."; lblPrueba2.TextColor = Color.Green; lblPrueba3.Text = "Vuelva pronto!!"; lblPrueba3.TextColor = Color.Green; } else { lblPrueba.Text = "Error al consumir el servicio codigo : " + codigoRespuesta.StatusCode.ToString(); } } else { // comenzar viaje var myHttpClient = new HttpClient(); // var uri = new Uri("https://urbanmove-back.azurewebsites.net/api/Viaje/IniciarViaje"); Archivo d = JsonConvert.DeserializeObject <Archivo>(TextoJson); var formContent = new FormUrlEncodedContent(new Dictionary <string, string> { }); var uri = new Uri("https://urbanmove-back.azurewebsites.net/api/Viaje/IniciarViaje?idEmpresa=" + d.idEmpresa + "&idVehiculo=" + d.idVehiculo + "&codigo=" + this.TxtCodReserva.Text); var codigoRespuesta = myHttpClient.PostAsync(uri.ToString(), formContent).Result; if (codigoRespuesta.StatusCode == System.Net.HttpStatusCode.OK) { //Controlamos la respuesta de la api var responseString = await codigoRespuesta.Content.ReadAsStringAsync(); RespuestaJsonInicioViaje des = JsonConvert.DeserializeObject <RespuestaJsonInicioViaje>(responseString); if (!(des.result.Equals("false"))) { Boton.Text = "Finalizar Viaje"; TxtCodReserva.IsEnabled = false; Color color1 = Color.Red; Boton.BackgroundColor = color1; Color color2 = Color.Black; Boton.TextColor = color2; Color color3 = Color.Green; lblCron.TextColor = color3; aTimer = new Timer(); aTimer.Interval = 1000; aTimer.Elapsed += OnTimedEvent; aTimer.Start(); /*aTimer2 = new Timer(); * aTimer2.Interval = 1000; * aTimer2.Elapsed += OnTimedEvent2; * * aTimer2.Start(); */ } else { lblPrueba.Text = "No existe el código de reserva"; } } else { lblPrueba.Text = "Error al consumir WS: " + codigoRespuesta; } } }
//public void PutSincronizacion() async void PutSincronizacion(object sender, EventArgs e) { //Sample post to a restful api url, remember to use the namespace System.Net.Http for HttpClient() var myHttpClient = new HttpClient(); var uri = new Uri("https://urbanmove-back.azurewebsites.net/api/Vehiculo/sincronizar?idEmpresa=" + this.TxtIdEmpresa.Text + "&idVehiculo=" + this.TxtIdVehiculo.Text + "&imeiDispositivo=" + this.TxtImei.Text); /*var formContent = new FormUrlEncodedContent(new Dictionary<string, string> * { * { "idEmpresa", this.TxtIdEmpresa.Text }, * { "idVehiculo", this.TxtIdVehiculo.Text }, * { "imeiDispositivo", this.TxtImei.Text } * });*/ var formContent = new FormUrlEncodedContent(new Dictionary <string, string> { }); var codigoRespuesta = myHttpClient.PutAsync(uri.ToString(), formContent).Result; if (codigoRespuesta.StatusCode == System.Net.HttpStatusCode.OK) { var responseString = await codigoRespuesta.Content.ReadAsStringAsync(); RespuestaJsonInicioViaje des = JsonConvert.DeserializeObject <RespuestaJsonInicioViaje>(responseString); if ((des.result.Equals("false"))) { LblRes.Text = "Error: Compruebe que la empresa y/o el vehiculo existan en el sistema "; // + des.result.ToString() + " - " + des.message + " -- " + uri ; } else { idEmpresa = this.TxtIdEmpresa.Text; idVehiculo = this.TxtIdVehiculo.Text; LblRes.Text = "Vehículo sincronizado : " + uri; //Creacion del archivo que contendra la sincronizacion var fileSinc = (SincronizacionFile)BindingContext; var filename = Path.Combine(App.FolderPath, "sinc.txt"); fileSinc.Filename = filename; //Guardamos los datos en un json en el archivo JObject oJsonObject = new JObject(); oJsonObject.Add("idEmpresa", idEmpresa); oJsonObject.Add("idVehiculo", idVehiculo); fileSinc.jsonText = oJsonObject.ToString(); // Update File.WriteAllText(fileSinc.Filename, fileSinc.jsonText); await Navigation.PushAsync(new InicioDeViaje()); await Task.Run(() => { //Add your code here, it might looks like: SetTimer(); }); } } else { LblRes.Text = "Algo salió mal"; } }