private void btnCrear_Click(object sender, EventArgs e) { if (this.datosValidos()) { MessageBox.Show("Complete los campos"); } else { string nombreRol = txtNombre.Text; List <Funcionalidad> funcionalidades = this.obtenerFuncionalidadesSeleccionadas(); Rol rol = new Rol(); rol.nombre = nombreRol; rol.funcionalidades = funcionalidades; if (RolDAO.validarNombreRol(nombreRol)) { if (RolDAO.agregarRol(rol)) { MessageBox.Show("Rol agregado correctamente"); this.Close(); form_home.cargarDatos(); } else { MessageBox.Show("Error al agregar rol"); } } else { MessageBox.Show("Nombre de rol repetido"); } } }
private void btnModificar_Click(object sender, EventArgs e) { if (this.datosValidos()) { MessageBox.Show("Complete los campos"); } else { List <Funcionalidad> funcionalidades_seleccionadas = this.obtenerFuncionalidadesSeleccionadas(); Rol rol_modificado = new Rol(); rol_modificado.nombre = txtNombre.Text; rol_modificado.funcionalidades = funcionalidades_seleccionadas; rol_modificado.id = rol_a_modificar.id; //le paso el id List <Funcionalidad> funcionalidades_rol_a_modificar = FuncionalidadDAO.obtener_funcionalidades_de_rol(rol_a_modificar); if (UsuarioDAO.tieneRol(form_home.form_anterior.usuario, rol_a_modificar.id) && !rol_modificado.funcionalidades.Any(f => f.nombre == "Abm Rol")) { if (MessageBox.Show("¿Está a punto de quitar sus permisos para el ABM de Rol en el usuario que se encuentra logueado, desea continuar?", "ABM Rol", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes) { if (RolDAO.modificar_rol(rol_modificado, funcionalidades_rol_a_modificar)) { MessageBox.Show("Rol modificado correctamente"); this.Close(); form_home.Close(); form_home.form_anterior.cargarDatos(); } else { MessageBox.Show("Error al modificar rol "); } } } else { if (RolDAO.modificar_rol(rol_modificado, funcionalidades_rol_a_modificar)) { MessageBox.Show("Rol modificado correctamente"); this.Close(); form_home.cargarDatos(); } else { MessageBox.Show("Error al modificar rol "); } } } }