예제 #1
0
        public async Task NavigateFromMenu(int id)
        {
            if ((int)MenuItemType.Salir == id)
            {
                Settings.session_access_token  = null;
                Settings.session_idUsuario     = null;
                Settings.session_idEmpresa     = null;
                Settings.session_nombreEmpresa = null;
                Settings.session_username      = null;
                Settings.session_expires_in    = null;
                Settings.session_authority     = null;

                if (string.IsNullOrEmpty((Settings.session_access_token)))
                {
                    MessagingCenter.Send <MainPage>(this, "noAutenticado");
                }
                return;
            }
            if ((int)MenuItemType.Perfil == id)
            {
                await Navigation.PushPopupAsync(new Indicador("Obteniendo tus datos", Color.White));

                GetEmpleado Peticion = new GetEmpleado
                {
                    idEmpresa = Convert.ToInt32(Settings.session_idEmpresa)
                };
                await App.ManejadorDatos.GetEmpleadosByEmpresaAsync(Peticion);

                await Navigation.PopAllPopupAsync();
            }
            if (!MenuPages.ContainsKey(id))
            {
                AddMenuPage(id);
            }
            if ((int)MenuItemType.Eventos == id)
            {
                MenuPages.Remove(id);
                AddMenuPage(id);
            }
            var menu = MenuPages[id];

            if (menu != null && Detail != menu)
            {
                menu.BarTextColor       = Colors.BarTextColor;
                menu.BarBackgroundColor = Colors.BarBackgroundColor;
                Detail = menu;

                if (Device.RuntimePlatform == Device.Android)
                {
                    await Task.Delay(100);
                }

                IsPresented = false;
            }
        }
예제 #2
0
        public async Task GetEmpleadosByEmpresaAsync(GetEmpleado peticion)
        {
            Empleados = new List <GetEmpleadoResponse>();
            try
            {
                var solicitud = await EGuardianAPI.PostAsync(Constants.Endpoint_Evento_GetEmpleadosByEmpresa + peticion.parametros, null);

                solicitud.EnsureSuccessStatusCode();
                string respuesta = await solicitud.Content.ReadAsStringAsync();

                Empleados = JsonConvert.DeserializeObject <List <GetEmpleadoResponse> >(respuesta);
            }
            catch (Exception e)
            {
                System.Diagnostics.Debug.WriteLine("ERROR: " + e.Message);
            }
            var empleados = App.Database.GetEmpleados(Convert.ToInt32(Settings.session_idUsuario)).ToList();

            if (empleados.Count != 0)
            {
                App.Database.DeleteAllEmpleados();
            }

            try
            {
                foreach (var empleado in Empleados)
                {
                    App.Database.InsertEmpleado(
                        new empleados
                    {
                        idEmpleado            = empleado.id,
                        idUsuario             = Convert.ToInt32(Settings.session_idUsuario),
                        username              = empleado.username,
                        firstName             = empleado.firstName,
                        lastName              = empleado.lastName,
                        email                 = empleado.email,
                        genero                = string.IsNullOrEmpty(empleado.genero)?0: Convert.ToInt32(empleado.genero),
                        phoneNumber           = empleado.phoneNumber,
                        enabled               = empleado.enabled,
                        lastPasswordResetDate = empleado.lastName,
                        authority             = empleado.authorities.Count == 0?null: empleado.authorities[0].authority,
                        idPuesto              = 0,
                        nombrePuesto          = ((List <puestos>)App.Database.GetPuesto())[0].nombre
                    }
                        );
                }
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.WriteLine(ex.Message);
            }
        }
예제 #3
0
 public Task GetEmpleadosByEmpresaAsync(GetEmpleado peticion)
 {
     return(ServicioWeb.GetEmpleadosByEmpresaAsync(peticion));
 }