コード例 #1
0
 /**
  * {@inheritDoc}
  */
 public function visitResult(DatagridConfiguration $config, ResultsObject $result)
 {
     $rows = (array) $result->offsetGetOr('data', []);
     $columns = $config->offsetGetOr(Configuration::COLUMNS_KEY, []);
     $properties = $config->offsetGetOr(Configuration::PROPERTIES_KEY, []);
     $toProcess = array_merge($columns, $properties);
     foreach ($rows as $key => $row) {
         $currentRow = [];
         foreach ($toProcess as $name => $config) {
             $config = PropertyConfiguration::createNamed($name, $config);
             $property = $this->getPropertyObject($config);
             $currentRow[$name] = $property->getValue($row);
         }
         $rows[$key] = $currentRow;
     }
     $result->offsetSet('data', $rows);
 }
コード例 #2
0
ファイル: TagsExtension.php プロジェクト: Maksold/platform
 /**
  * {@inheritdoc}
  */
 public function visitResult(DatagridConfiguration $config, ResultsObject $result)
 {
     $rows = (array) $result->offsetGetOr('data', []);
     $idField = 'id';
     $tags = $this->getTagsForEntityClass($this->getEntityClassName($config), $this->extractEntityIds($rows, $idField));
     $this->addTagsToData($rows, $tags, $idField, self::COLUMN_NAME);
 }
コード例 #3
0
 /**
  * {@inheritdoc}
  */
 public function visitResult(DatagridConfiguration $config, ResultsObject $result)
 {
     $identifiers = $this->getTagsColumns($config);
     $rows = (array) $result->offsetGetOr('data', []);
     $entitiesTags = [];
     foreach ($identifiers as $entityClass => $idAlias) {
         $entitiesTags[$entityClass] = $this->getTagsForEntityClass($entityClass, $this->extractEntityIds($rows, $idAlias));
     }
     foreach ($entitiesTags as $entityClass => $entityTags) {
         $idAlias = $identifiers[$entityClass];
         $this->addTagsToData($rows, $entityTags, $idAlias, $this->buildTagColumnId($idAlias, $entityClass));
     }
 }