Пример #1
0
        protected async override void OnAppearing()
        {
            if (rvm.EsIncompleta())
            {
                btnAplicar.IsEnabled = false;
            }
            else
            {
                btnAplicar.IsEnabled = true;
            }

            if (App.usr.idusuario != 0)
            {
                rvm.IdUsuario = App.usr.idusuario;
            }

            if (lsC.Count == 0 && vwContactos != null)
            {
                lsC = vwContactos.GetLista();
            }

            msgreferidos msg = App.db.SelectMsgRef();

            if (msg != null)
            {
                await DisplayAlert("Aviso", msg.msg, "OK");

                App.db.BorraMsgRef();
            }

            base.OnAppearing();
        }
Пример #2
0
 //---------------------------------------------------------------
 public void AltaMsgRef(msgreferidos msg)
 {
     database.Insert(msg);
 }
Пример #3
0
        public Login(ILoginManager ilm)
        {
            InitializeComponent();
            try
            {
                CambiaOrientacion();
                MessagingCenter.Subscribe <DeviceOrientationChangeMessage>(this, DeviceOrientationChangeMessage.MessageId, (message) =>
                {
                    CambiaOrientacion();
                });

                Title = "Asi Compras";
                NavigationPage.SetBackButtonTitle(this, "");

                grdMain.IsVisible    = true;
                grdLogin.IsVisible   = false;
                edtCorreo.Completed += (s, e) => nipCapture.SetFocus();

                TapGestureRecognizer tapolvide = new TapGestureRecognizer();
                tapolvide.Tapped += async(s, e) =>
                {
                    await App.Nav.PushAsync(new OlvideNip());
                };
                lblOlvide.GestureRecognizers.Add(tapolvide);
                btnFace.Clicked += async(sender, ea) =>
                {
                    if (!CrossConnectivity.Current.IsConnected)
                    {
                        await DisplayAlert("Aviso", "Necesita una conexion a internet", "OK");

                        return;
                    }
                    await App.Nav.PushModalAsync(new loginfacebook(TipoSocial.facebook), Constantes.animated);

                    //await App.Nav.PushAsync(new loginfacebook(TipoSocial.facebook), Constantes.animated);
                };
                btnGoogle.Clicked += async(sender, ea) =>
                {
                    if (!CrossConnectivity.Current.IsConnected)
                    {
                        await DisplayAlert("Aviso", "Necesita una conexion a internet", "OK");

                        return;
                    }
                    await App.Nav.PushModalAsync(new loginfacebook(TipoSocial.google), Constantes.animated);

                    //await App.Nav.PushAsync(new loginfacebook(TipoSocial.google), Constantes.animated);
                };
                btnReg.Clicked += async(sender, ea) =>
                {
                    App.usr = new Usuario();
                    //await Navigation.PushAsync(new Registro(ilm));
                    await App.Nav.PushAsync(new Registro(ilm), Constantes.animated);
                };
                btnLogin.Clicked += (s, e) =>
                {
                    grdMain.IsVisible  = false;
                    grdLogin.IsVisible = true;
                };
                btnCancelar.Clicked += (s, e) =>
                {
                    grdMain.IsVisible  = true;
                    grdLogin.IsVisible = false;
                };
                btnEntrar.Clicked += async(s, e) =>
                {
                    string email = "";
                    if (!String.IsNullOrEmpty(edtCorreo.Text))
                    {
                        email = check.SafeSqlLiteral(edtCorreo.Text.Trim());
                    }
                    string nip = check.SafeSqlLiteral(nipCapture.Nip);
                    if (email == "" || nip == "")
                    {
                        await DisplayAlert("Error", "No existe ese usuario y/o nip", "OK");
                    }
                    else
                    {
                        string         json = App.WSc.GetUser(0, email, nip);
                        List <Usuario> lu   = JsonConvert.DeserializeObject <List <Usuario> >(json);
                        if (lu.Count > 0)
                        {
                            if (lu.FirstOrDefault().idusuario == -1)
                            {
                                await DisplayAlert("Error", "El usuario se encuentra bloqueado. Revise el correo con el que se registro", "OK");
                            }
                            else
                            {
                                UserDialogs.Instance.ShowLoading("Cargando...");
                                App.usr = lu.FirstOrDefault();
                                json    = "";
                                json    = App.WSc.GetCatalogo(9, "where idusuario = " + App.usr.idusuario.ToString());
                                List <Tarjeta> lt = JsonConvert.DeserializeObject <List <tempuri.org.Tarjeta> >(json).Select(x => new Tarjeta {
                                    idtarjeta = x.idtarjeta, idpais = x.idpais, idemisor = x.idemisor, idusuario = x.idusuario, Last4 = x.Last4
                                }).ToList();
                                App.db.DescargaTarjetas(lt);
                                json = "";
                                json = App.WSc.GetCatalogo(11, "where idusuario = " + App.usr.idusuario.ToString());
                                List <Recarga> lr = JsonConvert.DeserializeObject <List <Recarga> >(json);
                                App.db.DescargaRecargas(lr);
                                json = "";
                                json = App.WSc.GetCatalogo(14, "where idusuario = " + App.usr.idusuario.ToString());
                                List <RecargaMonedero> lrm = JsonConvert.DeserializeObject <List <RecargaMonedero> >(json);
                                App.db.DescargaRecargasWallet(lrm);
                                json = "";
                                json = App.WSc.GetCatalogo(12, "where idusuario = " + App.usr.idusuario.ToString());
                                List <SaldoMonedero> sm = JsonConvert.DeserializeObject <List <SaldoMonedero> >(json);
                                if (sm.Count() > 0)
                                {
                                    App.db.DescargaSaldo(sm.FirstOrDefault());
                                }
                                json = "";
                                json = App.WSc.GetCatalogo(13, "where idusuario = " + App.usr.idusuario.ToString());
                                List <RecargaProg> lrp = JsonConvert.DeserializeObject <List <RecargaProg> >(json);
                                App.db.DescargaRecargasProg(lrp);
                                json = "";
                                json = App.WSc.GetMsgReferidosPUsr(App.usr.idusuario);
                                msgreferidos msg = JsonConvert.DeserializeObject <List <msgreferidos> >(json).FirstOrDefault();
                                App.db.AltaMsgRef(msg);
                                json = "";
                                json = App.WSc.GetMsgReferidosPRef(App.usr.idusuario);
                                msg  = JsonConvert.DeserializeObject <List <msgreferidos> >(json).FirstOrDefault();
                                App.db.AltaMsgRef(msg);

                                //cerro sesion, y ahora entra, si no existe en db local debo dar de alta
                                if (App.db.SelUsr(App.usr.email) == null)
                                {
                                    App.db.AltaUsr(lu.FirstOrDefault());
                                }

                                var nva = App.Nav.NavigationStack.OfType <NuevaTarjeta>().FirstOrDefault();
                                if (nva != null)
                                {
                                    ((App.Current.MainPage as MasterDetailPage).Master as menu).Refrescamenu();
                                    if (App.master == null)
                                    {
                                        App.master = (App.Current.MainPage as MasterDetailPage);
                                    }

                                    UserDialogs.Instance.HideLoading();
                                    await App.Nav.PopAsync(Constantes.animated);

                                    nva.AltaEnPrimeraVez();
                                }
                                else
                                {
                                    UserDialogs.Instance.HideLoading();
                                    App.Current.MainPage = new MainPage();
                                }
                            }
                        }
                        else
                        {
                            UserDialogs.Instance.HideLoading();
                            await DisplayAlert("Error", "No existe ese usuario y/o nip", "OK");
                        }
                    }
                };
            }
            catch (Exception ex)
            {
            }
        }
Пример #4
0
        async void Descarga()
        {
            MainPage = new Cargando();
            bool err      = false;
            var  canReach = await App.HayCnxSrv(Settings.WebServiceCat);

            if (!App.HayCnx() || !canReach)
            {
                //Page p = new Page();
                UserDialogs.Instance.HideLoading();
                await MainPage.DisplayAlert("Aviso", "No hay conexion a internet o el servicio no esta disponible. Consulte con soporte tecnico", "OK");

                MainPage = Reintentar();
            }
            else
            {
                CatalogosViewModel cvm = new CatalogosViewModel();
                //MainPage = new Cargando();
                err = await cvm.Descarga();

                if (err)
                {
                    Page p = new Page();
                    UserDialogs.Instance.HideLoading();
                    await p.DisplayAlert("Aviso", "No hay conexion a internet o el servicio no esta disponible. Consulte con soporte tecnico", "OK");

                    MainPage = Reintentar();
                }
                else
                {
                    usr = db.SelUsr();

                    if (usr != null)
                    {
                        string json = "";
                        json = App.WSc.GetCatalogo(9, "where idusuario = " + usr.idusuario.ToString());
                        List <Tarjeta> lt = JsonConvert.DeserializeObject <List <tempuri.org.Tarjeta> >(json).Select(x => new Tarjeta {
                            idtarjeta = x.idtarjeta, idpais = x.idpais, idemisor = x.idemisor, idusuario = x.idusuario, Last4 = x.Last4
                        }).ToList();
                        db.DescargaTarjetas(lt);
                        json = "";
                        json = App.WSc.GetCatalogo(11, "where idusuario = " + usr.idusuario.ToString());
                        List <Recarga> lr = JsonConvert.DeserializeObject <List <Recarga> >(json);
                        db.DescargaRecargas(lr);
                        json = "";
                        json = App.WSc.GetCatalogo(12, "where idusuario = " + usr.idusuario.ToString());
                        List <SaldoMonedero> sm = JsonConvert.DeserializeObject <List <SaldoMonedero> >(json);
                        if (sm.Count() > 0)
                        {
                            db.DescargaSaldo(sm.FirstOrDefault());
                        }
                        json = "";
                        json = App.WSc.GetCatalogo(13, "where idusuario = " + usr.idusuario.ToString());
                        List <RecargaProg> lrp = JsonConvert.DeserializeObject <List <RecargaProg> >(json);
                        db.DescargaRecargasProg(lrp);
                        // Se bajan los msgs si hay recargas a monedero x referidos
                        json = "";
                        json = App.WSc.GetMsgReferidosPUsr(App.usr.idusuario);
                        msgreferidos msg = JsonConvert.DeserializeObject <List <msgreferidos> >(json).FirstOrDefault();
                        App.db.AltaMsgRef(msg);
                        json = "";
                        json = App.WSc.GetMsgReferidosPRef(App.usr.idusuario);
                        msg  = JsonConvert.DeserializeObject <List <msgreferidos> >(json).FirstOrDefault();
                        App.db.AltaMsgRef(msg);
                    }

                    UserDialogs.Instance.HideLoading();
                    if (usr == null)
                    {
                        usr = new Usuario();
                        if (Settings.TutoVisto1aVez)
                        {
                            catConfig cfg = App.db.SelcatConfig().Where(x => x.idconfig == 2).FirstOrDefault();
                            if (cfg == null || (cfg != null && cfg.valor == "0"))                             //1a vez
                            {
                                //var det = new NavigationPage(new CargarSaldo(null))
                                //{
                                //	BarTextColor = Color.White,
                                //	BarBackgroundColor = Color.FromHex("#e35102"),
                                //	Title = "Así Compras",
                                //};
                                //intnav = det.Navigation;
                                //MainPage = det;
                                MainPage = new MainPage();
                            }
                            else                               //cerre sesion y vuelvo a entrar
                            {
                                var det = new NavigationPage(new Login(this))
                                {
                                    BarTextColor       = Color.White,
                                    BarBackgroundColor = Color.FromHex("#e35102"),
                                    Title = "Así compras",
                                };
                                intnav   = det.Navigation;
                                MainPage = det;
                            }
                        }
                        else
                        {
                            MainPage = new Tuto(this);
                        }
                    }
                    else
                    {
                        MainPage = new MainPage();                         //ShowMainPage();
                    }
                }
            }
        }