예제 #1
0
        /// <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");
            }
        }
예제 #2
0
        /// <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();
                }
            }
        }
예제 #3
0
        /// <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();
            }
        }