即使购物车不满足规则条件,优惠券也会与促销规则一起应用于购物车

2020-09-15 04:47发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我设置了单个代码优惠...

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

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


大家好,

我设置了单个代码优惠券和促销规则,条件优惠券代码和购物车总额超过$ 1000,并且仅作为触发消息进行操作。 现在,当我尝试将优惠券应用于店面优惠券时,即使购物车总额少于$ 1000,我也可以在hmc的cppliedcoupons中看到它。 根据我的假设,如果不满足规则,则优惠券代码也不应附加在购物车上。

如果我做错了任何事情,请帮助我。

8条回答

需要在 createProductList(最终模型模型)方法中修改 AbstractCartPageController 。 肮脏代码的例子。

 受保护的void createProductList(最终模型模型)引发CMSItemNotFoundException
      {
          最后的CartData cartData = cartFacade.getSessionCartWithEntryOrdering(true);
          boolean hasPickUpCartEntries = false;
          if(cartData.getEntries()!= null &&!cartData.getEntries()。isEmpty())
          {
              用于(最终OrderEntryData条目:cartData.getEntries())
              {
                  如果(!hasPickUpCartEntries && entry.getDeliveryPointOfService()!= null)
                  {
                      hasPickUpCartEntries = true;
                  }
                  最后的UpdateQuantityForm uqf = new UpdateQuantityForm();
                  uqf.setQuantity(entry.getQuantity());
                  model.addAttribute(" updateQuantityForm" + entry.getEntryNumber(),uqf);
              }
          }
         //修复凭证
          updatevouchersFromCartData(cartData);
 
          model.addAttribute(" cartData",cartData);
          model.addAttribute(" hasPickUpCartEntries",Boolean.valueOf(hasPickUpCartEntries));
 
          storeCmsPageInModel(model,getContentPageForLabelOrId(CART_CMS_PAGE_LABEL));
          setUpMetaDataForContentPage(model,getContentPageForLabelOrId(CART_CMS_PAGE_LABEL));
      }
 
 
     //修复优惠券。 脏代码的示例:
      受保护的void updatevouchersFromCartData(CartData cartData){
          List  AppliedVouchers = cartData.getAppliedVouchers();
          Iterator 迭代器= AppliedVouchers.iterator();
          而(iterator.hasNext()){
              字符串voucherCode = iterator.next();
              尝试{
                  voucherFacade.releaseVoucher(voucherCode);
                  voucherFacade.applyVoucher(voucherCode);
              } catch(忽略VoucherOperationException){
                  LOG.warn("无法兑换凭单:" + voucherCode);
                  iterator.remove();
              }
          }
          cartData.setAppliedVouchers(appliedVouchers);
      }


  

一周热门 更多>