/** * find duplicate applicants in the same cycle * * @param Applicant $applicant * @return array */ public function findDuplicates(Applicant $applicant) { $query = $this->_em->createQuery('SELECT a FROM Jazzee\\Entity\\Applicant a WHERE a != :applicantId AND a.email = :email AND a.application IN (SELECT app FROM Jazzee\\Entity\\Application app WHERE app.cycle = :cycleId) AND a.deactivated=false'); $query->setParameter('applicantId', $applicant->getId()); $query->setParameter('cycleId', $applicant->getApplication()->getCycle()->getId()); $query->setParameter('email', $applicant->getEmail()); return $query->getResult(); }