AccessIntangibleRepository.php 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <?php
  2. namespace AppBundle\Entity\Billing\Repository;
  3. use AppBundle\Entity\Organization\Organization;
  4. use Doctrine\ORM\EntityRepository;
  5. /**
  6. * Class AccessIntangible
  7. */
  8. class AccessIntangibleRepository extends EntityRepository
  9. {
  10. public function findLicensesAccessIntangible(Organization $organization)
  11. {
  12. $qb = $this->createQueryBuilder('a');
  13. $qb->innerJoin('AppBundle:Product\Intangible', 'i', 'WITH', 'a.intangible = i.id')
  14. ->innerJoin('AppBundle:AccessAndFunction\Access', 'acc', 'WITH', 'a.access = acc.id')
  15. ->where('i.label LIKE :licence')
  16. ->andWhere('a.endDate IS NULL')
  17. ->andWhere('acc.organization=:org')
  18. ->setParameter(':org',$organization)
  19. ->setParameter('licence', '%licence%');
  20. return $qb->getQuery()->getResult();
  21. }
  22. public function getArchivedAccessIntangible($enDate, $organizationId)
  23. {
  24. $filter = $this->_em->getFilters()->enable('activity_year');
  25. $filter->setParameter('disabledFilter', 1);
  26. $qb = $this->createQueryBuilder('access_intangible');
  27. $qb
  28. ->innerJoin('access_intangible.access', 'access')
  29. ->innerJoin('access.organization', 'organization')
  30. ->andWhere('access_intangible.endDate = :enDate')
  31. ->andWhere('organization.id = :id')
  32. ->setParameter('id', $organizationId)
  33. ->setParameter('enDate', $enDate)
  34. ;
  35. $filter->setParameter('disabledFilter', 0);
  36. return $qb->getQuery()->getResult();
  37. }
  38. }
  39. ?>