EducationStudentWishRepository.php 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. <?php
  2. namespace AppBundle\Entity\AccessWish\Repository;
  3. use AppBundle\Entity\Education\Education;
  4. use AppBundle\Entity\Education\EducationCurriculum;
  5. use AppBundle\Entity\HasItemQueryBuilderInterface;
  6. use AppBundle\Entity\Organization\Organization;
  7. use Doctrine\ORM\EntityRepository;
  8. use Doctrine\ORM\QueryBuilder;
  9. /**
  10. * Description of EducationStudentWishRepository
  11. *
  12. */
  13. class EducationStudentWishRepository extends EntityRepository
  14. {
  15. public function getEducationStudentByEducation(Education $education,Organization $organization){
  16. // $education = $educationCurriculum->getEducation();
  17. $filter = $this->_em->getFilters()->enable('activity_year');
  18. $filter->setParameter('disabledFilter', 1);
  19. $queryBuilder = $this->createQueryBuilder('education_student_wish');
  20. $queryBuilder
  21. ->leftJoin('education_student_wish.accessWish','accessWish')
  22. ->leftJoin('education_student_wish.accessWishReregistrations','accessWishReregistrations')
  23. ->leftJoin('accessWish.organization','organization')
  24. ->leftJoin('accessWishReregistrations.organization','organization2')
  25. ->leftJoin('education_student_wish.educationWish','educationWish')
  26. ->leftJoin('accessWish.accessFamilyWish', 'accessWishAccessFamilyWish')
  27. ->leftJoin('accessWishReregistrations.accessFamilyWish', 'accessWishAccessFamilyWish2')
  28. ->andWhere('(educationWish.id=:education and organization.id=:organization and accessWishAccessFamilyWish.registrationCompleted =:registrationCompleted) or (educationWish.id=:education and organization2.id=:organization and accessWishAccessFamilyWish2.registrationCompleted =:registrationCompleted)')
  29. ->setParameter('organization', $organization)
  30. ->setParameter('education', $education)
  31. ->setParameter('registrationCompleted', true);
  32. $filter->setParameter('disabledFilter', 0);
  33. return $queryBuilder->getQuery()->getResult();
  34. }
  35. }