Публикация или отмена развертывания продвижения через задание cron в Hybris

Я хотел бы публиковать или отменять развертывание рекламных акций, созданных на новом механизме продвижения (базе правил) с помощью задания cron, в соответствии с датами, которые определены в бэк-офисе как отдельная модель, которая имеет промо-код, дату начала и дату окончания.

Я не смог найти api продвижения в help hybris для выполнения операций публикации и отмены развертывания, как в бэк-офисе. А также мне не удалось найти в проекте сопутствующие услуги по продвижению.

Любая помощь будет оценена по достоинству.


person Hatip Kabak    schedule 09.09.2018    source источник


Ответы (2)


Вот пример публикации рекламных акций в Groovy:

import de.hybris.platform.core.Registry
def activateAllPromotions()
{
    def maintenanceService = Registry.getApplicationContext().getBean("ruleMaintenanceService")
    def ruleService = Registry.getApplicationContext().getBean("ruleService")
    def rules = ruleService.getAllRules()
    def res = maintenanceService.compileAndPublishRules(rules,"promotions-module",true)
}
activateAllPromotions()

Вы можете отменить публикацию с помощью maintenanceService#archiveRule(AbstractRuleModel)

person alain.janinm    schedule 10.09.2018
comment
К вашему сведению, отличная консоль в hac предоставляет контекст Spring через переменную spring. Поэтому вместо Registry... вы можете использовать spring.getBean('...') - person Sukram; 12.09.2018

Для публикации рекламных акций вы можете использовать:

ruleMaintenanceService.compileAndPublishRules(promotions,"promotions-module",true);

Для отмены публикации рекламных акций вы можете использовать:

ruleMaintenanceService.undeployRules(promotions,site);
person Thrivikram M    schedule 01.04.2020
comment
Чтобы проиллюстрировать код, вы должны использовать блок кода на панели форматирования при создании сообщения. - person Anidhya Bhatnagar; 01.04.2020
comment
Спасибо за вклад, я сделаю это с этого момента - person Thrivikram M; 07.04.2020