记录一次需求的架构设计
目录
记录一次需求的架构设计
0 前言
本文主要是记录一次需求的数据库设计,用以后续参考,防止遗忘,水平有限,共同探讨,不足之处欢迎指正
1 需求描述
本次需求主要是增加一个名为产品
的数据集合,这个产品是在第三方的概念,我们需要在自己的系统里也存在一份对应,所以需要存一份原始数据,一份我们系统里面的产品数据。我们系统中产品支持合并多个产品合并成一个产品,也支持将合并后的产品进行拆分原始产品。我们系统和第三方的产品数据一一对应。
产品表设计
关键字段:
id | level | product_id | pid | is_del |
---|---|---|---|---|
1 | 1 | 1001 | 1 | 0 |
2 | 1 | 1002 | 4 | 0 |
3 | 1 | 1003 | 4 | 0 |
4 | 2 | 0 | 4 | 0 |
5 | 1 | 1004 | 5 | 0 |
6 | 2 | 0 | 6 | 1 |
字段含义:
- id:自增ID
- level:类型 1 原始产品 2 合并产品
- product_id:第三方产品表ID
- pid:父ID (无合并项为自己)
- is_del:删除状态 0 未删除 1 已删除
产品操作
产品列表
|
|
数据都是原始产品数据聚合而成,所以只需要查询原始产品的数据进行整合就行。
产品合并
|
|
新建合并的产品,之后将原始产品的pid
更改为该产品的id
产品拆分
|
|
删除合并后的产品,之后将原始产品的pid
更改为自己的id