EducationNotationRepository.php 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. <?php
  2. namespace AppBundle\Entity\Education\Repository;
  3. use Doctrine\ORM\EntityRepository;
  4. /**
  5. * Description of EducationNotationRepository
  6. *
  7. */
  8. class EducationNotationRepository extends EntityRepository
  9. {
  10. public function findAllEducationNotation($organization_id)
  11. {
  12. $filter = $this->_em->getFilters()->enable('activity_year');
  13. $filter->setParameter('disabledFilter', 1);
  14. $queryBuilder =
  15. $this->createQueryBuilder('education_notation');
  16. $queryBuilder
  17. ->select('education_notation')
  18. ->innerJoin('education_notation.educationStudent','educationStudent')
  19. ->innerJoin('educationStudent.access','access')
  20. ->innerJoin('access.organization','organization')
  21. ->andWhere('organization.id=:organization_id')
  22. ->setParameter('organization_id', $organization_id)
  23. ;
  24. $query = $queryBuilder->getQuery();
  25. $results = $query->getResult();
  26. $filter->setParameter('disabledFilter', 0);
  27. return $results;
  28. }
  29. public function findAllEducationNotationByEducationCurriculum($educationCurriculumId){
  30. $queryBuilder =
  31. $this->createQueryBuilder('education_notation');
  32. $queryBuilder
  33. ->innerJoin('education_notation.educationStudent','educationStudent')
  34. ->innerJoin('educationStudent.educationCurriculum','educationCurriculum')
  35. ->andWhere('educationCurriculum.id = :education_curriculum_id')
  36. ->andWhere('education_notation.criteriaNotationConfig is not null')
  37. ->setParameter('education_curriculum_id', $educationCurriculumId)
  38. ;
  39. $query = $queryBuilder->getQuery();
  40. return $query->getResult();
  41. }
  42. public function findAllEducationNotationByTeacher($teacherId){
  43. $queryBuilder =
  44. $this->createQueryBuilder('education_notation');
  45. $queryBuilder
  46. ->innerJoin('education_notation.educationStudent','educationStudent')
  47. ->innerJoin('educationStudent.teachers','teachers')
  48. ->andWhere($queryBuilder->expr()->in('teachers.id', ':teachers_id'))
  49. ->andWhere('education_notation.criteriaNotationConfig is not null')
  50. ->setParameter('teachers_id', $teacherId)
  51. ;
  52. $query = $queryBuilder->getQuery();
  53. return $query->getResult();
  54. }
  55. }