magento -- 实现公式计价(公式定价)的功能

magento 的功能很强大,很多功能免费就可以获得,我这边的公式计价功能自然是magento 没有的功能,需求来自于不同的产品有不同的属性,而会有不同的价格,比如,窗帘的计价要根据面积来算,涉及到长(l )和宽(w) ,甚至颜色(c ). 如果客户是希望在一定的基础价上再根据长和宽来计算,或者是在按照某个规律来计算,而不是通过magento的configurable或custom option来发布产品,因为产品选项多,可能的组合实在太多的,可能是幂级的,这个时候就需要magento 能够有个可以通过类似excel 的公式来计价。比如:

baseprice+((l+w)*2-20)*5

尽管magento 已经有了基于custom option 的不同计价,加上tier price ,似乎可以满足一定的需要,但是要实现让用户自己确定规律来计价却是必须要独立出一个模块来实现,而且更重要的是免除用户使用configurable product发布一个产品,要发布N次(N=L*W*C)的痛苦。 

大概思考了一下,分成前台和后台两个方面,前台的实现相对来说比较简单,关键在于我如何才能把计算出来的价格写入到相应的数据库,我想至少涉及到的有quote,order,invoice,所以我要先分清楚这部分模块的data flow。

分析一下至少需要修改这些block:

 

product view block

checkout cart block

checkout onepage review block

 

如果你知道MTO模块,就知道其实思路就是MTO那样,只不过新版中,不再需要MTO去考虑那么复杂,不过MTO却是进一步深入了解和学习magento的好教程。

 

联系搞了几天,终于搞定。方法有很多种,只要花点时间读清楚magento的代码就知道去哪里修改。目前虽然可以实现用户自定义公式来计算,但是前台数据还末添加验证,还有其它功能有待添加。

 

已经发布:(magento公式计价插件)

目前支持特性:

  • 可选择要不要基于某个基准价
  • 可以基于分类或者基于某个产品来设定公式
  • 可以自已定义公式,只不过要遵守一定的规范

 

你可能感兴趣的:(c,数据库,Excel,产品,Magento)