我想根据后台中确定为具有促销代码,开始日期和结束日期的单独模型的日期,通过cronjob发布或取消部署基于新促销引擎(规则库)的促销。
我在帮助hybris中无法像在后台那样执行发布和取消部署操作的促销API。而且我在项目中找不到相关的促销服务。
任何帮助将不胜感激。
答案 0 :(得分:1)
以下是在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)
答案 1 :(得分:0)
对于发布促销活动,您可以使用:
ruleMaintenanceService.compileAndPublishRules(promotions,"promotions-module",true);
要取消发布促销,您可以使用:
ruleMaintenanceService.undeployRules(promotions,site);