一、产品概述

1.版本信息

  • 版本号:V1.0
  • 创建日期:2021年10月12日14:05:19
  • 审核人:邹利平

2.修订历史

时间 版本号 修订人 主要修订内容
2021年10月12日14:05:42 V1.0 邹利平 新建

二、文档说明

1、名词解释

术语 / 缩略词 说明
SPU
SKU SPU(Standard Product Unit) 是指标准产品单位

四、需求背景

1.产品 / 数据现状

2.用户调研

简要说明调研方法、样本情况及关键结论,点击工具栏image.png「插入链接」,在此附上详细的数据分析报告并添加在【附录】中

五、表结构设计

本文主要对商品分类、品牌管理、商品类型这三个功能的表进行解析,采用功能与表结构对照的形式。表解析只会标注一些需要理解的字段,简单字段请自行对照表注释。

商品分类

商品分类表

  1. CREATE TABLE `pms_product_category` (
  2. `id` bigint(20) NOT NULL AUTO_INCREMENT,
  3. `parent_id` bigint(20) DEFAULT NULL COMMENT '上机分类的编号:0表示一级分类',
  4. `name` varchar(64) DEFAULT NULL,
  5. `level` int(1) DEFAULT NULL COMMENT '分类级别:0->1级;1->2级',
  6. `product_count` int(11) DEFAULT NULL,
  7. `product_unit` varchar(64) DEFAULT NULL,
  8. `nav_status` int(1) DEFAULT NULL COMMENT '是否显示在导航栏:0->不显示;1->显示',
  9. `show_status` int(1) DEFAULT NULL COMMENT '显示状态:0->不显示;1->显示',
  10. `sort` int(11) DEFAULT NULL,
  11. `icon` varchar(255) DEFAULT NULL COMMENT '图标',
  12. `keywords` varchar(255) DEFAULT NULL,
  13. `description` text COMMENT '描述',
  14. PRIMARY KEY (`id`)
  15. ) ENGINE=InnoDB AUTO_INCREMENT=53 DEFAULT CHARSET=utf8 COMMENT='产品分类';

管理端展现

商品分类列表图片.png

添加商品分类

图片.png
1. 初始化级联下拉列表数据
2. 保存相应数据
3. 编辑状态—初始化以保存筛选属性

移动端展现

📄 PMS(商品)模块设计 - 图5

品牌管理

商品品牌表

  1. CREATE TABLE `pms_brand` (
  2. `id` bigint(20) NOT NULL AUTO_INCREMENT,
  3. `name` varchar(64) DEFAULT NULL,
  4. `first_letter` varchar(8) DEFAULT NULL COMMENT '首字母',
  5. `sort` int(11) DEFAULT NULL,
  6. `factory_status` int(1) DEFAULT NULL COMMENT '是否为品牌制造商:0->不是;1->是',
  7. `show_status` int(1) DEFAULT NULL,
  8. `product_count` int(11) DEFAULT NULL COMMENT '产品数量',
  9. `product_comment_count` int(11) DEFAULT NULL COMMENT '产品评论数量',
  10. `logo` varchar(255) DEFAULT NULL COMMENT '品牌logo',
  11. `big_pic` varchar(255) DEFAULT NULL COMMENT '专区大图',
  12. `brand_story` text COMMENT '品牌故事',
  13. PRIMARY KEY (`id`)
  14. ) ENGINE=InnoDB AUTO_INCREMENT=59 DEFAULT CHARSET=utf8 COMMENT='品牌表';

opy to clipboardErrorCopied

管理端展现

  • 品牌列表 📄 PMS(商品)模块设计 - 图6
  • 添加品牌 📄 PMS(商品)模块设计 - 图7

    移动端展现

    📄 PMS(商品)模块设计 - 图8

    商品类型

    商品类型即商品属性,主要是指商品的规格和参数,规格用于用户购买商品时选择,参数用于标示商品属性及搜索时筛选。

相关表结构

商品属性分类表

  1. CREATE TABLE `pms_product_attribute_category` (
  2. `id` bigint(20) NOT NULL AUTO_INCREMENT,
  3. `name` varchar(64) DEFAULT NULL,
  4. `attribute_count` int(11) DEFAULT '0' COMMENT '属性数量',
  5. `param_count` int(11) DEFAULT '0' COMMENT '参数数量',
  6. PRIMARY KEY (`id`)
  7. ) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8 COMMENT='产品属性分类表';

opy to clipboardErrorCopied

商品属性表

type 字段用于控制其是规格还是参数

  1. CREATE TABLE `pms_product_attribute` (
  2. `id` bigint(20) NOT NULL AUTO_INCREMENT,
  3. `product_attribute_category_id` bigint(20) DEFAULT NULL,
  4. `name` varchar(64) DEFAULT NULL,
  5. `select_type` int(1) DEFAULT NULL COMMENT '属性选择类型:0->唯一;1->单选;2->多选',
  6. `input_type` int(1) DEFAULT NULL COMMENT '属性录入方式:0->手工录入;1->从列表中选取',
  7. `input_list` varchar(255) DEFAULT NULL COMMENT '可选值列表,以逗号隔开',
  8. `sort` int(11) DEFAULT NULL COMMENT '排序字段:最高的可以单独上传图片',
  9. `filter_type` int(1) DEFAULT NULL COMMENT '分类筛选样式:1->普通;1->颜色',
  10. `search_type` int(1) DEFAULT NULL COMMENT '检索类型;0->不需要进行检索;1->关键字检索;2->范围检索',
  11. `related_status` int(1) DEFAULT NULL COMMENT '相同属性产品是否关联;0->不关联;1->关联',
  12. `hand_add_status` int(1) DEFAULT NULL COMMENT '是否支持手动新增;0->不支持;1->支持',
  13. `type` int(1) DEFAULT NULL COMMENT '属性的类型;0->规格;1->参数',
  14. PRIMARY KEY (`id`)
  15. ) ENGINE=InnoDB AUTO_INCREMENT=49 DEFAULT CHARSET=utf8 COMMENT='商品属性参数表';

opy to clipboardErrorCopied

商品属性值表

如果对应的参数是规格且规格支持手动添加,那么该表用于存储手动新增的值;如果对应的商品属性是参数,那么该表用于存储参数的值。

  1. CREATE TABLE `pms_product_attribute_value` (
  2. `id` bigint(20) NOT NULL AUTO_INCREMENT,
  3. `product_id` bigint(20) DEFAULT NULL,
  4. `product_attribute_id` bigint(20) DEFAULT NULL,
  5. `value` varchar(64) DEFAULT NULL COMMENT '手动添加规格或参数的值,参数单值,规格有多个时以逗号隔开',
  6. PRIMARY KEY (`id`)
  7. ) ENGINE=InnoDB AUTO_INCREMENT=228 DEFAULT CHARSET=utf8 COMMENT='存储产品参数信息的表';

to clipboardErrorCopied

商品分类和属性的关系表

用于选中分类后搜索时生成筛选属性。

  1. create table pms_product_category_attribute_relation (
  2. id bigint not null auto_increment,
  3. product_category_id bigint comment '商品分类id',
  4. product_attribute_id bigint comment '商品属性id',
  5. primary key (id)
  6. );

opy to clipboardErrorCopied

管理端展现

  • 商品属性分类列表 📄 PMS(商品)模块设计 - 图9
  • 添加商品属性分类
    📄 PMS(商品)模块设计 - 图10
  • 商品规格列表 📄 PMS(商品)模块设计 - 图11
  • 商品参数列表 📄 PMS(商品)模块设计 - 图12
  • 添加商品属性 📄 PMS(商品)模块设计 - 图13
  • 添加商品时,选中商品属性分类,就会显示该分类的属性,用于生成sku 📄 PMS(商品)模块设计 - 图14
  • 添加商品时,选中商品属性分类,会显示该分类的参数用于录入 📄 PMS(商品)模块设计 - 图15

    移动端展现

  • 选择商品规格
    📄 PMS(商品)模块设计 - 图16

  • 查看商品参数
    📄 PMS(商品)模块设计 - 图17
  • 搜索商品时用于选择分类后的筛选
    📄 PMS(商品)模块设计 - 图18

    编辑商品

    相关表结构

    商品表

商品信息主要包括四部分:商品的基本信息、商品的促销信息、商品的属性信息、商品的关联,商品表是整个商品的基本信息部分。


  1. create table pms_product
  2. (
  3. id bigint not null auto_increment,
  4. brand_id bigint comment '品牌id',
  5. product_category_id bigint comment '品牌分类id',
  6. feight_template_id bigint comment '运费模版id',
  7. product_attribute_category_id bigint comment '品牌属性分类id',
  8. name varchar(64) not null comment '商品名称',
  9. pic varchar(255) comment '图片',
  10. product_sn varchar(64) not null comment '货号',
  11. delete_status int(1) comment '删除状态:0->未删除;1->已删除',
  12. publish_status int(1) comment '上架状态:0->下架;1->上架',
  13. new_status int(1) comment '新品状态:0->不是新品;1->新品',
  14. recommand_status int(1) comment '推荐状态;0->不推荐;1->推荐',
  15. verify_status int(1) comment '审核状态:0->未审核;1->审核通过',
  16. sort int comment '排序',
  17. sale int comment '销量',
  18. price decimal(10,2) comment '价格',
  19. promotion_price decimal(10,2) comment '促销价格',
  20. gift_growth int default 0 comment '赠送的成长值',
  21. gift_point int default 0 comment '赠送的积分',
  22. use_point_limit int comment '限制使用的积分数',
  23. sub_title varchar(255) comment '副标题',
  24. description text comment '商品描述',
  25. original_price decimal(10,2) comment '市场价',
  26. stock int comment '库存',
  27. low_stock int comment '库存预警值',
  28. unit varchar(16) comment '单位',
  29. weight decimal(10,2) comment '商品重量,默认为克',
  30. preview_status int(1) comment '是否为预告商品:0->不是;1->是',
  31. service_ids varchar(64) comment '以逗号分割的产品服务:1->无忧退货;2->快速退款;3->免费包邮',
  32. keywords varchar(255) comment '关键字',
  33. note varchar(255) comment '备注',
  34. album_pics varchar(255) comment '画册图片,连产品图片限制为5张,以逗号分割',
  35. detail_title varchar(255) comment '详情标题',
  36. detail_desc text comment '详情描述',
  37. detail_html text comment '产品详情网页内容',
  38. detail_mobile_html text comment '移动端网页详情',
  39. promotion_start_time datetime comment '促销开始时间',
  40. promotion_end_time datetime comment '促销结束时间',
  41. promotion_per_limit int comment '活动限购数量',
  42. promotion_type int(1) comment '促销类型:0->没有促销使用原价;1->使用促销价;2->使用会员价;3->使用阶梯价格;4->使用满减价格;5->限时购',
  43. product_category_name varchar(255) comment '产品分类名称',
  44. brand_name varchar(255) comment '品牌名称',
  45. primary key (id)
  46. );

商品SKU表

SKU(Stock Keeping Unit)是指库存量单位,SPU(Standard Product Unit)是指标准产品单位。举个例子:iphone xs是一个SPU,而iphone xs 公开版 64G 银色是一个SKU。

  1. create table pms_sku_stock
  2. (
  3. id bigint not null auto_increment,
  4. product_id bigint comment '商品id',
  5. sku_code varchar(64) not null comment 'sku编码',
  6. price decimal(10,2) comment '价格',
  7. stock int default 0 comment '库存',
  8. low_stock int comment '预警库存',
  9. sp_data varchar(1000) comment '商品销售属性,json格式',
  10. pic varchar(255) comment '展示图片',
  11. sale int comment '销量',
  12. promotion_price decimal(10,2) comment '单品促销价格',
  13. lock_stock int default 0 comment '锁定库存',
  14. primary key (id)
  15. );

opy to clipboardErrorCopied

商品阶梯价格表

商品优惠相关表,购买同商品满足一定数量后,可以使用打折价格进行购买。如:买两件商品可以打八折。

  1. create table pms_product_ladder
  2. (
  3. id bigint not null auto_increment,
  4. product_id bigint comment '商品id',
  5. count int comment '满足的商品数量',
  6. discount decimal(10,2) comment '折扣',
  7. price decimal(10,2) comment '折后价格',
  8. primary key (id)
  9. );

to clipboardErrorCopied

商品满减表

商品优惠相关表,购买同商品满足一定金额后,可以减免一定金额。如:买满1000减100元。


  1. create table pms_product_full_reduction
  2. (
  3. id bigint not null auto_increment,
  4. product_id bigint comment '商品id',
  5. full_price decimal(10,2) comment '商品满足金额',
  6. reduce_price decimal(10,2) comment '商品减少金额',
  7. primary key (id)
  8. );

py to clipboardErrorCopied

商品会员价格表

根据不同会员等级,可以以不同的会员价格购买。此处设计有缺陷,可以做成不同会员等级可以减免多少元或者按多少折扣进行购买。

  1. create table pms_member_price
  2. (
  3. id bigint not null auto_increment,
  4. product_id bigint comment '商品id',
  5. member_level_id bigint comment '会员等级id',
  6. member_price decimal(10,2) comment '会员价格',
  7. member_level_name varchar(100) comment '会员等级名称',
  8. primary key (id)
  9. );

py to clipboardErrorCopied

管理端展现

填写商品信息

📄 PMS(商品)模块设计 - 图19

填写商品促销

📄 PMS(商品)模块设计 - 图20

特惠促销

📄 PMS(商品)模块设计 - 图21

会员价格

📄 PMS(商品)模块设计 - 图22

阶梯价格

📄 PMS(商品)模块设计 - 图23

满减价格

📄 PMS(商品)模块设计 - 图24

填写商品属性

📄 PMS(商品)模块设计 - 图25 📄 PMS(商品)模块设计 - 图26 📄 PMS(商品)模块设计 - 图27

选择商品关联

📄 PMS(商品)模块设计 - 图28

移动端展现

商品介绍

📄 PMS(商品)模块设计 - 图29

图文详情

📄 PMS(商品)模块设计 - 图30

相关专题

📄 PMS(商品)模块设计 - 图31

商品评价及回复

相关表结构

商品评价表

  1. create table pms_comment
  2. (
  3. id bigint not null auto_increment,
  4. product_id bigint comment '商品id',
  5. member_nick_name varchar(255) comment '会员昵称',
  6. product_name varchar(255) comment '商品名称',
  7. star int(3) comment '评价星数:0->5',
  8. member_ip varchar(64) comment '评价的ip',
  9. create_time datetime comment '创建时间',
  10. show_status int(1) comment '是否显示',
  11. product_attribute varchar(255) comment '购买时的商品属性',
  12. collect_couont int comment '收藏数',
  13. read_count int comment '阅读数',
  14. content text comment '内容',
  15. pics varchar(1000) comment '上传图片地址,以逗号隔开',
  16. member_icon varchar(255) comment '评论用户头像',
  17. replay_count int comment '回复数',
  18. primary key (id)
  19. );

py to clipboardErrorCopied

产品评价回复表

  1. create table pms_comment_replay
  2. (
  3. id bigint not null auto_increment,
  4. comment_id bigint comment '评论id',
  5. member_nick_name varchar(255) comment '会员昵称',
  6. member_icon varchar(255) comment '会员头像',
  7. content varchar(1000) comment '内容',
  8. create_time datetime comment '创建时间',
  9. type int(1) comment '评论人员类型;0->会员;1->管理员',
  10. primary key (id)
  11. );

py to clipboardErrorCopied

移动端展现

商品评价列表

📄 PMS(商品)模块设计 - 图32

商品评价详情

📄 PMS(商品)模块设计 - 图33

商品回复列表

📄 PMS(商品)模块设计 - 图34

商品审核及操作记录

相关表结构

商品审核记录表

用于记录商品审核记录

  1. create table pms_product_vertify_record
  2. (
  3. id bigint not null auto_increment,
  4. product_id bigint comment '商品id',
  5. create_time datetime comment '创建时间',
  6. vertify_man varchar(64) comment '审核人',
  7. status int(1) comment '审核后的状态:0->未通过;2->已通过',
  8. detail varchar(255) comment '反馈详情',
  9. primary key (id)
  10. );

py to clipboardErrorCopied

商品操作记录表

用于记录商品操作记录

  1. create table pms_product_operate_log
  2. (
  3. id bigint not null auto_increment,
  4. product_id bigint comment '商品id',
  5. price_old decimal(10,2) comment '改变前价格',
  6. price_new decimal(10,2) comment '改变后价格',
  7. sale_price_old decimal(10,2) comment '改变前优惠价',
  8. sale_price_new decimal(10,2) comment '改变后优惠价',
  9. gift_point_old int comment '改变前积分',
  10. gift_point_new int comment '改变后积分',
  11. use_point_limit_old int comment '改变前积分使用限制',
  12. use_point_limit_new int comment '改变后积分使用限制',
  13. operate_man varchar(64) comment '操作人',
  14. create_time datetime comment '创建时间',
  15. primary key (id)
  16. );

py to clipboardErrorCopied

六、功能详细说明

1.产品流程图

鼠标点击左上角image.png,点击画板选择流程图,即可进入流程图创作你的产品流程图

📄 PMS(商品)模块设计 - 图36

2.交互原型图

鼠标点击左上角image.png,点击“引入第三方服务”中的“Figma 设计图”,粘贴Figma链接, 在文档中嵌入网页书签,展示设计原型

3.功能说明

序号 模块 功能 功能详细说明 交互图
1 资料编辑
- 更换头像
.

七、非功能需求

可以列举性能需求、系统需求、运营需求、安全需求、财务需求、法务需求、统计需求、使用帮助等…