`

关于国际商城现货展示与购物车的费用设计

    博客分类:
  • RUBY
阅读更多

关于国际商城现货展示与购物车的费用设计:
商品:
1,通过渠道api实时同步现货商品报价
2,现货报价方案分标准包装盒散装区间包装
3,散装切分为多标准包装展示
(我们做过3次现货的同步方案)
一:按天sku同步报价方案、每天第一次sku报价价格作为当天的报价记录,再有询价直接报价。
二:同步所有现货,计算出相关包装和费用(默认美国运费),直接计算好展示指标存在数据库。思维是大而全的现货模式,这样有两个不好的点,1是费用计算不准确受地理运费,汇率等影响实际费用准确性,2部分产品报价有效性不高出现毁单。
三:重点爆款产品营销现货,放弃大而全的现货模式。区间手动输入,结合地理位置,实时计算运费等服务费。为了展示速度的优化,将现货中标准包装按照二方案做了数据切分与存储处理,费用默认是美国费用,实际展示时,再重新计算(减少了排序优化展示成本,没有减轻费用实时计算成本)

展示:

突出竞争力:标准包装小于100g的不展示,危险品小于500g的包装不展示。(总包装数量小于4的时候都显示)
突出重点:展示前2和后2包装重量的显示,中间段默认隐藏。
多个方案时,取最优惠方案展示。

费用:
经过了两种思路:
一:经可能精确的情况下,确保不亏本的盈余。
二:经可能不亏本的情况下,确保给客户最多的折扣让利。

费用组成 = 成本价fob + 利润提成 + 清关服务费  + 运费 - 多产品件数的运费折扣 + 检测费 + 银行手续费

设计:
单一产品的费用影响因素:(成本价,件数,国家区域)
从购物车组成分类看,费用分为两种:单商品费用+订单总附加费用。
单商品费用,就是一个购物车中单类商品(当然可能好似多件)的费用。
订单总附加费用,指整个购物车的商品只需一次付予的费用成本。

从成本费用组成看,费用分为两种:商品成本价 +服务费

单件商品成本价:成本价fob + 利润提成
单件商品展示单价:成本价fob + 利润提成+ 运费+ 检测费
单商品多件费用:(单件商品成本价 * 件数 +  多件商品实际服务费用)
单商品多件购买优惠费:(单件商品成本价 + 单件商品服务费) * 件数  - (单件商品成本价 * 件数 +  多件商品实际服务费用)
多商品品类运费折扣:考虑到多产品可以统一运输减少成本(虽然供应商可能是不同的,但是都发到了指定的合作货代,可以让货代凑单发货),根据购物车商品总重量成本 - 分品类商品运费总和

数据库设计:

serves
<费用类型>

serve_charges
<费用规则明细>

cart_item_serves
<纪录单品类购物车的服务费明细>

order_serves
<纪录购物车成单的服务费明细>


统计类:

Serve
<数据库映射对象:服务类>

ServeCharge
<数据库映射对象:服务明细规则匹配>

ServeFee
<modle:获取服务费的service类>
为了剥离费用统计在每个继承对象中重复写
继承方式:
composed_of :serve,
                class_name: 'ServeFee',
                mapping: ['id', 'good_id'],
                constructor: Proc.new { |id| ServeFee.new(self.name, id, 1, nil, self.extra) }


SummaryService
<modle:统计购物车总服务类的费用>
[/ruby]
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics