示例#1
0
        private async void Buy()
        {
            var lat = CenterSearch.Center.Latitude;
            var lon = CenterSearch.Center.Longitude;

            CenterSearch = (MapSpan.FromCenterAndRadius((new TK.CustomMap.Position(lat, lon)), Distance.FromMiles(.10)));

            Locations.Clear();
            Camiones.Clear();

            Locations.Add(new TKCustomMapPin
            {
                Image       = "casa",
                Position    = CenterSearch.Center,
                Anchor      = new Point(0.48, 0.96),
                ShowCallout = true,
            });



            ObtenerDireccion(CenterSearch.Center.Latitude, CenterSearch.Center.Longitude);

            isVisible = true;
            OneButton = false;
        }
示例#2
0
        private void AdicionarPedido(string key, DistribuidorFirebase pedido)
        {
            // Locations.Clear();

            try
            {
                if (!isVisible)
                {
                    Point p     = new Point(0.48, 0.96);
                    var   found = Camiones.FirstOrDefault(x => x.id == pedido.id);
                    if (found != null)
                    {
                        int i = Camiones.IndexOf(found);
                        Camiones[i] = pedido;

                        int y = Locations.IndexOf(Locations.FirstOrDefault(x => x.ID == pedido.id.ToString()));

                        Locations.RemoveAt(y);
                        var Pindistribuidor = new TKCustomMapPin
                        {
                            Image       = "camion",
                            Position    = new TK.CustomMap.Position((double)pedido.Latitud, (double)pedido.Longitud),
                            Anchor      = p,
                            ShowCallout = true,
                            ID          = pedido.id.ToString()
                        };
                        Locations.Add(Pindistribuidor);
                        //PropertyChanged?.Invoke(this, new PropertyChangedEventArgs("Locations"));
                    }
                    else
                    {
                        Camiones.Add(new DistribuidorFirebase()
                        {
                            id       = pedido.id,
                            Latitud  = pedido.Latitud,
                            Longitud = pedido.Longitud,
                        });
                        var Pindistribuidor = new TKCustomMapPin
                        {
                            Image       = "camion",
                            Position    = new TK.CustomMap.Position((double)pedido.Latitud, (double)pedido.Longitud),
                            Anchor      = p,
                            ShowCallout = true,
                            ID          = pedido.id.ToString()
                        };
                        Locations.Add(Pindistribuidor);
                    }
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex.Message);
            }
        }
示例#3
0
        private async void Buy()
        {
            IsBusy    = true;
            OneButton = false;

            if (CrossConnectivity.Current.IsConnected)
            {
                var servidor = await apiService.Horario(new SolicitudesFallidas { Latitud = CenterSearch.Center.Latitude, Longitud = CenterSearch.Center.Longitude, IdCliente = Settings.idCliente });

                if (servidor.IsSuccess == false && Convert.ToInt32(servidor.Result.ToString()) == -2)
                {
                    IsBusy    = false;
                    OneButton = true;
                    await App.Current.MainPage.DisplayAlert(Mensaje.Titulo.Informacion, "No se ha podido conectar al servicio", Mensaje.TextoBoton.Aceptar);

                    return;
                }

                if (servidor.IsSuccess == false && int.Parse(servidor.Result.ToString()) == 0)
                {
                    IsBusy    = false;
                    OneButton = true;
                    await App.Current.MainPage.DisplayAlert(Mensaje.Titulo.Informacion, Mensaje.Contenido.FueraDelHorario, Mensaje.TextoBoton.Aceptar);

                    return;
                }


                try
                {
                    var d = new Cliente {
                        IdCliente = Settings.idCliente
                    };

                    var response = await ApiServices.InsertarAsync <Cliente>(d, new System.Uri(Constants.BaseApiAddress), "/api/Compras/CompraPendiente");

                    var pedidos = JsonConvert.DeserializeObject <int>(response.Result.ToString());

                    if (pedidos > 0)
                    {
                        bool action = false;

                        if (pedidos > 1)
                        {
                            action = await App.Current.MainPage.DisplayAlert("Aviso", "Usted tiene  " + pedidos + " pedidos pendiente, desea continuar", "Continuar", "Cancelar");
                        }
                        else
                        {
                            action = await App.Current.MainPage.DisplayAlert("Aviso", "Usted tiene  " + pedidos + " pedido pendiente, desea continuar", "Continuar", "Cancelar");
                        }
                        if (!action)
                        {
                            OneButton = true;
                            IsBusy    = false;
                            return;
                        }
                    }


                    var lat = CenterSearch.Center.Latitude;
                    var lon = CenterSearch.Center.Longitude;
                    CenterSearch = (MapSpan.FromCenterAndRadius((new TK.CustomMap.Position(lat, lon)), Distance.FromMiles(.10)));

                    Locations.Clear();
                    Camiones.Clear();

                    //Locations.Add(new TKCustomMapPin
                    //{
                    //    Image = "casa",
                    //    Position = CenterSearch.Center,
                    //    Anchor = new Point(0.48, 0.96),
                    //    ShowCallout = true,
                    //    ID = "casa"
                    //});


                    ObtenerDireccion(CenterSearch.Center.Latitude, CenterSearch.Center.Longitude);
                    isVisible = true;
                    OneButton = false;
                    IsBusy    = false;
                }
                catch (Exception ex)
                {
                    Debug.Write(ex.Message);
                    throw;
                }
            }
            else
            {
                IsBusy = false;
                await App.Current.MainPage.DisplayAlert(Mensaje.Titulo.Error, Mensaje.Contenido.SinInternet, Mensaje.TextoBoton.Aceptar);
            }
        }