/// <summary> /// Gestiona el boton de guardar, /// valida el dialogo y guarda el rol en la base de datos /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void Guardar_Click(object sender, RoutedEventArgs e) { if (mvrol.IsValid(this)) { if (mvrol.guarda()) { logger.Info("Rol añadido con codigo: " + mvrol.rolNuevo.CodigoRol); this.DialogResult = true; } else { logger.Error("Ha habido un error en la base de datos al añadir un rol"); await this.ShowMessageAsync("Error", "Ha habido un error al añadir el rol en la base de datos"); this.DialogResult = false; } } else { await this.ShowMessageAsync("Informacion", "Rellene todos los campos requeridos"); } }
/// <summary> /// Gestiona el boton de guardar, /// comprueba si se a seleccionado un rol a modificar, /// valida el dialogo, y edita el rol /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void Guardar_Click(object sender, RoutedEventArgs e) { if (selecciona) { if (mvrol.IsValid(this)) { mvrol.editar = true; mvrol.permisosDrop = (ICollection <permiso>)checkCombo.SelectedItemsOverride; mvrol.rolNuevo.permiso = mvrol.permisosDrop; if (mvrol.guarda()) { logger.Info("Rol modificado con codigo: " + mvrol.rolNuevo.CodigoRol); this.DialogResult = true; } else { await this.ShowMessageAsync("Error", "Ha habido un error al modificar el rol en la base de datos"); logger.Error("Ha habido un error en la base de datos al modificar un rol"); this.DialogResult = false; } } else { await this.ShowMessageAsync("Informacion", "Rellene todos los campos requeridos"); } } else { MessageDialogResult result2 = await this.ShowMessageAsync("Informacion", "Para continuar tiene que elegir el rol a modificar, si no desea modificar un rol haga clic en 'Cancel'", MessageDialogStyle.AffirmativeAndNegative); if (result2 == MessageDialogResult.Negative) { this.Close(); } } }
/// <summary> /// Gestiona el boton de guardar, /// comprueba si se ha seleccionado un rol, /// valida el dialogo y borra el rol de la base de datos /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void Guardar_Click(object sender, RoutedEventArgs e) { MetroDialogSettings settings = new MetroDialogSettings() { NegativeButtonText = "No", AffirmativeButtonText = "Continuar", FirstAuxiliaryButtonText = "Cancelar" }; MessageDialogResult result = await this.ShowMessageAsync("Confirmacion de seguridad", "Ha hecho clic en borrar rol, esta seguro de que desea borrar el rol?, " + Environment.NewLine + "si es asi haga clic en ''Continuar'' en caso contrario haga clic en ''No''," + Environment.NewLine + " si desea cerrar todos los dialogos haga clic en ''Cancelar'' ", MessageDialogStyle.AffirmativeAndNegativeAndSingleAuxiliary, settings); if (result == MessageDialogResult.Affirmative) { if (selecciona) { if (mvrol.IsValid(this)) { mvrol.editar = true; mvrol.permisosDrop = (ICollection <permiso>)checkCombo.SelectedItemsOverride; mvrol.rolNuevo.permiso = mvrol.permisosDrop; if (mvrol.compruebaRolEmpleado()) { if (mvrol.borra()) { logger.Info("Rol borrado con codigo: " + mvrol.rolNuevo.CodigoRol); this.DialogResult = true; } else { logger.Error("Ha habido un error en la base de datos al borrar un rol"); await this.ShowMessageAsync("Error", "Ha habido un error al borrar el rol de la base de datos"); this.DialogResult = false; } } else { await this.ShowMessageAsync("Informacion", "El rol seleccionado a eliminar, no puede ser eliminado," + Environment.NewLine + "hay 1 o mas empleados que tienen este rol asignado," + Environment.NewLine + "modifique el rol de cada empleado, para poder eliminar este rol"); dgEmpleados.Visibility = Visibility.Visible; dgEmpleados.ItemsSource = mvrol.empConRol; dgEmpleados.Items.Refresh(); } } else { await this.ShowMessageAsync("Informacion", "Rellene todos los campos requeridos"); } } else { MessageDialogResult result2 = await this.ShowMessageAsync("Informacion", "Para continuar tiene que elegir el rol a borrar, si no desea borrar un rol haga clic en 'Cancel'", MessageDialogStyle.AffirmativeAndNegative); if (result2 == MessageDialogResult.Negative) { this.Close(); } } } else if (result == MessageDialogResult.FirstAuxiliary) { this.Close(); } }