OnuRepository.php 822 B

1234567891011121314151617181920212223242526
  1. <?php
  2. namespace StatsBundle\Repository;
  3. class OnuRepository extends \Doctrine\ORM\EntityRepository
  4. {
  5. /**
  6. * @param string $customId
  7. *
  8. * @return Onu|null
  9. */
  10. public function findByCustomId($customId)
  11. {
  12. list($ponSerialNumber, $oltDeviceId, $deviceServerId) = explode('~', $customId);
  13. $qb = $this->createQueryBuilder('Onu')
  14. ->join('Onu.deviceServer', 'deviceServer')
  15. ->where('Onu.ponSerialNumber = :ponSerialNumber')->setParameter('ponSerialNumber', $ponSerialNumber)
  16. ->andWhere('Onu.oltDeviceId = :oltDeviceId')->setParameter('oltDeviceId', $oltDeviceId)
  17. ->andWhere('deviceServer.id = :deviceServerId')->setParameter('deviceServerId', $deviceServerId)
  18. ;
  19. return $qb->getQuery()->getOneOrNullResult();
  20. }
  21. }