/**
  * @param $filtros
  * @return array
  */
 public function findByFiltros(FiltroManager $filtros)
 {
     $qb = $this->getEntityManager()->createQueryBuilder()->select('adp_pxp')->from('ADPerfilBundle:PerfilXPermiso', 'adp_pxp')->join('adp_pxp.permiso', 'adp_prm')->join('adp_pxp.perfil', $filtros->getPerfilTableAlias())->where('adp_pxp.acceso=:acceso')->setParameter(':acceso', 'true');
     $rs = $filtros->getQueryBuilder($qb)->getQuery()->getResult();
     $ret = array();
     /** @var PerfilXPermiso $pxp */
     foreach ($rs as $pxp) {
         $ret[$pxp->getPermiso()->getId()][$pxp->getPerfil()->getId()] = true;
     }
     return $ret;
 }
 public function findByFiltro(FiltroManager $filtros)
 {
     $qb = $this->getEntityManager()->createQueryBuilder()->select('adp_prm')->from('ADPerfilBundle:Permiso', 'adp_prm')->orderBy('adp_prm.nombre');
     $exclude = array($filtros->getPerfilField());
     return $filtros->getQueryBuilder($qb, $exclude)->getQuery()->getResult();
 }