Hybris SOLR - фасет цена-значение с помощью ползунка свободного диапазона - PullRequest
0 голосов
/ 06 октября 2019

Я пытаюсь реализовать ползунок цены в свободном диапазоне в Hybris 1811. Однако я застрял, когда пытался найти какие-либо полезные ресурсы по этой теме.

Я обнаружил, что основной ценовой аспектможет выполнять поиск только по диапазонам цен, которые хранятся в строках, поэтому я не могу сделать из этого никакого полезного слайдера.

Я также обнаружил, что фактическая цена ( double ), а недиапазон содержится в поле priceValue. Однако когда я попытался включить это поле в качестве фасета в Backoffice, оно никогда не обрабатывалось как таковое и никогда не отображалось как фасет даже в коде, не говоря уже о фасетном поиске на странице продукта.

Можете ли вы порекомендоватькакие-либо источники или дать какие-либо советы о том, как реализовать эту функцию?

1 Ответ

1 голос
/ 25 октября 2019

Некоторое время назад мы достигли подобной цели следующим образом

1) Убедитесь, что значения цен проиндексированы в индексе solr для каждого продукта / варианта

2) Создайте пользовательский компонент на основе ajax дляобеспечить внешний вид и принимать входные данные цены в качестве значения ползунка

3) Используйте постпроцессор запроса solr, чтобы изменить свой запрос solr до его запуска на сервере Solr. Здесь вместо использования фасета используйте его как простой поисковый запрос. Возьмите дескриптор solrSearchQuery и добавьте значения поля цены

public class SimpleSolrQueryPostProcessor implements SolrQueryPostProcessor
{
    @Override
    SolrQuery process(final SolrQuery query, final SearchQuery solrSearchQuery)
    {
        query.setSortField("id", ORDER.asc);
        query.setStart(Integer.valueOf(0));
        query.setRows(Integer.valueOf(10));
    }
}

Для получения более подробной информации см. Документацию SAP по https://help.sap.com/viewer/d0224eca81e249cb821f2cdf45a82ace/1905/en-US/8bb1b4bf866910149a8593d8e78aacaa.html?q=solr%20query

Надеюсь, это поможет!

...