private async void ButGuardar_Clicked(object sender, EventArgs e) { try { if (!string.IsNullOrWhiteSpace(txtNombre.Text)) //validación de no nulos { if (ObjPerfil.Nombre.Length > 0) //validación de no vacío { CtrlPerfil manager = new CtrlPerfil(); //instancia de clase control var res = ""; if (opc) { var Objeto = await manager.InsertAsync(ObjPerfil);//llmada a método que inserta un nuevo registro if (Objeto != null) { ObjPerfil = Objeto.First(); //asignación de objeto local con datos recién ingresados txtId.Text = ObjPerfil.Id.ToString(); //mostrar id del registro creado res = "Ok"; //respuesta positiva } else { res = null;//respuesta negativa si no se realizó correctamente } } else { res = await manager.UpdateAsync(ObjPerfil); //llamada al método actualizar } if (res != null) { await DisplayAlert("Mensaje", "Datos Guardados Correctamente", "ok"); } else { await DisplayAlert("Mensaje", "No se guardó la información, vuelva a intentar más tarde", "ok"); } } else { await DisplayAlert("Mensaje", "Faltan Datos Necesarios", "ok"); } } else { await DisplayAlert("Mensaje", "Faltan Datos", "ok"); } } catch (Exception e1)//control de errores { await DisplayAlert("Mensaje", e1.Message, "ok"); } }
//método para cargar los perfiles en el selector private async void ConsultaPerfil() { try { CtrlPerfil manager = new CtrlPerfil(); var res = await manager.Consultar(); if (res != null) { PkrListaPerfil.ItemsSource = res.ToList(); } } catch (Exception e1) { await DisplayAlert("Mensaje", e1.Message, "ok"); } }
//controlador del botón listar private async void BtnListar_Clicked(object sender, EventArgs e) { try { CtrlPerfil manager = new CtrlPerfil(); //instanciar controlador var res = await manager.Consultar(); //llamada al metodo consultar if (res != null) //si la respuesta es no nulo { lstPerfiles.ItemsSource = res; //cargar en el lista los objetos consultados en la base de datos } } catch (Exception e1)//control de errores { await DisplayAlert("Mensaje", e1.Message, "ok"); } }
//método para eliminar un registro private async void ButEliminar_Clicked(object sender, EventArgs e) { CtrlPerfil manager = new CtrlPerfil(); if (txtId.Text.Length != 0) //validar id no vacío { var res = await manager.DeleteAsync(ObjPerfil); //llamada a método eliminar if (res != null) { await DisplayAlert("Mensaje", "Datos Eliminados Correctamente", "ok"); } else { await DisplayAlert("Mensaje", "No se eliminó la información, vuelva a intentar más tarde", "ok"); } } }
//manejador del botón guardar private async void BtnGuardar_Clicked(object sender, EventArgs e) { CtrlPerfil CtrlPerfil = new CtrlPerfil();//instancia de clase CtrlPerfil try { foreach (ClsPermiso item in lstPermisos.ItemsSource) //recorrer todos los objetos del listado de permisos { if (item.Asignado) //si el permiso está seleccionado { await CtrlPerfil.AsignaPermisoAsync(ObjPerfil, item); //se crea un nuevo registro } else { await CtrlPerfil.QuitaPermisoAsync(ObjPerfil, item);//se elimina el registro si existe } } await DisplayAlert("Mensaje", "Datos Guardados Correctamente", "ok"); } catch (Exception x) { await DisplayAlert("Mensaje", x.Message, "ok"); }//control de errores }
//manejador evento clic del botón entrar private async void ButEntrar_Clicked(object sender, EventArgs e) { CtrlUsuario ObjCtrlUsuario = new CtrlUsuario();//instancia de controlador try { if (!string.IsNullOrWhiteSpace(TxtEmail.Text)) //validar email no nulo { if (!string.IsNullOrWhiteSpace(TxtPassword.Text)) //validar password no nulo { if (TxtEmail.TextColor == Color.Green) //validar email con formato correcto { if (TxtPassword.TextColor == Color.Green) //validar password con formato correcto { var ConsUsr = await ObjCtrlUsuario.LoginUsr(TxtEmail.Text, TxtPassword.Text); //invoca al método login del controlador usuario if (ConsUsr.Count() == 1) //si existe un registro que coincide con el email y el password { ClsUsuario ObjUsuario = ConsUsr.First(); //asignar objeto encontrado al objeto local CtrlPersona ObjCtrlPersona = new CtrlPersona(); //instancia de control persona var ConsPersona = await ObjCtrlPersona.ConsultarId(ObjUsuario.IdPersona); //consulta de persona por id if (ConsPersona.Count() == 1) //si se encontraron los datos de la persona { ObjUsuario.ObjPersona = ConsPersona.First(); //asignar objeto encontrado a variable persona de objeto usuario CtrlPerfil ObjCtrlPerfil = new CtrlPerfil(); //instancia de control perfil var ConsPerfil = await ObjCtrlPerfil.Consultar(ObjUsuario.IdPerfil); //consulta de perfil según id if (ConsPerfil.Count() == 1) //si los datos del perfil han sido encontrados { await DisplayAlert("Mensaje", "Bienvenido", "ok"); //mensaje de bienvenida ObjUsuario.ObjPerfil = ConsPerfil.First(); //asignar objeto encontrado a campo de objeto usuario App.Current.Properties["name"] = ObjUsuario.ObjPersona.Nombres; //guardar en propiedades de la aplicación el nombre del usuario App.Current.Properties["IsLoggedIn"] = true; //guardar en propiedades de la aplicación el estado como verdadero App.Current.Properties["ObjUsuario"] = ObjUsuario; //guardar el objeto usuario en propiedades de la aplicación Ilm.ShowMainPage(); } } } else { await DisplayAlert("Mensaje", "Datos no encontrados, vuelva a intentar", "ok"); } } else { await DisplayAlert("Mensaje", "Password con formato incorrecto", "ok"); } } else { await DisplayAlert("Mensaje", "Email con formato incorrecto", "ok"); } } else { await DisplayAlert("Mensaje", "Debe ingresar el password", "ok"); } } else { await DisplayAlert("Mensaje", "Debe ingresar el email", "ok"); } }//control de errores catch (Exception x) { await DisplayAlert("Mensaje", x.Message, "ok"); } }