Beispiel #1
0
 public function findMenu(\Core_Dto_Entity $dto)
 {
     $queryBuilder = $this->_em->createQueryBuilder();
     $queryBuilder->select('mh')->from('app:MenuHierarqManter', 'mh');
     if ($dto->getSqSistema()->getSqSistema() !== '' && $dto->getSqSistema()->getSqSistema() !== NULL) {
         $queryBuilder->where('mh.sqSistema = :sqSistema')->setParameter('sqSistema', $dto->getSqSistema()->getSqSistema(), 'integer');
     }
     if ($dto->getSqMenu() !== '' && $dto->getSqMenu() !== NULL) {
         $queryBuilder->andWhere('mh.sqMenu = :sqMenu')->setParameter('sqMenu', $dto->getSqMenu(), 'integer');
     }
     if ($dto->getNuNivel() !== '' && $dto->getNuNivel() !== NULL) {
         $queryBuilder->andWhere('mh.nuNivel = :nuNivel')->setParameter('nuNivel', $dto->getNuNivel(), 'integer');
     }
     if ($dto->getSqMenuPai()->getSqMenu() !== '' && $dto->getSqMenuPai()->getSqMenu() !== NULL) {
         $queryBuilder->andWhere('mh.sqMenuPai = :sqMenuPai')->setParameter('sqMenuPai', $dto->getSqMenuPai()->getSqMenu(), 'integer');
     }
     if ($dto->getRemoveDaLista() && $dto->getSqMenuLista() !== '' && $dto->getSqMenuLista() !== NULL) {
         $queryBuilder->andWhere('mh.sqMenu != :sqMenu')->setParameter('sqMenu', $dto->getSqMenuLista(), 'integer');
     }
     return $queryBuilder->getQuery()->getArrayResult();
 }
Beispiel #2
0
 public function menuFuncionality(\Core_Dto_Entity $dto)
 {
     $queryBuilder = $this->_em->createQueryBuilder();
     $subQueryBuilder = $this->_em->createQueryBuilder();
     $subQueryBuilder->select('m.noMenu')->from('app:MenuHierarqManter', 'm')->where($queryBuilder->expr()->eq('m.sqMenu', 'mhm.sqMenuPai'))->getDQL();
     $queryBuilder->select('mhm.sqMenu', 'mhm.noMenu', 'f.noFuncionalidade', 'f.sqFuncionalidade', 'mhm.nuOrdemApresent', 'mhm.nuNivel', 'mhm.stRegistroAtivo')->addSelect('(' . $subQueryBuilder . ') noMenuPai')->from('app:Funcionalidade', 'f')->innerJoin('f.sqMenuHierarquico', 'mhm')->where($queryBuilder->expr()->eq('mhm.sqSistema', ':sqSistema'))->andWhere($queryBuilder->expr()->eq('f.stRegistroAtivo', ':stAtivo'))->setParameter('sqSistema', $dto->getSqSistema())->setParameter(':stAtivo', 'TRUE');
     if ($dto->getSqMenu() != '0') {
         $queryBuilder->andWhere($queryBuilder->expr()->orX($queryBuilder->expr()->eq('mhm.sqMenu', ':sqMenu'), $queryBuilder->expr()->eq('mhm.sqMenuPai', ':sqMenuPai')));
         $queryBuilder->setParameter('sqMenu', $dto->getSqMenu());
         $queryBuilder->setParameter('sqMenuPai', $dto->getSqMenu());
     }
     $queryBuilder->orderBy('mhm.sqMenu, mhm.nuNivel ,mhm.nuOrdemApresent');
     return $queryBuilder->getQuery()->getArrayResult();
 }