示例#1
0
        private void CerrarSession()
        {
            try
            {
                var servicio  = new Services.LoginServices();
                var respuesta = new Entidades.Respuesta();
                respuesta = servicio.CerrarSession(Usuario);

                if (respuesta.Code == 1)
                {
                    bd.DeleteUser(Usuario);
                    Device.BeginInvokeOnMainThread(() =>
                    {
                        Acr.UserDialogs.UserDialogs.Instance.HideLoading();
                        DisplayAlert("LIP - PAISAS ", "La session ha sido cerrada!", "OK");
                        Navigation.PopAsync(true);
                    });
                }
                else
                {
                    Device.BeginInvokeOnMainThread(() =>
                    {
                        Acr.UserDialogs.UserDialogs.Instance.HideLoading();
                        DisplayAlert("LIP - PAISAS ", respuesta.Response != ""?respuesta.Response:"Error de Conexion", "OK");
                        Navigation.PopAsync(true);
                    });
                }
            }
            catch (Exception)
            {
                Acr.UserDialogs.UserDialogs.Instance.HideLoading();
                DisplayAlert("LIP - PAISAS ", "Ocurrion un error", "OK");
                // throw;
            }
        }
示例#2
0
        private void IniciarSessionAsync()
        {
            try
            {
                var Servicios = new Services.LoginServices();
                Entidades.Respuesta Resultado;
                Entidades.Auth      usuario = new Entidades.Auth();


                Resultado = Servicios.LoginAsync(txtCedula.Text.ToUpper());


                if (Resultado.Code == 1) //Repuesta desde Servidor
                {
                    if (Resultado.Objeto != null)
                    {
                        usuario        = JsonConvert.DeserializeObject <Entidades.Auth>(Resultado.Objeto.ToString());
                        usuario.Conteo = usuario.Conteo - 1;
                        var f = new MainPage();
                        usuario.Cedula = this.txtCedula.Text;
                        f.Usuario      = usuario;

                        f.VienededeLogin = true;

                        f.Lista = Resultado.Lista;
                        f.CargarDatos();

                        Device.BeginInvokeOnMainThread(async() =>
                        {
                            Acr.UserDialogs.UserDialogs.Instance.HideLoading();
                            await DisplayAlert("LIP", "Bienvenido :" + usuario.Nombre, "Aceptar");
                            await this.Navigation.PushAsync(f, true);
                        });
                    }
                    else
                    {
                        if (Resultado.Response == "Este Usuario tiene session activa")
                        {
                            var bd  = new DataAccess();
                            var usu = new Entidades.Auth();
                            usu = bd.GetAllLevantado(txtCedula.Text);


                            if (usuario != null)
                            {
                                var f = new MainPage();
                                f.bEnSession     = true;
                                f.Usuario        = usuario;
                                f.VienededeLogin = true;
                                f.CargarDatos();

                                Acr.UserDialogs.UserDialogs.Instance.HideLoading();
                                Device.BeginInvokeOnMainThread(async() =>
                                {
                                    await this.Navigation.PushAsync(f, true);
                                });
                            }
                            else
                            {
                                Session = false;
                                Acr.UserDialogs.UserDialogs.Instance.HideLoading();
                                Device.BeginInvokeOnMainThread(async() =>
                                {
                                    await DisplayAlert("LIP", "Este Usuario Tienen una session Abierta en un dispositivo, favor cerrar la sesión", "Ok");
                                    return;
                                });
                            }
                        }
                    }
                }
                if (Resultado.Code == 4)//Encontrado en BD
                {
                    var f = new MainPage();
                    f.bEnSession     = true;
                    f.Usuario        = (Entidades.Auth)Resultado.Objeto;
                    f.VienededeLogin = true;

                    f.CargarDatos();

                    Acr.UserDialogs.UserDialogs.Instance.HideLoading();
                    Device.BeginInvokeOnMainThread(async() =>
                    {
                        await this.Navigation.PushAsync(f, true);
                    });
                }

                if (Resultado.Code == 3) //Error de Conexion BD
                {
                    Device.BeginInvokeOnMainThread(async() =>
                    {
                        await DisplayAlert("LIP", " Error de Conexion", "Aceptar");
                        return;
                    });
                    Acr.UserDialogs.UserDialogs.Instance.HideLoading();
                }
                if (Resultado.Code == 0) //Error de Conexion Servidor
                {
                    Device.BeginInvokeOnMainThread(async() =>
                    {
                        await DisplayAlert("LIP", Resultado.Response != "" ? Resultado.Response : "Ocurrio un error de Conexion con el Servidor", "Aceptar");
                        Acr.UserDialogs.UserDialogs.Instance.HideLoading();
                        return;
                    });
                }
                this.IsBusy = false;
            }

            catch (Exception)
            {
                Acr.UserDialogs.UserDialogs.Instance.HideLoading();
                Device.BeginInvokeOnMainThread(async() =>
                {
                    await DisplayAlert("LIP", "Ocurrio un Error", "Ok");
                    return;
                });

                // throw;
            }
        }