ATG 10.2: отображение купонов на странице сведений о продукте, чтобы помочь пользователям во время их покупки динамически
требование
Я создаю приложение электронной коммерции в ATG 10.2, в котором я хотел бы, чтобы купоны (только скидки на уровне товаров) отображались с информацией о продукте, чтобы привлечь клиентов и отобразить сумму, которую они могли бы сэкономить, используя эти купоны. Многие живые сайты (не уверен в ATG) уже используют эту функцию.
Знание. Как я понимаю, ATG может динамически определять сумму или скидку только после определения цены товара, когда рекламные акции уже добавлены в модели UserPricingModels.
Если бы вы могли поделиться некоторыми идеями о том, как настроить это поведение, чтобы я мог показать купон на странице продукта и использовать промо-акцию, связанную с купоном, оцените продукт и отобразите прайс-лист и сумму после скидки.
Предположение: единственное, о чем я мог думать на данный момент, - это добавить акцию купона к моделям цены товара пользователя, когда он просматривает страницу с информацией о продукте, пока цена не будет завершена, а затем удалить ее после отображения цены. Но я не впечатлен моим подходом.
Примечание. Цена должна отображаться как дисконтированная только на странице товара. Когда покупатель добавляет товар в корзину, он добавляется только по прейскурантной цене, продукт получает скидку только при применении купона.
2 ответа
В этом документе http://docs.oracle.com/cd/E24152_01/Platform.10-1/ATGMerchandisingUserGuide/html/s1402howpromotionswork01.html
Это упоминает
Вы можете использовать каплю GetApplicablePromotions, чтобы идентифицировать рекламные акции, которые применяются к определенным элементам, и отображать эту информацию на странице продукта. Или вы можете отправить электронное письмо с описанием акции, возможно, включив в сообщение код купона на скидку.
Вы можете попробовать это, однако, я не использовал это раньше.
После некоторого изучения, я думаю, я нашел решение с минимальными настройками. / atg / commerce / pricing / Капля PriceItem, которая использовалась для отображения цены продукта, имеет необязательный входной параметр с именем pricingModels (promotions)
Если вы укажете это, то цены произойдут так, как если бы эти модели были доступны для клиента.
Я написал пользовательский дроплет GetPricingModelsForPricing, который при наличии кода купона получит от него промо-акцию, а затем вернет коллекцию промо-акций, которые необходимо применить при определении цены. Затем я передал эту коллекцию в качестве Модели ценообразования капле PriceItem, которая теперь даст мне скидку на продукт.
Итак, теперь я могу сохранить идентификатор купона, который я собираюсь предложить, в атрибуте продукта или SKU, а затем передать этот идентификатор в свою пользовательскую каплю. Если этот код купона существует и с ним связана действительная рекламная акция, я бы вернул коллекцию модели ценообразования. Если нет, то эта коллекция будет пустым. Эта коллекция будет передана в каплю PriceItem для возврата правильной цены со скидкой. Это позволит мне отобразить Прайс-лист, Скидочную цену, которую клиент получит после применения отображаемого купона, и сумму, которую клиент сэкономит.
Когда товар будет добавлен в корзину, стоимость будет указана только в прайс-листе, пока не будет применен купон.
Пожалуйста, предложите лучшие варианты, если вы сталкиваетесь с некоторыми.
Надеюсь, это поможет кому-то нуждающемуся!