%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /home/emtnaeewxm/www/src/EEM/VenteBundle/Repository/
Upload File :
Create Path :
Current File : /home/emtnaeewxm/www/src/EEM/VenteBundle/Repository/VenteRepository.php

<?php

namespace EEM\VenteBundle\Repository;
use Doctrine\ORM\QueryBuilder;

/**
 * VenteRepository
 *
 * This class was generated by the Doctrine ORM. Add your own custom
 * repository methods below.
 */
class VenteRepository extends \Doctrine\ORM\EntityRepository
{
    public function findAll()
    {
        return $this->findBy(array(), array('dateVente' => 'DESC'));
    }

    public function listeVente() {
        $queryBuilder = $this->createQueryBuilder('r')
            ->orderBy('r.dateVente','ASC');

        $query = $queryBuilder->getQuery();
        $results = $query->getResult();
        return $results;
    }

    public function rechercheDate($date_vente,$type)
    {
        $queryBuilder = $this->createQueryBuilder('r');

        $queryBuilder->andWhere('r.dateVente = :year')
            ->setParameter('year', $date_vente)
            ->andWhere('r.type = :type')
            ->setParameter('type', $type);

        $query = $queryBuilder->getQuery();
        $results = $query->getResult();
        return $results;
    }

    public function findVenteArticle($id_article) {
        $queryBuilder = $this->createQueryBuilder('a');

        $queryBuilder
            ->leftJoin('a.ligneVentes','ligneVentes')
            ->addSelect('ligneVentes')
            ->andWhere('ligneVentes.article = :id_article')
            ->setParameter('id_article',$id_article)
            ->orderBy('a.dateVente','DESC')
            ->groupBy('a.dateVente')
            ->setMaxResults(5)
           ;

         $query = $queryBuilder->getQuery();
          $results = $query->getResult();
        return $results;
    }

    public function MyFindAll($data,$type) {
        $queryBuilder = $this->createQueryBuilder('a');
        $queryBuilder->andWhere('a.type = :type')
            ->setParameter('type', $type);
        $this->search($queryBuilder, $data);
        $queryBuilder->orderBy('a.dateVente','DESC');

        /* $query = $queryBuilder->getQuery();
          $results = $query->getResult(); */
        return $queryBuilder;
    }
    private function search(QueryBuilder $qb, $data)
    {
        if (isset($data['dateDu']) && !empty($data['dateDu'])) {
            $qb->andWhere('a.dateVente >= :dateDu')
                ->setParameter('dateDu', $data['dateDu']);
        }
        if (isset($data['dateAu']) && !empty($data['dateAu'])) {
            $qb->andWhere('a.dateVente <= :dateAu')
                ->setParameter('dateAu',  $data['dateAu']);
        }
    }
}

Zerion Mini Shell 1.0