目录

关于打折数量限制问题

包括库存数量

sku打折数量

product打折数量

flash打折数量,每个客户限制购买数量


所有加入购物车得需要时间保护比如30分钟

否则应该提示expire并且还原数量



淘宝设计思路


1.单个订单,如果超过限制数量直接原价

2,加入购物车不扣库存,订单下单(不用付款)才扣库存,关闭交易恢复库存,同时失去了折扣。。。。(这是bug

##淘宝购物车侧边栏购物车不错(就怕宽屏)

3,第二次购买折扣消失(那就意味着要统计订单,或者标记打折的用户了)

4,退出登陆,折扣又显示了



产品库存不怕超卖,所以付款才扣库存,创建订单不扣库存,可以让更多的人购买,一般都不准的,超卖是肯定的(这个可以在产品表上给个选项,如果需要严格控制超卖的话,就下单扣库存)


flash deal 价格很低,肯定不能超卖,创建订单就扣库存(只扣flash deal的库存)(结果就是有些下单未付款也占用了名额)


打折的产品 宁愿少卖也不超卖,如果可以的话(全店铺,目录打折都是不能设置数量限制的)

能够精确限制的只有skuDiscountflashDeal,这个就应该是创建订单就扣库存



所有的核心准则是宁少卖不超卖,只要客户下单就可以付款,这是更好的客户体验,客户下单了却不能购买体验太差,太尴尬,所有未付款的订单都应该在一段时间后关闭(比如一天抢单的折扣应该更短,根据订单创建时间)



加入购物车需要检查产品

每次进入checkout都需要检查产品是否可以购买

下单还要验证数据



checkout不检查产品,付款时不检查产品

下订单检查并且扣库存,不允许超卖(会少卖)

下单的时候检查可能会导致订单失败




****仅仅在下单的时候检查产品合法性

1,点击下单按钮直接本地检测产品是否有效,价格是否正确,如果不对写入session,并且在chekout显示清楚(绝大部分问题订单都可以在这一步检测出来)

2mothership创建订单检测,本地时效性会有一点点误差,数量也会和客端有些误差,就看能不能接受,如果要非常严格的话,还要再次验证产品

3,付款不要验证产品和价格了,这样客户体验太差了

4checkout也不要验证产品了(但是flash deal 的产品提醒客户要快速下单)

5,加入购物车是第一步验证,仅仅验证数量时候可用,应该使用ajax,便于直接结账,和更多的空间反馈信息



checkout提交订单的时候ajax要全局锁定,不能更改和刷新


订单需要给一个deactive来调整状态和释放库存


skuDiscount取消,合并到flashDealflashDeal要连接订单ID,这样便于取消订单还原flashDeal数量,同时限制客户购买多少个,这个已经没法再做缓存了(还得刷新,下一次单,刷新一次?本地刷新,也好过与看一次产品刷新一次),卖出数量更新太快,订单还要连接一个skuId,便于找到哪个曾经的Sku的单(nullable) 都不做外键,不然不能删除了

flashDealSku one to many 搞个soldEntry,来记录(客户id,订单id,数量)这个应该是最轻便的了



flash deal 无法定位到sku产品显示,悲剧了