public static string AsignarPermisos(List <int> IdPermisoDisponible, int IdPerfil) { CObjeto Respuesta = new CObjeto(); string Error = ""; CUnit.Firmado(delegate(CDB conn) { int IdUsuarioSesion = CUsuario.ObtieneUsuarioSesion(conn); CSecurity permiso = new CSecurity(); if (permiso.tienePermiso("puedeAgregarCircuito")) { CObjeto Datos = new CObjeto(); if (conn.Conectado) { foreach (int IdPermiso in IdPermisoDisponible) { if (Error == "") { CPerfilPermiso PerfilPermiso = new CPerfilPermiso(); PerfilPermiso.IdPerfil = IdPerfil; PerfilPermiso.Baja = false; int IdPerfilPermiso = CPerfilPermiso.ValidaExiste(IdPerfil, IdPermiso, conn); if (IdPerfilPermiso != 0) { PerfilPermiso.IdPerfilPermiso = IdPerfilPermiso; PerfilPermiso.DesactivarEspecial(conn); } else { PerfilPermiso.IdPermiso = IdPermiso; PerfilPermiso.Agregar(conn); } } } Respuesta.Add("Datos", Datos); } else { Error = Error + "<li>" + conn.Mensaje + "</li>"; } } else { Error = Error + "<li>No tienes los permisos necesarios</li>"; } Respuesta.Add("Error", Error); }); return(Respuesta.ToString()); }
public static string AgregarPermisosPerfil(string pOpciones, int pIdPerfil) { string respuesta = ""; //Abrir Conexion CConexion ConexionBaseDatos = new CConexion(); respuesta = ConexionBaseDatos.ConectarBaseDatosSqlServer(); //¿La conexion se establecio? if (respuesta == "Conexion Establecida") { CPerfilPermiso PerfilPermiso = new CPerfilPermiso(); PerfilPermiso.IdPerfil = pIdPerfil; PerfilPermiso.DesactivarTodos(ConexionBaseDatos); if (pOpciones != "") { string[] arrOpciones = pOpciones.Split('|'); ArrayList opciones = new ArrayList(); foreach (string opcion in arrOpciones) { opciones.Add(opcion); } pOpciones = pOpciones.Replace("|", ","); foreach (CPerfilPermiso CPP in PerfilPermiso.PermisosExistentes(pOpciones, pIdPerfil, ConexionBaseDatos)) { for (int i = 0; i <= opciones.Count - 1; i++) { if (CPP.IdOpcion == Convert.ToInt32(opciones[i])) { opciones.RemoveAt(i); break; } } CPP.Activar(ConexionBaseDatos); } for (int i = 0; i <= opciones.Count - 1; i++) { PerfilPermiso.IdOpcion = Convert.ToInt32(opciones[i]); PerfilPermiso.Agregar(ConexionBaseDatos); } //Cerrar Conexion ConexionBaseDatos.CerrarBaseDatosSqlServer(); } } return(respuesta); }