src/Repository/ManifestRepository.php line 70

Open in your IDE?
  1. <?php
  2. namespace App\Repository;
  3. use App\Entity\Manifest;
  4. use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository;
  5. use Doctrine\Persistence\ManagerRegistry;
  6. /**
  7.  * @extends ServiceEntityRepository<Manifest>
  8.  *
  9.  * @method Manifest|null find($id, $lockMode = null, $lockVersion = null)
  10.  * @method Manifest|null findOneBy(array $criteria, array $orderBy = null)
  11.  * @method Manifest[]    findAll()
  12.  * @method Manifest[]    findBy(array $criteria, array $orderBy = null, $limit = null, $offset = null)
  13.  */
  14. class ManifestRepository extends ServiceEntityRepository
  15. {
  16.     public function __construct(ManagerRegistry $registry)
  17.     {
  18.         parent::__construct($registryManifest::class);
  19.     }
  20. //    /**
  21. //     * @return Manifest[] Returns an array of Manifest objects
  22. //     */
  23. //    public function findByExampleField($value): array
  24. //    {
  25. //        return $this->createQueryBuilder('m')
  26. //            ->andWhere('m.exampleField = :val')
  27. //            ->setParameter('val', $value)
  28. //            ->orderBy('m.id', 'ASC')
  29. //            ->setMaxResults(10)
  30. //            ->getQuery()
  31. //            ->getResult()
  32. //        ;
  33. //    }
  34. //    public function findOneBySomeField($value): ?Manifest
  35. //    {
  36. //        return $this->createQueryBuilder('m')
  37. //            ->andWhere('m.exampleField = :val')
  38. //            ->setParameter('val', $value)
  39. //            ->getQuery()
  40. //            ->getOneOrNullResult()
  41. //        ;
  42. //    }
  43. // Dans src/Repository/ManifestRepository.php
  44.     public function countNonEnvoyesWithSearch(?string $search ''): int
  45.     {
  46.         $qb $this->createQueryBuilder('m')
  47.             ->select('COUNT(m.id)')
  48.             ->andWhere('m.isSend = :isSend OR m.isSend IS NULL')
  49.             ->setParameter('isSend'false);
  50.         if ($search && !empty($search)) {
  51.             $qb->andWhere('(m.shipmentNumber LIKE :search 
  52.             OR m.shipperName LIKE :search 
  53.             OR m.importerName LIKE :search 
  54.             OR m.importerAdresse1 LIKE :search 
  55.             OR m.description LIKE :search)')
  56.                 ->setParameter('search''%' $search '%');
  57.         }
  58.         return $qb->getQuery()->getSingleScalarResult();
  59.     }
  60.     public function findNonEnvoyesWithSearch(?string $search ''int $limitint $offset): array
  61.     {
  62.         $qb $this->createQueryBuilder('m')
  63.             ->andWhere('m.isSend = :isSend OR m.isSend IS NULL')
  64.             ->setParameter('isSend'false)
  65.             ->setMaxResults($limit)
  66.             ->setFirstResult($offset)
  67.             ->orderBy('m.id''DESC');
  68.         if ($search && !empty($search)) {
  69.             $qb->andWhere('(m.shipmentNumber LIKE :search 
  70.             OR m.shipperName LIKE :search 
  71.             OR m.importerName LIKE :search 
  72.             OR m.importerAdresse1 LIKE :search 
  73.             OR m.description LIKE :search)')
  74.                 ->setParameter('search''%' $search '%');
  75.         }
  76.         return $qb->getQuery()->getResult();
  77.     }
  78. }