Итак, у меня есть следующий запрос ниже:
public Iterable<Dealer> findAll(Dealer dealer) {
QDealer qdealer = QDealer.dealer;
BooleanExpression where = null;
if(dealer.getId() != null && dealer.getId() != 0) {
buildPredicate(qdealer.id.goe(dealer.getId()));
}
OrderSpecifier<String> sortOrder = QDealer.dealer.dealerCode.desc();
Iterable<Dealer> results = dlrRpstry.findAll(where, sortOrder);
return results;
}
Запрос выше работает нормально. Тем не менее, я хотел бы сначала отсортировать результаты по дилерскому типу, а затем по дилерскому коду, что-то вроде «заказ по дилерскому типу по возрастанию, дилерскому коду по убыванию». Как мне создать экземпляр OrderSpecifier, чтобы результаты сортировались по дилерскому типу, а затем по коду дилера.
DealerRepository dlrRpstry расширяет JpaRepository, QueryDslPredicateExecutor
Я использую spring-data-jpa-1.1.0, spring-data-commons-dist-1.3.2 и querydsl-jpa-2.9.0.
Если OrderSpecifier не может быть настроен на порядок сортировки с несколькими столбцами, каким будет альтернативное решение, которое удовлетворит мое требование сортировки результатов «по дилерскому типу asc, дилерскому коду desc».
Любая помощь будет принята с благодарностью. Заранее спасибо.
Ник