就我而言,我必须一次向购物车添加一些相关产品。我的情况如下:
1)假设我们有一个产品并假设其代码是X-1
2)假设我们有另一种产品,其代码为X-2,而X-2则是X-1的补充。
3)X-2可以单独出售,但如果我们将X-1添加到购物车中以便出售,X-2必须同时加入购物车并且价格为X-2必须在购物车中为0,因为X-2的价格包含在X-1的价格中。
你能为Hybris-B2C加速器中的场景建议任何最佳实践吗?
答案 0 :(得分:2)
正如您在评论中所说,您不想在此处使用促销。所以我希望,你已经做了一些建模来维护亲子产品(比如打包交易)。
现在,在向购物车添加/移除购物车时,识别包裹交易产品(X-1),并借助addTocart和updateCart挂钩,您可以将其子产品(X-2)添加或移除到购物车。将儿童产品添加为免费礼品(giveAway)产品,这样您就不必担心计算服务。
要添加和删除子产品,您可以分别实现以下接口,并将您的bean添加到钩子列表。
CommerceAddToCartMethodHook > afterAddToCart
CommerceUpdateCartEntryHook > afterUpdateCartEntry
将您的bean添加到现有的钩子(commerceAddToCartMethodHooks,commerceUpdateCartEntryHooks),如
<bean id="myCommerceAddToCartMethodHooksList" depends-on="commerceAddToCartMethodHooks" parent="listMergeDirective" >
<property name="add" ref="myBeanForAddtoCartHook" />
</bean>
我有类似的要求(一揽子交易)。我们在ERP中维护一揽子交易并将其推向Hybris。我们仅显示有关母产品(X-1)PDP的所有子产品(X-2)信息。在添加购物车的同时我们只添加父产品并将订单发送到ERP其余的东西交给ERP。
答案 1 :(得分:0)
您可以使用促销选项来实现此目标.AcceleratorProductBOGOFPromotion是我可以推荐的最佳选择。从后台可以选择营销 - &gt;促销 - &gt;买X得Y