src/Repository/LogRepository.php line 26

Open in your IDE?
  1. <?php
  2. namespace App\Repository;
  3. use App\Entity\Log;
  4. use App\Entity\Correction;
  5. use App\Entity\Task;
  6. use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository;
  7. use Doctrine\Persistence\ManagerRegistry;
  8. class LogRepository extends ServiceEntityRepository
  9. {
  10.   public function __construct(ManagerRegistry $registry) {
  11.     parent::__construct($registryLog::class);
  12.   }
  13.   public function getLogs(\App\Entity\Correction $correction){
  14.     $dql 'SELECT l FROM App\Entity\Log l WHERE l.objectClass = ?1 AND l.objectId = ?2 ORDER BY l.version DESC';
  15.     return $this->getEntityManager()->createQuery($dql)
  16.       ->setParameter(1'App\Entity\Correction')
  17.       ->setParameter(2$correction->getId())
  18.       ->getResult();
  19.   }
  20.   public function getTaskLogs(\App\Entity\Correction $correction){
  21.     $logs = [];
  22.     $dql 'SELECT l FROM App\Entity\Log l WHERE l.objectClass = ?1 AND l.objectId = ?2 ORDER BY l.version DESC';
  23.     foreach ($correction->getTasks() as $task) {
  24.       $logs array_merge($logs$this->getEntityManager()->createQuery($dql)
  25.         ->setParameter(1'App\Entity\Task')
  26.         ->setParameter(2$task->getId())
  27.         ->getResult());
  28.     }
  29.     return $logs;
  30.   }
  31. }