种草表结构.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;