Hybris Solr Категории размещения предложения не удалось индексация - PullRequest
0 голосов
/ 15 ноября 2018

Мы не можем индексировать категории размещения предложений (это склад) для Solr.Отношение «многие ко многим», называемое «суперкатегориями» из AccommodationOffering в Category, было создано таким же образом, как и Product.

Совокупная информация существует на уровне базы данных и может быть получена весной через Groovy.запросы от ВАК.Вы также можете видеть информацию из HMC, и она хорошо ассоциируется, однако при обращении к ней у поставщика данные всегда приходят пустыми.Поэтому мы не знаем, существует ли перехватчик, который влияет на это поле, что заставляет вас всегда возвращать пустое значение, поэтому вы не можете добавлять категории в Solr.

Поскольку это не Продукт,Класс DefaultCategorySource был расширен, и теперь метод getDirectSuperCategories () соответствует нашим потребностям:

Защищенный Set getDirectSuperCategories (окончательный набор продуктов) {окончательный Набор категорий = новый HashSet ();

    for (final AccommodationOfferingModel product: products)
    {
      // This code snippet is originally used but returns empty
        / * final Collection <CategoryModel> directCategories = getModelService ()
                .getAttributeValue (product, getCategoriesQualifier ()); * /

      // Attempt to bring the complete object but the supercategories attribute is still empty

        final AccommodationOfferingModel auxAccom = modelService.get (product.getPk ());
        final Collection <CategoryModel> directCategories = auxAccom.getSupercategories ();
        if (directCategories! = null &&! directCategories.isEmpty ())
        {
            categories.addAll (directCategories);
        }
    }


    return categories;
}

Этот метод вызывается при индексации с помощью Solr, здесь мы не можем получить категории для индексации их в Solr.

...