文章目录

  • 购物车的业务需求
  • 购物车模型

购物车的业务需求

  • 暂存商品:这是购物车最直观的功能,类似于线下逛超市时的购物车。相应的,就要有商品的加购、删除、更改数量、选中等操作。
  • 比价:用户可能会将多个同类商品加入购物车,从多个维度进行比价(例如:商品价格,促销力度,运费等),因此购物车模型的设计、前台页面的展示一定是方便用户进行比价的。
  • 促销:除了商品本身的促销之外,大型的电商一定会有针对购物车本身的促销手段。例如,商品降价后对加购的用户推送降价提醒、空车推送营销等等。

总之,大型电商的购物车除了包含暂存商品的基础功能外,一定会通过辅助用户完成比价、以及购物车营销策略,最终提高用户的结算转化率。

购物车模型

以数据+操作的形式构建购物车模型,以京东购物车为例,可以总结出以下的模型

数据

  • 商品信息:购物车中最基础的信息,基本是以sku的形式展示的,包括商品名称,销售属性,价格。注意在实现存储时肯定不能仅仅保存一个skuId,加购时的关键信息是需要保存下来的(例如加购时的价格,便于降价后提醒用户)
  • 标签:购物车中有便于用户比价以及实现促销的各种标签,例如图中的“促销”,“比加入时降10元”,“无货”。

操作

  • 价格计算:购物车的价格计算不仅仅是简单计算一个总和,往往还需要根据复杂的促销逻辑,计算出一个最优的结果。
  • 商品分堆&排序:商品的分堆一般先以店铺为单位,店铺内部还可能会以不同活动进行分堆;排序一般就是按加购的时间倒序排序,不过由于按店铺分堆,加购后会把整个店铺的商品都移到顶部。
  • 营销:如上一节提到的,实现对加购的用户推送活动提醒、空车推送营销等等。

【电商开发手册】购物车设计相关推荐

  1. 电商项目之购物车设计

    购物车 购物车数据的储存 购物车设计是每个电商项目中必不可缺的一环,不管登录与否,购物车都可以使用.那么购物车的数据我们存在哪里呢? 登录时,购物车的数据理所应当的存在redis数据库中,可是未登录时 ...

  2. 【电商开发手册】订单-下单

    下单需求 所谓下单,本质上就是买卖双方通过确认一系列信息并且签订电子合同的过程 在电商平台的下单过程中,也需要确定买卖双方的一系列信息: 买方:用户确认收货地址.支付方式.配送方式等等 卖方:卖方需要 ...

  3. 快照设计 电商系统_电商系统设计之购物车

    本章适合初级工程师及中级工程师细看,大佬请随意 前言 问 [不存价格字段不行吗?直接查询商品表获取价格] 答 [如果价格更新,应提示用户,商品的浮动信息.可以选择直接更新购物车,或者单独建立一个表,来 ...

  4. Java生鲜电商平台-监控模块的设计与架构

    点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! ‍ 来源:https://www.cnblogs.com/ ...

  5. (附源码)springboot电商系统前端界面设计与浏览器兼容性研究 毕业设计 231058

    基于springboot电商系统前端界面设计 摘  要 随着科学技术的飞速发展,各行各业都在努力与现代先进技术接轨,通过科技手段提高自身的优势:对于电商系统前端界面设计与浏览器兼容性研究当然也不能排除 ...

  6. spring boot电商系统前端界面设计与浏览器兼容性研究 毕业设计-附源码231058

    摘  要 随着科学技术的飞速发展,各行各业都在努力与现代先进技术接轨,通过科技手段提高自身的优势:对于电商系统前端界面设计与浏览器兼容性研究当然也不能排除在外,随着网络技术的不断成熟,带动了电商系统前 ...

  7. 宠物电商社区APP的设计与实现

    摘  要:为了设计并实现具有宠物产品商城和问答社区功能的APP,通过比较国内外宠物行业电商发展现状和国内已有的宠物电商平台的优缺点,分析可行性和需求,从而进行详细设计和实现.该APP后台采用SSM框架 ...

  8. 《程序员》2014年11月刊:电商峰值系统架构设计

    双11来临之际,<程序员>以"电商峰值系统架构设计"为主题,力邀京东.当当.小米.1号店.海尔商城.唯品会.蘑菇街.麦包包等电商企业,及商派.基调网络等服务公司,分享电 ...

  9. 海尔电商峰值系统架构设计最佳实践

    多数电商平台都会经历相似的过程,流量和业绩每年以几倍至十几倍的速度增长,每年都要接受几次大规模.全方位的系统检阅,例如双11.周年庆等购物狂欢节,期间流量和订单可能是日常的十几倍甚至几十倍,产生的峰值 ...

最新文章

  1. MindSpore技术理解(下)
  2. html怎么让导航栏平均分布,CSS 怎么让按钮平均分布
  3. HDFS 2.7.4中hdfs-site.xml参数未配置引发的一些异常
  4. 【arduino】初测ESP32的DAC生成AV视频模拟信号项目:ESP32CompositeVideo
  5. mysql 事务值被改变_面试被问MySQL 事务的实现原理,怎么破?
  6. SAP IBASE category 01 download
  7. 强化学习之基础入门_强化学习基础
  8. Taro+react开发(88):大写px 控制样式
  9. 深入理解并发容器ThreadLocal
  10. 团队作业——Alpha冲刺 4/12
  11. 程序实现对数据排序并按出现次数进行排序 目录 1. 题目程序实现对数据排序并按出现次数进行排序 1 2. 思路 2 3. 效果 2 4. 代码 /00listPrj/src/Sort.java 2
  12. C4D快速入门教程——创建模型
  13. ASCALL码表对照表 最全、最成体系表格 与对比
  14. 7.26 1004度度熊的午饭时光 百度之星题解
  15. 计算机主板在网卡分配错位,华硕主板如何在bios里关闭网卡启动
  16. python基础之排列组合以及正则表达式
  17. 【C语言进阶】⑤关于数组传参和指针传参辨析
  18. 微信朋友圈广告html,微信小视频制作广告效果 微信朋友圈广告制作(有广告的小视频发朋友圈[方法而已])...
  19. Android博通BCM libbt-vendor.so 分析蓝牙初始化流程
  20. 如何选择企业即时通讯软件?

热门文章

  1. js向上向下取整_WEB前端之js只保留整数,向上取整,四舍五入,向下取整等函数...
  2. thinkphp 5.0 php7.2,thinkphp5.0生命周期
  3. 数字金字塔 (15分)
  4. 中国科学院大学发布人才召集令!科研启动经费最高700万!
  5. html div 不要超出,css怎么设置div超出不换行?
  6. 介词for和with 和of的用法_介词的用法for与of的具体区别
  7. RationalDMIS 2020快速输出极半径和极角
  8. Java设计模式—单例设计模式(Singleton Pattern)完全解析
  9. Java编程之十进制转二进制算法
  10. cpu核数和逻辑个数的区别_CPU逻辑核心数和物理核心数是什么意思?