public static List<Funcionalidad> getFuncionalidadesRol(Rol rol) { DataTable table = traerDataTable("getFuncionalidadesRol", rol.id); DataRowCollection rows = table.Rows; List<Funcionalidad> funcionalidades = new List<Funcionalidad>(); int id; foreach (DataRow row in rows) { Funcionalidad funcionalidad = new Funcionalidad(); id = Convert.ToInt32(row["Id_Funcionalidad"].ToString()); funcionalidad.id = id; funcionalidades.Add(funcionalidad); } return funcionalidades; }
public RolYaExisteException(Rol rol) { this.mensaje = "ERROR: El rol ya se encuentra registrado.\n\n\nRol: " + rol.nombre.ToString(); }
private static int buscarRol(Rol rol) { return ejecutarProcedureWithReturnValue("getIdRol", rol.nombre); }
internal static void updateRol(Rol rol, List<Funcionalidad> listaFuncionalidadesNuevas) { updateNombreRol(rol); deleteFuncionalidades(rol); darAltaFuncionalidadesDeRol(rol, listaFuncionalidadesNuevas); }
internal static void darAltaRol(Rol rol, List<Funcionalidad> funcionalidades) { rol.id = darAltaRol(rol); darAltaFuncionalidadesDeRol(rol, funcionalidades); }
//para dar de baja public static void inhabilitarRol(Rol rol) { ejecutarProcedure("inhabilitarRol", rol.id); }
private static void updateNombreRol(Rol rol) { if (buscarRol(rol) > 0) throw new RolYaExisteException(rol); ejecutarProcedure("modificarRol", rol.id, rol.nombre); }
private static void deleteFuncionalidades(Rol rol) { ejecutarProcedure("sacarTodaFuncionalidadARol", rol.id); }
private static int darAltaRol(Rol rol) { if (buscarRol(rol) > 0) throw new RolYaExisteException(rol); ejecutarProcedure("altaRol", rol.nombre); return buscarRol(rol); }
private static void darAltaFuncionalidadesDeRol(Rol rol, List<Funcionalidad> funcionalidades) { foreach (Funcionalidad funcionalidad in funcionalidades) { ejecutarProcedure("altaRol_Funcionalidad", funcionalidad.id, rol.id); } }
public static List<Rol> traerRoles() { DataTable rolesDT = ConectorSQL.traerDataTable("traerRolesDeUsuario", UsuarioLogeado.Instance.UserName); List<Rol> roles = new List<Rol>(); //por cada rol traido de la base, se lo asigna a los roles a devolver en formato de objetos foreach (DataRow rowR in rolesDT.Rows) { Rol rol = new Rol( Convert.ToInt32((decimal)rowR["id_rol"]), (string)rowR["Nombre"], (bool)rowR["Habilitado"]); roles.Add(rol); } return roles; }