Я пытаюсь создать HQL-запрос, который будет фильтровать дерево по пользователю.
В корне дерева у меня есть AllowUsers и AllowRoles, а на каждом узле у меня есть DenyUsers и DenyNodes. Я могу отфильтровать пользователя в корне дерева, используя
select e
from oStructureMenu e
join fetch e.Nodes n
where e.Id = :id
and :user in (select u from e.AllowUsers u)
но когда я добавляю
and :user in (select f.DenyUsers from n f)
Созданный sql имеет синтаксическую ошибку
Кроме того, я понятия не имею, как я собираюсь сравнивать роли для пользователя с ролями в коллекции разрешенных или запрещенных ролей
Любая помощь будет оценена ...