Просмотр результатов расчета корзины регистрации - PullRequest
2 голосов
/ 03 июня 2019

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

Здесь мы используем примеры: https://support.intershop.com/kb/index.php/Display/23V395#Cookbook-BasketCalculation-Recipe:TheResultView

И проблема в том, как использовать / зарегистрировать класс "TutorialCalculationResultView"?

Спасибо!

Ответы [ 2 ]

4 голосов
/ 03 июня 2019

Вам необходимо создать фабричный класс, который создает представление результата:

public class TutorialCalculationResultViewFactoryImpl implements CalculationResultViewFactory
{
    @Override
    public LineItemCtnrCalculationResultView createCalculationResultView(BaseCalculationResultView view)
    {
        return new TutorialCalculationResultView(view);
    }
}

Затем эта реализация должна быть подключена через компонентную структуру:

<implementation name="TutorialCalculationResultViewFactory" implements="CalculationResultViewFactory"
                class="yourPackageName.TutorialCalculationResultViewFactoryImpl" />

Наконец, вам нужно зарегистрировать экземпляр этого класса, как описано в кулинарной книге:

<fulfill requirement="assignment" of="BasketBOCalculationResultViewExtensionFactory">
    <instance with="CalculationResultViewFactoryAssignment">
        <fulfill requirement="ruleSetID" value="yourPackageName.TutorialRuleSet" />
        <fulfill requirement="factory">
            <instance with="TutorialCalculationResultViewFactory" />
        </fulfill>
    </instance>
</fulfill>
1 голос
/ 03 июня 2019

Чтобы добавить к ответу выше, вы можете получить доступ к представлению, используя это расширение:

TutorialCalculationResultView view = basketbo.getExtension(BasketBOCalculationResultViewExtension.class);

это должно вернуть ваш результат просмотра.

...