Как назвать методы в весенних данных с и / или в одном запросе - PullRequest
0 голосов
/ 14 февраля 2019

Я хочу иметь метод, который ищет данные на основе статуса и (SellerId или BuyerId).Следующее имя метода не работает для меня и выдает ошибку: нет параметров, доступных для состояния детали SIMPLE_PROPERTY (1): [Is, Equals] НИКОГДА.Что нужно исправить в сигнатуре метода?Продавец и Покупатель - это две отдельные таблицы, каждая из которых имеет идентификатор поля.

findByStatusIsAndSellerIdOrStatusIsAndBuyerId (status, id)

1 Ответ

0 голосов
/ 14 февраля 2019
findByStatusIsAndSellerIdOrStatusIsAndBuyerId(status, id)

ожидает 4 параметра для четырех условий.

Вы также никогда не должны использовать производный запрос с AND и OR, потому что в лучшем случае приоритеты становятся довольно запутанными.

Поэтому выберите имя, которое вам нравится, и используйте аннотацию @Queryчтобы указать используемый запрос.

SELECT x FROM X x where x.status = :status and (x.seller.id = :id or x.buyer.id = :id) должен быть близок к тому, что вам нужно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...