예제 #1
0
 public static FuncionalidadDAO getInstance()
 {
     if (funcionalidadDao == null)
     {
         funcionalidadDao = new FuncionalidadDAO();
     }
     return(funcionalidadDao);
 }
예제 #2
0
        public List <Rol> listaRoles(string schema)
        {
            List <Rol>        listaRoles = new List <Rol>();
            NpgsqlConnection  conexion   = null;
            NpgsqlCommand     cmd        = null;
            NpgsqlTransaction tran       = null;
            NpgsqlDataReader  dr         = null;

            try
            {
                conexion        = Conexion.getInstance().ConexionDB();
                cmd             = new NpgsqlCommand("logueo.spgetroles", conexion);
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.AddWithValue("parm_schema", schema);
                conexion.Open();
                tran = conexion.BeginTransaction();
                dr   = cmd.ExecuteReader();
                while (dr.Read())
                {
                    Rol rol = new Rol();
                    rol.id        = Convert.ToInt32(dr["ID"].ToString());
                    rol.nombre    = dr["ROL"].ToString();
                    rol.es_activo = Convert.ToBoolean(dr["ESACTIVO"].ToString());
                    listaRoles.Add(rol);
                }
                dr.Close();
            }
            catch (Exception e)
            {
                listaRoles = null;
                throw (e);
            }
            finally
            {
                tran.Commit();
                conexion.Close();
            }
            foreach (Rol rol in listaRoles)
            {
                List <Funcionalidad> listaFuncionalidades = FuncionalidadDAO.getInstance().listaFuncionalidadesRol(rol.id, schema);
                rol.funcionalidades = listaFuncionalidades;
            }
            return(listaRoles);
        }