购物车级别的促销活动和全球折扣。 6.6

2020-09-10 16:04发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 我们有一个要求,我们需要...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我们有一个要求,我们需要在其中显示哪个促销给予购物车多少折扣。 我如何设法映射Global折扣和AppliedOrderPromotions。 但是现在我面临的挑战是,如果促销活动在一定条件下有免费礼物或免费优惠券,那么globalDiscounts中将不会有任何条目。 因此,我的逻辑失败了。

请提出您的最佳解决方案,以在购物车上显示促销及其AppliedDiscount(从购物车总额减少的金额)值。

1条回答

你好,

这里是代码示例,它将为您提供基于ReportPromotionService的订单中所有已应用的促销(这是在后台显示订单促销的服务)

 私有列表 parsePromotions(OrderModel订单){
      List  allAppliedPromotions =新的ArrayList <>();
     //记住要注入Report Promotion Service
      最终的PromotionEngineResults PromotionEngineResults = getReportPromotionService()
          .report(order);
     //此列表包含条目上所有已应用的促销
      最终列表 orderEntryPromotionEngineResults = PromotionEngineResults
          .getOrderEntryLevelPromotionEngineResults();
     
      最终的OrderLevelPromotionEngineResults orderPromotionEngineResults = PromotionEngineResults
          .getOrderLevelPromotionEngineResults();
 
      如果(CollectionUtils.isNotEmpty(orderEntryPromotionEngineResults)){
        orderEntryPromotionEngineResults.stream()
            .map(AbstractPromotionEngineResults :: getPromotionEngineResults)
            .forEach(allAppliedPromotions :: addAll);
      }
 
      如果(orderEntryPromotionEngineResults!= null){
        allAppliedPromotions.addAll(generatePromotionResults(orderPromotionEngineResults,order));
      }
      返回allAppliedPromotions;
    }

  

一周热门 更多>