Esempio n. 1
1
 /**
  * Search count only routine.
  *
  * @param \Doctrine\ORM\QueryBuilder $qb Query builder routine
  *
  * @return \Doctrine\ORM\PersistentCollection|integer
  */
 public function searchCount(\Doctrine\ORM\QueryBuilder $qb)
 {
     $qb->select('COUNT(DISTINCT ' . $qb->getMainAlias() . '.id)');
     return intval($qb->getSingleScalarResult());
 }
Esempio n. 2
0
 /**
  * Get identifiers list for specified query builder object
  *
  * @param \Doctrine\ORM\QueryBuilder $qb    Query builder
  * @param string                     $name  Name
  * @param mixed                      $value Value
  *
  * @return void
  */
 protected function addImportCondition(\Doctrine\ORM\QueryBuilder $qb, $name, $value)
 {
     $alias = $qb->getMainAlias();
     if (property_exists($this->getClassMetadata()->name, $name)) {
         $qb->andWhere($alias . '.' . $name . ' = :' . $name);
     } elseif (property_exists($this->getClassMetadata()->name, 'translations')) {
         $qb->andWhere('translations.' . $name . ' = :' . $name);
         if (is_array($value)) {
             $value = $value[\XLite\Logic\Import\Importer::getLanguageCode()];
         }
     }
     $qb->setParameter($name, $value);
 }
Esempio n. 3
0
 /**
  * Get identifiers list for specified query builder object
  *
  * @param \Doctrine\ORM\QueryBuilder $qb    Query builder
  * @param string                     $name  Name
  * @param mixed                      $value Value
  *
  * @return void
  */
 protected function addImportCondition(\Doctrine\ORM\QueryBuilder $qb, $name, $value)
 {
     if ('productClass' == $name && is_string($value)) {
         $alias = $qb->getMainAlias();
         $qb->linkInner($alias . '.productClass')->linkInner('productClass.translations', 'productClassTranslations')->andWhere('productClassTranslations.name = :productClass')->setParameter('productClass', $value);
     } else {
         $result = parent::addImportCondition($qb, $name, $value);
     }
 }