1 电商业务流程
电商的业务流程可以以一个普通用户的浏览足迹为例进行说明,用户点开电商首页开始浏览,可能会通过分类查询也可能通过全文搜索寻找自己中意的商品,这些商品无疑都是存储在后台的管理系统中的。
当用户寻找到自己中意的商品,可能会想要购买,将商品添加到购物车后发现需要登录,登录后对商品进行结算,这时候购物车的管理和商品订单信息的生成都会对业务数据库产生影响,会生成相应的订单数据和支付数据。
订单正式生成之后,还会对订单进行跟踪处理,直到订单全部完成。
电商的主要业务流程包括用户前台浏览商品时的商品详情的管理,用户商品加入购物车进行支付时用户个人中心&支付服务的管理,用户支付完成后订单后台服务的管理,这些流程涉及到了十几个甚至几十个业务数据表,甚至更多。
2 电商常识(SKU、SPU)
SKU=Stock Keeping Unit(库存量基本单位)。现在已经被引申为产品统一编号的简称,每种产品均对应有唯一的SKU号。
SPU(Standard Product Unit):是商品信息聚合的最小单位,是一组可复用、易检索的标准化信息集合。
例如:iPhoneX手机就是SPU。一台银色、128G内存的、支持联通网络的iPhoneX,就是SKU。
SPU表示一类商品。好处就是:可以共用商品图片,海报、销售属性等。
3 电商业务表结构
本电商数仓系统涉及到的业务数据表结构关系。这24个表以订单表、用户表、SKU商品表、活动表和优惠券表为中心,延伸出了优惠券领用表、支付流水表、活动订单表、订单详情表、订单状态表、商品评论表、编码字典表退单表、SPU商品表等,用户表提供用户的详细信息,支付流水表提供该订单的支付详情,订单详情表提供订单的商品数量等情况,商品表给订单详情表提供商品的详细信息。本次讲解只以此24个表为例,实际项目中,业务数据库中表格远远不止这些。
3.1 订单表(order_info)
标签 | 含义 | |
id | 订单编号 | |
consignee | 收货人 | |
consignee_tel | 收件人电话 | |
final_total_amount | 总金额 | |
order_status | 订单状态 | |
user_id | 用户id | |
delivery_address | 送货地址 | |
order_comment | 订单备注 | |
out_trade_no | 订单交易编号(第三方支付用) | |
trade_body | 订单描述(第三方支付用) | |
create_time | 创建时间 | |
operate_time | 操作时间 | |
expire_time | 失效时间 | |
tracking_no | 物流单编号 | |
parent_order_id | 父订单编号 | |
img_url | 图片路径 | |
province_id | 地区 | |
benefit_reduce_amount | 优惠金额 | |
original_total_amount | 原价金额 | |
feight_fee | 运费 |
3.2 订单详情表(order_detail)
标签 | 含义 | |
id | 编号 | |
order_id | 订单号 | |
sku_id | 商品id | |
sku_name | sku名称(冗余) | |
img_url | 图片名称(冗余) | |
order_price | 商品价格(下单时sku价格) | |
sku_num | 商品数量 | |
create_time | 创建时间 | |
source_type | 来源类型 | |
source_id | 来源编号 |
3.3 SKU商品表(sku_info)
标签 | 含义 | |
id | skuId | |
spu_id | spuId | |
price | 价格 | |
sku_name | 商品名称 | |
sku_desc | 商品描述 | |
weight | 重量 | |
tm_id | 品牌id | |
category3_id | 品类id | |
sku_default_img | 默认显示图片(冗余) | |
create_time | 创建时间 |
3.4 用户表(user_info)
标签 | 含义 | |
id | 用户id | |
login_name | 用户名称 | |
nick_name | 用户昵称 | |
passwd | 用户密码 | |
name | 真实姓名 | |
phone_num | 手机号 | |
邮箱 | ||
head_img | 头像 | |
user_level | 用户级别 | |
birthday | 生日 | |
gender | 性别:男=M,女=F | |
create_time | 创建时间 | |
operate_time | 操作时间 |
3.5 商品一级分类表(base_category1)
标签 | 含义 | |
id | id | |
name | 名称 |
1.3.6 商品二级分类表(base_category2)
标签 | 含义 | |
id | id | |
name | 名称 | |
category1_id | 一级品类id |
3.7 商品三级分类表(base_category3)
标签 | 含义 | |
id | id | |
name | 名称 | |
Category2_id | 二级品类id |
3.8 支付流水表(payment_info)
标签 | 含义 | |
id | 编号 | |
out_trade_no | 对外业务编号 | |
order_id | 订单编号 | |
user_id | 用户编号 | |
alipay_trade_no | 支付宝交易流水编号 | |
total_amount | 支付金额 | |
subject | 交易内容 | |
payment_type | 支付类型 | |
payment_time | 支付时间 |
3.9 省份表(base_province)
标签 | 含义 | |
id | id | |
name | 省份名称 | |
region_id | 地区ID | |
area_code | 地区编码 | |
iso_code | 国际编码 |
3.10 地区表(base_region)
标签 | 含义 | |
id | 大区id | |
region_name | 大区名称 |
3.11 品牌表(base_trademark)
标签 | 含义 | |
tm_id | 品牌id | |
tm_name | 品牌名称 |
3.12 订单状态表(order_status_log)
标签 | 含义 | |
id | 编号 | |
order_id | 订单编号 | |
order_status | 订单状态 | |
operate_time | 操作时间 |
3.13 SPU商品表(spu_info)
标签 | 含义 | |
id | 商品id | |
spu_name | spu商品名称 | |
description | 商品描述(后台简述) | |
category3_id | 三级分类id | |
tm_id | 品牌id |
3.14 商品评论表(comment_info)
标签 | 含义 | |
id | 编号 | |
user_id | 用户id | |
sku_id | 商品id | |
spu_id | spu_id | |
order_id | 订单编号 | |
appraise | 评价 1 好评 2 中评 3 差评 | |
comment_txt | 评价内容 | |
create_time | 创建时间 |
3.15 退单表(order_refund_info)
标签 | 含义 | |
id | 编号 | |
user_id | 用户id | |
order_id | 订单编号 | |
sku_id | sku_id | |
refund_type | 退款类型 | |
refund_amount | 退款金额 | |
refund_reason_type | 原因类型 | |
refund_reason_txt | 原因内容 | |
create_time | 创建时间 |
3.16 加购表(cart_info)
标签 | 含义 | |
id | 编号 | |
user_id | 用户id | |
sku_id | SKU商品 | |
cart_price | 放入购物车时价格 | |
sku_num | 数量 | |
img_url | 图片文件 | |
sku_name | sku名称 (冗余) | |
create_time | 创建时间 | |
operate_time | 修改时间 | |
is_ordered | 是否已经下单 | |
order_time | 下单时间 | |
source_type | 来源类型 | |
source_id | 来源编号 |
3.17 商品收藏表(favor_info)
标签 | 含义 | |
id | 编号 | |
user_id | 用户id | |
sku_id | 商品id | |
spu_id | spu_id | |
is_cancel | 是否已取消 0 正常 1 已取消 | |
create_time | 收藏时间 | |
cancel_time | 修改时间 |
3.18 优惠券领用表(coupon_use)
标签 | 含义 | |
id | 编号 | |
coupon_id | 购物券ID | |
user_id | 用户ID | |
order_id | 订单ID | |
coupon_status | 优惠券状态 | |
get_time | 领券时间 | |
using_time | 使用时间 | |
used_time | 支付时间 | |
expire_time | 过期时间 |
3.19 优惠券表(coupon_info)
标签 | 含义 | |
id | 优惠券编号 | |
coupon_name | 优惠券名称 | |
coupon_type | 优惠券类型 1 现金券 2 折扣券 3 满减券 4 满件打折券 | |
condition_amount | 满减金额 | |
condition_num | 满减件数 | |
activity_id | 活动编号 | |
benefit_amount | 优惠金额 | |
benefit_discount | 优惠折扣 | |
create_time | 创建时间 | |
range_type | 范围类型 1、商品 2、品类 3、品牌 | |
spu_id | 商品id | |
tm_id | 品牌id | |
category3_id | 品类id | |
limit_num | 最多领用次数 | |
operate_time | 修改时间 | |
expire_time | 过期时间 |
3.20 活动表(activity_info)
标签 | 含义 | |
id | 活动id | |
activity_name | 活动名称 | |
activity_type | 活动类型 | |
activity_desc | 活动描述 | |
start_time | 开始时间 | |
end_time | 结束时间 | |
create_time | 创建时间 |
3.21 活动订单关联表(activity_order)
标签 | 含义 | |
id | 编号 | |
activity_id | 活动id | |
order_id | 订单编号 | |
create_time | 发生日期 |
3.22 优惠规则表(activity_rule)
标签 | 含义 | |
id | 编号 | |
activity_id | 活动id | |
condition_amount | 满减金额 | |
condition_num | 满减件数 | |
benefit_amount | 优惠金额 | |
benefit_discount | 优惠折扣 | |
benefit_level | 优惠级别 |
3.23 编码字典表(base_dic)
标签 | 含义 | |
dic_code | 编号 | |
dic_name | 编码名称 | |
parent_code | 父编号 | |
create_time | 创建日期 | |
operate_time | 修改日期 |
3.24 参与活动商品表(activity_sku)(暂不导入)
标签 | 含义 | |
id | 编号 | |
activity_id | 活动id | |
sku_id | sku_id | |
create_time | 创建时间 |