コード例 #1
0
ファイル: Auto.php プロジェクト: kidaa30/magento2-platformsh
 /**
  * {@inheritdoc}
  */
 public function getItems(BucketInterface $bucket, array $dimensions, EntityStorage $entityStorage)
 {
     $data = [];
     $range = $this->dataProvider->getRange();
     if (!$range && $entityStorage->getSource()) {
         $range = $this->getRange($bucket, $dimensions, $entityStorage);
         $dbRanges = $this->dataProvider->getAggregation($bucket, $dimensions, $range, $entityStorage);
         $data = $this->dataProvider->prepareData($range, $dbRanges);
     }
     return $data;
 }
コード例 #2
0
 /**
  * {@inheritdoc}
  */
 public function getAggregation(BucketInterface $bucket, array $dimensions, $range, \Magento\Framework\Search\Dynamic\EntityStorage $entityStorage)
 {
     $select = $this->dataProvider->getDataSet($bucket, $dimensions, $entityStorage->getSource());
     $column = $select->getPart(Select::COLUMNS)[0];
     $select->reset(Select::COLUMNS);
     $rangeExpr = new \Zend_Db_Expr($this->connection->quoteInto('(FLOOR(' . $column[1] . ' / ? ) + 1)', $range));
     $select->columns(['range' => $rangeExpr])->columns(['metrix' => 'COUNT(*)'])->group('range')->order('range');
     $result = $this->connection->fetchPairs($select);
     return $result;
 }