createQueryBuilder('log')->select('log', 'usr.nmUsuarioCompleto', 'loc.nmLocal', 'loc.sgLocal') ->innerJoin('log.idUsuario', 'usr') ->innerJoin('usr.idLocal', 'loc') ->where('log.csAcao IN (:tipoPesquisa)') ->setParameter('tipoPesquisa', $tipoPesquisa); /** * Verifica os filtros que foram parametrizados */ if ( $dataInicio ) $query->andWhere( 'log.dtAcao >= :dtInicio' )->setParameter('dtInicio', ( $dataInicio.' 00:00:00' )); if ( $dataFim ) $query->andWhere( 'log.dtAcao <= :dtFim' )->setParameter('dtFim', ( $dataFim.' 23:59:59' )); if ( count($locais) ) $query->andWhere( 'loc.idLocal IN (:locais)' )->setParameter('locais', $locais); return $query->getQuery()->execute(); } }