种草表结构.md
11.7 KB
种草社区表结构
1. 用户文章表
用户文章表,包含用户发布内容,同步过来的逛资讯、晒单、now、mars数据
CREATE TABLE `grass_article` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`author_uid` int(10) unsigned DEFAULT '0' COMMENT '作者uid',
`article_type` int(10) unsigned DEFAULT '1' COMMENT '1、用户发布 2、guang文章同步 3、mars文章同步 4、晒单文章同步 5、now社区同步;',
`relate_id` int(10) unsigned DEFAULT NULL COMMENT '逛/masrs/now/对应的文章id',
`praise_count` int(11) DEFAULT '0' COMMENT '点赞数',
`favorite_count` int(11) DEFAULT '0' COMMENT '收藏数',
`is_top` int(11) NOT NULL DEFAULT '0' COMMENT '是否置顶 0未置顶 1置顶',
`is_recommend` int(11) NOT NULL DEFAULT '0' COMMENT '0未推荐 1推荐',
`auth_status` int(11) DEFAULT '0' COMMENT '0 未审核,1 审核通过,2 审核未通过,3 删除,9 草稿',
`auth_time` bigint(13) unsigned DEFAULT '0' COMMENT '审核时间',
`top_time` bigint(13) NOT NULL DEFAULT '0' COMMENT '置顶时间',
`recommend_time` bigint(13) unsigned DEFAULT '0' COMMENT '推荐时间',
`authorize_account` varchar(255) DEFAULT NULL COMMENT '审核人账号',
`author_type` int(11) DEFAULT '1' COMMENT '作者uid类型 1:有货uid 2:逛小编authorId',
`create_time` bigint(13) unsigned NOT NULL DEFAULT '0' COMMENT '创建时间',
`update_time` bigint(13) unsigned DEFAULT '0' COMMENT '更新时间',
PRIMARY KEY (`id`),
KEY `s_recommend_index` (`is_recommend`),
KEY `is_top_index` (`is_top`),
KEY `author_index` (`author_uid`,`auth_status`),
KEY `article_type_index` (`article_type`),
KEY `publish_index` (`create_time`),
KEY `recommend_index` (`recommend_time`),
KEY `top_time_index` (`top_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
2. 用户文章内容表
用户文章表的从表,记录文章的图片、文字等信息,可支持多种内容格式
CREATE TABLE `grass_article_block` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`article_id` int(11) NOT NULL COMMENT '文章id',
`content_data` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin COMMENT '文章内容',
`template_key` varchar(30) NOT NULL DEFAULT '内容模板' COMMENT 'text-文字 image-图片',
`order_by` int(11) DEFAULT '0' COMMENT '内容模板排序',
`status` int(4) DEFAULT '1' COMMENT '1 正常,2 删除',
`create_time` bigint(13) unsigned NOT NULL DEFAULT '0' COMMENT '创建时间',
`update_time` bigint(13) unsigned DEFAULT '0' COMMENT '更新时间',
PRIMARY KEY (`id`),
KEY `article_index` (`article_id`,`status`),
KEY `type_index` (`article_id`,`template_key`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
3. 用户文章标签表
用户发布内容时给文章打的标签,一篇文章可关联多个标签
CREATE TABLE `grass_article_label` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`label_id` int(11) NOT NULL COMMENT '标签id',
`article_id` int(11) NOT NULL COMMENT '文章id',
`auth_status` int(11) DEFAULT '0' COMMENT '0 未审核,1 审核通过,2 审核未通过,3 删除',
`create_time` bigint(13) DEFAULT NULL COMMENT '创建时间',
PRIMARY KEY (`id`),
UNIQUE KEY `UK_KEY` (`label_id`,`article_id`),
KEY `IDX_article_id` (`article_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
4. 用户文章关联商品表
用户发布内容时给文章关联的商品,一篇文章可关联多个商品
CREATE TABLE `grass_article_product` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`article_id` int(11) NOT NULL COMMENT '文章id',
`product_skn` int(11) NOT NULL COMMENT '商品skn',
`order_by` int(11) DEFAULT '0' COMMENT '排序',
`status` int(11) DEFAULT '1' COMMENT '1 正常,2 删除',
`create_time` bigint(13) unsigned NOT NULL DEFAULT '0',
`update_time` bigint(13) unsigned DEFAULT '0',
`product_source` int(11) DEFAULT '1' COMMENT '商品来源类型 1:有货商品 2:ufo商品',
PRIMARY KEY (`id`),
KEY `skn_index` (`product_skn`,`status`),
KEY `article_index` (`article_id`,`status`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
5. 文章评论表
用户文章评论及评论回复表, 支持无限级回复
CREATE TABLE `grass_article_comment` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '唯一标识',
`uid` int(11) unsigned DEFAULT NULL COMMENT '评论者uid',
`dest_id` int(11) unsigned DEFAULT NULL COMMENT '文章id',
`article_type` tinyint(1) unsigned DEFAULT NULL COMMENT '1、用户发布 2、guang文章同步 3、mars文章同步 4、晒单文章同步',
`content` text COMMENT '内容',
`root_id` int(11) unsigned DEFAULT NULL COMMENT '根评论id',
`parent_id` int(11) unsigned DEFAULT NULL COMMENT '评论父id',
`relate_id` int(11) unsigned DEFAULT NULL COMMENT '同步评论id(保留字段,同步可能用到)',
`relate_parent_id` int(11) unsigned DEFAULT NULL COMMENT '同步父评论(保留字段,同步可能用到)',
`praise_total` int(11) unsigned DEFAULT '0' COMMENT '点赞总数',
`status` tinyint(1) unsigned DEFAULT NULL COMMENT '审核状态(0 待审核,1通过,2未通过)',
`reviewer_id` int(11) unsigned DEFAULT NULL COMMENT '审核者id',
`column_type` int(11) unsigned DEFAULT NULL COMMENT '栏目(1001:文章,1002:晒单,1003:潮物)',
`create_time` int(11) unsigned DEFAULT NULL COMMENT '创建时间',
`update_time` int(11) DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`),
UNIQUE KEY `uq_grassarticlecomment_relateId_columntype` (`relate_id`,`column_type`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
6. 用户评论点赞表
用户对文章的评论点赞信息
CREATE TABLE `grass_comment_praise` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '唯一标识',
`comment_id` int(11) unsigned DEFAULT NULL COMMENT '评论id',
`uid` int(11) unsigned DEFAULT NULL COMMENT '点赞者uid',
`create_time` int(11) unsigned DEFAULT NULL COMMENT '点赞时间',
`update_time` int(11) unsigned DEFAULT NULL COMMENT '更新时间',
`status` tinyint(1) unsigned DEFAULT NULL COMMENT '状态(0:已点赞,1:已取消)',
PRIMARY KEY (`id`),
UNIQUE KEY `uq_uid_commentid` (`uid`,`comment_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
7. 文章话题表
话题表支持聚合不同标签分组下的标签
CREATE TABLE `grass_topic` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`topic_name` varchar(255) NOT NULL COMMENT '话题名称',
`topic_desc` varchar(255) NOT NULL COMMENT '简介',
`topic_image_url` varchar(255) DEFAULT NULL COMMENT '话题封面图',
`related_labels` varchar(255) DEFAULT NULL COMMENT '关联标签',
`article_amount` int(11) NOT NULL DEFAULT '0' COMMENT '文章数量',
`att_amount` int(11) NOT NULL DEFAULT '0' COMMENT '关注人数',
`status` int(11) NOT NULL DEFAULT '1' COMMENT '状态,0-下架,1进行中',
`create_time` int(11) DEFAULT NULL,
`update_time` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
8. 标签分组表
CREATE TABLE `grass_label_group` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`group_name` varchar(30) NOT NULL COMMENT '标签分组名称',
`label_amount` int(11) DEFAULT '0' COMMENT '所属标签数量',
`status` int(11) DEFAULT '1' COMMENT '1开启,0关闭',
`create_time` int(11) DEFAULT NULL,
`update_time` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `group_name` (`group_name`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
9. 文章标签表
CREATE TABLE `grass_label` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`label_name` varchar(80) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '标签名称',
`group_id` int(11) DEFAULT NULL COMMENT '所属分组id',
`status` int(11) DEFAULT '1' COMMENT '1开启,0关闭',
`visible_status` int(255) DEFAULT '1' COMMENT '1--对用户可见;0不可见(默认对用户是可见的)',
`create_time` int(11) DEFAULT NULL,
`update_time` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `label_name` (`label_name`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
10. 用户个人主页表
用户个人主页表主要记录用户的类型、状态、关注数、粉丝数、获赞与收藏数
CREATE TABLE `grass_user_achieve` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`uid` int(11) DEFAULT NULL,
`att_count` int(11) DEFAULT '0' COMMENT '关注数量',
`fans_count` int(11) DEFAULT '0' COMMENT '粉丝数',
`praise_amount` int(11) DEFAULT '0' COMMENT '获赞总数',
`favorite_amount` int(11) DEFAULT '0' COMMENT '收藏总数',
`signature` varchar(255) DEFAULT NULL COMMENT '种草用户签名',
`user_type` int(11) DEFAULT '1' COMMENT '用户类型,1 普通用户、2平台小编',
`is_forbidden` int(11) DEFAULT '1' COMMENT '用户类型,1 未被禁言、2被禁言',
`init_flag` int(11) DEFAULT '0' COMMENT '0:正常用户 1:逛小编初始化的uid',
`author_id` int(11) DEFAULT NULL COMMENT '逛小编初始化uid时对应的authorid',
`create_time` int(11) DEFAULT NULL,
`update_time` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `uid_type` (`uid`,`user_type`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
11. 用户关注表
记录用户关注其他用户或话题
CREATE TABLE `grass_user_attention` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`uid` int(10) unsigned NOT NULL,
`topic_id` int(11) DEFAULT NULL COMMENT '话题id',
`follow_uid` int(11) DEFAULT NULL COMMENT '作者uid',
`status` int(11) DEFAULT NULL COMMENT '0 关注,1 取消',
`attention_type` int(11) DEFAULT NULL COMMENT '关注类型0 话题,1 用户',
`author_type` tinyint(1) unsigned DEFAULT NULL COMMENT '作者uid类型 1:有货uid 2:逛小编authorId',
`create_time` int(10) unsigned DEFAULT '0',
`update_time` int(10) unsigned DEFAULT '0',
PRIMARY KEY (`id`),
UNIQUE KEY `uid_topic` (`uid`,`topic_id`),
UNIQUE KEY `uid_followuid_authortype` (`uid`,`follow_uid`,`author_type`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
12. 用户点赞表
用户对文章的点赞信息
CREATE TABLE `grass_article_praise` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '唯一标识',
`article_id` int(11) unsigned DEFAULT NULL COMMENT '文章id',
`uid` int(11) unsigned DEFAULT NULL COMMENT '点赞者uid',
`create_time` int(11) unsigned DEFAULT NULL COMMENT '创建时间',
`update_time` int(11) unsigned DEFAULT NULL COMMENT '更新时间',
`status` tinyint(1) unsigned DEFAULT NULL COMMENT '状态(0:已点赞,1:已取消)',
PRIMARY KEY (`id`),
UNIQUE KEY `uq_udid_articleid` (`uid`,`article_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
13. 用户收藏表
用户收藏的文章
CREATE TABLE `user_favorite_article` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '唯一标识',
`uid` int(11) unsigned DEFAULT NULL COMMENT '收藏者uid',
`article_id` int(11) unsigned DEFAULT NULL COMMENT '文章id',
`create_time` int(11) unsigned DEFAULT NULL COMMENT '创建时间',
`update_time` int(11) unsigned DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`),
UNIQUE KEY `ufa_uq_uid_articleid` (`uid`,`article_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
14. 虚拟用户表
虚拟用户表用于标记马甲用户,用于后台发布文章
CREATE TABLE `grass_virtual_user` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`uid` int(10) unsigned NOT NULL COMMENT '有货uid',
`status` int(11) DEFAULT NULL COMMENT '1 正常,2 删除',
`create_time` int(10) unsigned DEFAULT '0',
`update_time` int(10) unsigned DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;