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;
                }
            }
        }
예제 #2
0
        //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";
            }
        }