/** * Add Filters * * @param QueryBuilder $queryBuilder * @param TableModel $table * * @return QueryBuilder */ public function addFilters(QueryBuilder $queryBuilder, TableModel $table) { $rootAlias = $this->getRootAlias($queryBuilder); if (true === is_array($table->getFilters())) { foreach ($table->getFilters() as $filterKey => $filterItems) { if (false === is_array($filterItems) || 0 === count($filterItems)) { continue; } $queryBuilder->andWhere($queryBuilder->expr()->in(sprintf('%s.%s', $rootAlias, $filterKey), CollectionUtility::getIds($filterItems))); } } return $queryBuilder; }
/** * Get Usernames as array * * @param string $entity User Entity Class Name * * @return array */ public function getUserNames($entity) { $users = $this->getDoctrine()->getRepository($entity)->findBy(['enabled' => true], ['id' => 'asc']); return CollectionUtility::get('username', $users); }