]> git.llucax.com Git - mecon/samurai.git/blobdiff - lib/SAMURAI/Perm.php
Se agrega un método para obtener todos los usuarios que tienen un determinado permiso...
[mecon/samurai.git] / lib / SAMURAI / Perm.php
index 425429185d3924fabbd1ab6874d1d8c7a9e2e7e4..e4923f357183d0c8216d0f3751d28419594a1697 100644 (file)
@@ -204,6 +204,41 @@ Si no se pasa ningun parametro ($perm->tiene()), devuelve true si tiene un permi
     }
     // -X2C
 
     }
     // -X2C
 
+    /**
+     * Obtiene los datos de los usuarios que tienen el permiso indicado.
+     *
+     * @param  db  $db Base de datos.
+     * @param  int $sistema Identificador del sistema al que pertenece el permiso.
+     * @param  int $perm Identificador del permiso.
+     * @param  string $obs Observación de la asignación del permiso.
+     *
+     * @return array
+     * @access public
+     * @static
+     */
+    function getUsuariosPermiso (&$db, $sistema, $perm, $obs = null)
+    {
+       $sql = "SELECT  PSU.login, 
+                       U.nombre, 
+                       LEFT (P.desc_perfil, LOCATE(' ', P.desc_perfil)) desc_perfil
+               FROM    samurai.perfil_sist_usuario AS PSU, 
+                       usuario.Usuario AS U, 
+                       samurai.perm_perfil_sist AS PPS, 
+                       samurai.perfil AS P 
+               WHERE   U.login = PSU.login AND 
+                       PSU.id_perfil = PPS.id_perfil AND 
+                       PPS.id_perfil = P.id_perfil AND 
+                       PSU.id_sistema = $sistema AND 
+                       PPS.id_permiso = $perm ";
+       
+       $sql.= (is_null($obs))?
+                       " ORDER BY U.nombre": 
+                       " AND PPS.observaciones = '". $obs. "' ORDER BY U.nombre";
+
+       return  $db->getAll($sql);
+
+    }
+
 } // -X2C Class :SAMURAI_Perm
 
 ?>
\ No newline at end of file
 } // -X2C Class :SAMURAI_Perm
 
 ?>
\ No newline at end of file