Я пытаюсь упорядочить список объектов в зависимости от того, кто вошел в систему, и на основе последнего выполненного действия.
Например, я вошел в систему как администратор А, и в списке людей я что-то делаю в профиле пользователя С.
Мне нужен вывод:
- для админа A: люди упорядочены так: C-A-B-D-E...
- для других админов: люди упорядочены так: A-B-C-D...
Для этого я сделал таблицу с этим атрибутом:
- идентификатор: автоматически сгенерированный
- adminId
- Идентификатор пользователя
- Дата последнего действия
Со ссылкой OneToMany (один пользователь -> много заказов) между двумя таблицами (mappedBy: userId, инвертированный iD), потому что у данного пользователя может быть разное «DateOfLastAction» в соответствии с adminID, который выполнил действие.
Теперь проблема в том, что когда я хочу заказать своего пользователя с помощью DateOfLastAction, я не могу этого сделать из-за отношения OneToMany.
(делая подобный ответ в этом post а>)
Так что лучше всего было бы преобразовать его в реальность *ToOne. Поможет ли мне составной первичный ключ? Есть ли у кого-нибудь идеи по лучшему дизайну?
createQuery
, хотя вы не можете выбрать выбранное поле. Кроме того, это не позволит мне установитьOrderBy
в невыбранном поле. Итак, я сделал leftJoin, но он не позволил мнеorderBy('DateOfLastAction','DESC')
напрямую в запросе - person Lilian Barraud   schedule 18.04.2018