欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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

程序员文章站 2022-07-12 20:23:51
...

关于国际商城现货展示与购物车的费用设计:
商品:
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]
相关标签: 购物车

上一篇: redis排序

下一篇: git仓库创建