addWhere($queryBuilder, $resourceClass, $operationName); } public function applyToItem(QueryBuilder $queryBuilder, QueryNameGeneratorInterface $queryNameGenerator, string $resourceClass, array $identifiers, string $operationName = null, array $context = []): void { $this->addWhere($queryBuilder, $resourceClass, $operationName); } private function addWhere(QueryBuilder $queryBuilder, string $resourceClass, string $operationName): void { if (NetworkOrganization::class !== $resourceClass) { return; } /** @var Access $currentUser */ $currentUser = $this->security->getUser(); $rootAlias = $queryBuilder->getRootAliases()[0]; $queryBuilder ->andWhere(sprintf('%s.organization = :organization', $rootAlias)) ->setParameter('organization', $currentUser->getOrganization()) ; } }