%PDF- %PDF-
Direktori : /home/emtnaeewxm/www/src/EEM/TraiteBundle/Repository/ |
Current File : /home/emtnaeewxm/www/src/EEM/TraiteBundle/Repository/TraiteRepository.php |
<?php namespace EEM\TraiteBundle\Repository; use Doctrine\ORM\QueryBuilder; /** * TraiteRepository * * This class was generated by the Doctrine ORM. Add your own custom * repository methods below. */ class TraiteRepository extends \Doctrine\ORM\EntityRepository { public function MyFindAll($data) { $queryBuilder = $this->createQueryBuilder('a'); $queryBuilder->leftJoin('a.client','client') ->addSelect('client'); $this->search($queryBuilder, $data); $queryBuilder->orderBy('a.id','desc'); /* $query = $queryBuilder->getQuery(); $results = $query->getResult(); */ return $queryBuilder; } private function search(QueryBuilder $qb, $data) { if (isset($data['client']) && !empty($data['client'])) { $qb->andWhere('client.nom like :name or client.prenom like :name') ->setParameter('name', '%'.$data['client'].'%' ); } if (isset($data['etat']) && !empty($data['etat'])) { $qb->andWhere('a.etat like :etat') ->setParameter('etat', $data['etat'] ); }else{ $qb->andWhere('a.etat like :etat') ->setParameter('etat', 'en_cours' ); } } }