企业级开发项目实战——下单业务逻辑分析及实现流程

本文详细介绍了企业级开发项目中下单业务的逻辑,包括订单信息整合、库存扣减以及超时订单的清理。在下单过程中,通过FeignClient调用商品和服务接口,实现订单、订单详情和物流信息的存储。同时,采用延迟队列确保30分钟后未支付的订单被自动取消,恢复相应库存。整个流程注重事务安全性和幂等性设计。

需求:

1. 实现订单信息的生成提交:整合订单表信息、订单详情表信息、订单物流表信息;

2. 实现扣减库存接口;

3. 清理超时未支付订单;

 需求分析:

实现流程:

创建订单业务比较复杂,流程如下:

  • 1)根据雪花算法生成订单id
  • 2)商品微服务提供FeignClient,实现根据id查询商品的接口
  • 3)根据itemId查询商品信息
  • 4)基于商品价格、购买数量计算商品总价:totalFee
  • 5)封装Order对象,初识status为未支付
  • 6)将Order写入数据库tb_order表中
  • 7)将商品信息、orderId信息封装为OrderDetail对象,写入tb_order_detail表
  • 8)将user-service的根据id查询地址接口封装为FeignClient
  • 9)根据addressId查询user-service服务,获取地址信息
  • 10)将地址封装为OrderLogistics对象,写入tb_order_logistics表
  • 11)在item-service提供减库存接口,并编写FeignClient
  • 12)调用item-service的减库存接口

需要注意的是,注意确保跨服务业务的事务安全性。

何时扣库存?

评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值