/**
  * Adds a new WHERE or HAVING restriction depends on the given parameters.
  *
  * @param mixed  $restriction The restriction to add.
  * @param string $condition   The condition.
  *                            Can be FilterUtility::CONDITION_OR or FilterUtility::CONDITION_AND.
  * @param bool   $isComputed  Specifies whether the restriction should be added to the HAVING part of a query.
  */
 public function addRestriction($restriction, $condition, $isComputed = false)
 {
     $restriction = $this->qbTools->replaceAliasesWithFields($restriction);
     if ($condition === FilterUtility::CONDITION_OR) {
         if ($isComputed) {
             $this->qb->orHaving($restriction);
         } else {
             $this->qb->orWhere($restriction);
         }
     } else {
         if ($isComputed) {
             $this->qb->andHaving($restriction);
         } else {
             $this->qb->andWhere($restriction);
         }
     }
 }
 /**
  * Adds a new WHERE or HAVING restriction depends on the given parameters.
  *
  * @param mixed  $restriction The restriction to add.
  * @param string $condition   The condition.
  *                            Can be FilterUtility::CONDITION_OR or FilterUtility::CONDITION_AND.
  * @param bool   $isComputed  Specifies whether the restriction should be added to the HAVING part of a query.
  */
 public function addRestriction($restriction, $condition, $isComputed = false)
 {
     if ($this->fixComparison($restriction, $condition)) {
         return;
     }
     if ($condition === FilterUtility::CONDITION_OR) {
         if ($isComputed) {
             $this->qb->orHaving($restriction);
         } else {
             $this->qb->orWhere($restriction);
         }
     } else {
         if ($isComputed) {
             $this->qb->andHaving($restriction);
         } else {
             $this->qb->andWhere($restriction);
         }
     }
 }