电商(一) 创建订单业务流程
一、背景
商品需要调用供应商的接口来实现订单的创建
在项目就存在两个订单,一个是供应商的订单、一个是项目自身的订单,实际就是一个订单
二、流程
https://www.processon.com/embed/611ca4261e0853164d2e3d02
在从用户点击购买到用户点击支付 ,最后成功返回订单号接着支付流程,失败则回滚操作
1、首先在商品页的时候点击购买,就需要开始校验库存、金额、邮费、收货地址等信息。
2、没有收货地址的,则要重新选择,且选择收货地址后,还需要调用类似刚才第一个的接口,根据选择的地址,再次计算邮费、金额。
3、在确定订单页面,用户点击购买则进入到创建订单接口中
在分布式系统中处理订单事务,采用Seata-tcc来进行一个事务二段式的提交\回滚
创建项目订单成功,则二段式提交修改订单状态,失败则回滚删除订单
创建供应商订单成功,则二段式提交修改订单状态,失败则回滚删除订单+取消供应商订单
创建订单明细成功,则继续下一步,失败则回滚删除订单+取消供应商订单+回滚订单明细数据4、订单创建成功了,则返回订单号,且该订单号放入消息队列,若干时间没支付后,则调用取消订单的接口
三、其它相关
取消订单:订单状态修改、取消供应商订单,执行前注意检查状态,防止二次取消操作。消息队列在执行消费时,也是调回取消订单的接口。
订单支付:订单在支付成功后,则需要对库存、商家余额、用户资金等进行扣除。最后成功修改订单状态
订单发货:发货的接口通常给到供应商进行调用,接口做好幂等性处理,防止脏数据
订单收货:收货通常分成自动收货、和用户手动收货。像15天自动确认收货的逻辑,这边的处理方式是,定时任务1小时,查出一批距离收货时间少于1小时的订单,发到消息队列中,使用延迟消息的方式,在1小时内消费订单。这样操作减少了 消息队列的压力,1个小时查询一次对数据的压力也不会太大的压力
电商(一) 创建订单业务流程相关推荐
- 架构专家李伟山:电商系统之订单系统
李伟山 读完需要 12 分钟 速读仅需 4 分钟 李伟山,目前是一家人工智能公司的技术总监,主要负责 AI 产品化的工作,开发设计中国一款云同步社交平台--号簿管家:曾参与设计开发亿万级流量的阿里虚拟 ...
- 电商交易之订单中心设计(一)
背景 在电商交易中台团队工作了一段时间,越发觉自己需要学习的东西还有很多,因此想要定期整理.反思一下所见.所想,因此先从接触的订单中心开始. 订单是什么,我所理解,订单就是交易行为的记录.是用户某一刻 ...
- 电商系统之订单系统设计
电商系统之订单系统 01 概述 订单系统作为电商系统的"纽带"贯穿了整个电商系统的关键流程.其他模块都是围绕订单系统进行构建的.订单系统的演变也是随着电商平台的业务变化而逐渐演变进 ...
- Java生鲜电商平台-深入订单拆单架构与实战
Java生鲜电商平台-深入订单拆单架构与实战 Java生鲜电商中在做拆单的需求,细思极恐,思考越深入,就会发现里面涉及的东西越来越多,要想做好订单拆单的功能,还是相当有难度, 因此总结了一下拆单功能细 ...
- Axure电商后台业务管理系统原型模板/通用版电商后台管理系统/订单管理/营销管理/运营管理/财务管理/统计分析/库存管理/流量统计/运营管理/用户管理/秒杀促销/交易统计/活动管理/广告管理
Axure电商后台业务管理系统原型模板/通用版电商后台管理系统/订单管理/营销管理/运营管理/财务管理/统计分析/库存管理/流量统计/运营管理/用户管理/秒杀促销/交易统计/活动管理/广告管理 作品名 ...
- 宝付跨境电商不断创建,呈现支付多元化
宝付跨境电商不断创建,呈现支付多元化.宝付发现,随着人们对高品质生活的追求,跨境购已经成为众多消费者的新选择.根据近日第一财经商业数据中心联合天猫国际发布的<2018跨境进口消费洞察报告> ...
- 电商平台的订单设计流程
一.主流电商产品的订单状态 淘宝的订单状态主要有待付款.待发货.待收货.待评价.已关闭.以及退款中. 京东的订单状态主要有待付款.待收货.已完成.已取消等. 有赞的订单状态主要有待付款.待接单.待发货 ...
- SCRM电商会员管理系统+导购端+商城app+小程序电商+移动端商城+电商web端后台管理+商城前后端系统+移动端商家端+电商app+购物车+订单+商城系统+电商看板+电商后台+优惠券+积分+会员
作品介绍:SCRM电商会员管理系统+导购端+商城app/小程序 高保真SAAS实战web+移动端原型设计+电商web端后台管理+商城前后端系统+移动端商家端/用户端+电商用户数据大屏看板+订单管理+营 ...
- 电商系统之订单设计篇
01 概述 订单系统作为电商系统的"纽带"贯穿了整个电商系统的关键流程.其他模块都是围绕订单系统进行构建的.订单系统的演变也是随着电商平台的业务变化而逐渐演变进化着,接下来就和大家 ...
- 电商平台对接订单开具电子发票方案
我们以电商平台为例来说明:根据订单开具电子发票.其他加油站.快递.物流.O2O物业等行业都可以参考这个对接 电子发票: 以京东商城Web端.App端开票演示: 1.调用 "获取accessT ...
最新文章
- 直播APP开发注意事项汇总
- TF-IDF与余弦相似性的应用(二):找出相似文章
- Android Studio 小技巧/快捷键 合集
- Python之IO编程
- [转]要有梦----送给自己,希望自己能尽快走出当前的痛苦期
- Spring Mvc Controller返回值、参数绑定、参数校验 (高级二)
- 文档控件正在将数据上传到服务器,关于CellWeb插件中文件打开、上传、以及导入数据库中的问题...
- 传感器技术—压电式传感器(学习笔记八)
- 前端自学学习笔记——JavaScript
- 阿里聚石塔2.0部署前后端分离项目
- yarn打包报错:error during build: Error: Assigning to rvalue (Note that you need plugins to import files
- 180余件河北武强年画珍品亮相新疆昌吉回族自治州博物馆
- 省对应的市区经纬度信息
- 微信考勤签到 php,【投稿】微信签到打卡领积分源码,每日积分签到
- 关系网络lbs的应用_LBS中国起步:探索空间关系的商业化
- aardio - 写注册表改鼠标右键Kate菜单项信息
- deepCopy:1 Uncaught SyntaxError: Identifier ‘xxx’ has already been declared
- 用Python学《微积分B》(有理式与简单无理式积分套路)
- 从脑科学的角度分析物联网、 云计算、 大数据和互联网的关系
- UV云任务小米运动步数修改PHP网站源码