EquipmentControlRepository.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. <?php
  2. namespace AppBundle\Entity\Product\Repository;
  3. use AppBundle\Entity\Organization\Organization;
  4. use AppBundle\Entity\Person\Person;
  5. use AppBundle\Entity\Product\Equipment;
  6. use AppBundle\Entity\Product\EquipmentList;
  7. use Doctrine\ORM\EntityRepository;
  8. /**
  9. * Description of EquipmentRepository
  10. *
  11. */
  12. class EquipmentControlRepository extends EntityRepository
  13. {
  14. public function findEquipmentControlOrganization(Organization $organization)
  15. {
  16. $qb = $this->createQueryBuilder('a')
  17. ->innerJoin(Equipment::class, 'equ', 'WITH', 'a.equipment= equ.id')
  18. ->andWhere('equ.organization=:organizationId')
  19. ->andWhere('a.startDate IS NOT NULL')
  20. ->orderBy('a.startDate', 'DESC')
  21. ->setParameter(':organizationId', $organization);
  22. return $qb->getQuery()->getResult();
  23. }
  24. public function findEquipmentAccessOwner(Organization $organization)
  25. {
  26. $qb = $this->createQueryBuilder('o');
  27. $qb->innerJoin('o.equipment', 'equ', 'WITH')
  28. ->innerJoin('equ.access','owner', 'WITH')
  29. ->innerJoin('owner.organizationFunction', 'organizationFunction')
  30. ->andWhere('owner.organization=:org')
  31. ->setParameter(':org', $organization);
  32. return $qb->getQuery()->getResult();
  33. }
  34. }
  35. ?>