mall--订单模块数据库表解析

发布时间 2023-04-12 17:25:25作者: kisshappyboy

本文主要对购物车功能相关表进行解析,介绍从商品加入购物车到下单的整个流程,涉及购物车优惠计算流程、确认单生成流程、下单流程及取消订单流程。

购物车表

用于存储购物车中每个商品信息,可用于计算商品优惠金额。

create table oms_cart_item    
(    
   id                   bigint not null auto_increment,    
   product_id           bigint comment '商品的id',    
   product_sku_id       bigint comment '商品sku的id',    
   member_id            bigint comment '会员id',    
   quantity             int comment '购买数量',    
   price                decimal(10,2) comment '添加到购物车的价格',    
   sp1                  varchar(200) comment '销售属性1',    
   sp2                  varchar(200) comment '销售属性2',    
   sp3                  varchar(200) comment '销售属性3',    
   product_pic          varchar(1000) comment '商品主图',    
   product_name         varchar(500) comment '商品名称',    
   product_brand        varchar(200) comment '商品品牌',    
   product_sn           varchar(200) comment '商品的条码',    
   product_sub_title    varchar(500) comment '商品副标题(卖点)',    
   product_sku_code     varchar(200) comment '商品sku条码',    
   member_nickname      varchar(500) comment '会员昵称',    
   create_date          datetime comment '创建时间',    
   modify_date          datetime comment '修改时间',    
   delete_status        int(1) default 0 comment '是否删除',    
   product_category_id  bigint comment '商品的分类',    
   product_attr         varchar(500) comment '商品销售属性:[{"key":"颜色","value":"银色"},{"key":"容量","value":"4G"}]',    
   primary key (id)    
);

购物下单流程

整体流程示意图

 

 

实现逻辑

加入购物车

购物车的主要功能就是存储用户选择的商品信息及计算购物车中商品的优惠。

 

相关注意点
  • 由于商品优惠都是以商品为单位来设计的,并不是以sku为单位设计的,所以必须以商品为单位来计算商品优惠;

  • 代码实现逻辑可以参考OmsPromotionServiceImpl类中的calcCartPromotion方法。