【问题标题】:ProductLineItem FreeGift changes where we don't expect it toProductLineItem FreeGift 在我们不期望的地方发生了变化
【发布时间】:2019-06-06 14:51:34
【问题描述】:

我们在免费礼物方面遇到了一些奇怪的问题。

调用ProcessBasket-RemoveLineItem后,ProductLineItem中留在篮子里的标志FreeGift由真变为假。

看起来问题出在InvalidateBasketCalculation pipelet(来自 bc_basket)中,在ProcessBasketInvalidation-SetBasketInvalidationStatus 中调用。

【问题讨论】:

标签: intershop


【解决方案1】:

商品是否为免费赠品的信息存储在购物篮计算结果的ComputedItems中。通过调用管道ProcessBasket-RemoveLineItem,篮子计算结果被标记为无效(您正确地发现这是由管道InvalidateBasketCalculation 完成的)。因此,现有的ComputedItems 将被删除,因为它们可能不再正确(请注意,这是 ICM 7.10.5.5 引入的最新更改;如果您使用的是旧版本,可能还有其他原因对于这个问题)。因此,此时产品是否是免费礼物的信息会丢失。

要解决此问题,只需调用管道ProcessBasket-Calculate 再次触发购物篮计算。

【讨论】:

    猜你喜欢
    • 2013-12-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-14
    • 2018-07-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多