-- tamp_community.black_list definition

CREATE TABLE `black_list` (
                              `id` bigint(32) NOT NULL AUTO_INCREMENT COMMENT 'id',
                              `blocker` varchar(64) NOT NULL COMMENT '屏蔽发起人',
                              `blocked_type` int(4) NOT NULL COMMENT '屏蔽类型，1：用户，2：内容',
                              `blocked_id` varchar(64) NOT NULL COMMENT '被屏蔽的',
                              `create_by` varchar(64) DEFAULT '',
                              `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
                              `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
                              `delete_tag` int(3) NOT NULL DEFAULT '0',
                              PRIMARY KEY (`id`),
                              KEY `uk_blocker` (`blocker`),
                              KEY `uk_blocked` (`blocked_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='黑名单';


-- tamp_community.collection definition

CREATE TABLE `collection` (
                              `id` varchar(64) NOT NULL COMMENT 'id',
                              `collection_type` int(4) NOT NULL COMMENT '类型 1:点赞主题，2：收藏主题 3、点赞评论',
                              `user_id` varchar(64) NOT NULL COMMENT '用户id',
                              `target_id` varchar(64) NOT NULL COMMENT '目标id',
                              `collection_time` datetime DEFAULT NULL COMMENT '收藏时间',
                              `uncollection_time` datetime DEFAULT NULL COMMENT '取消收藏时间',
                              `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
                              `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
                              `delete_tag` int(3) NOT NULL DEFAULT '0',
                              PRIMARY KEY (`id`),
                              KEY `idx_target_id_and_type` (`target_id`,`collection_time`) USING BTREE,
                              KEY `idx_create_time` (`create_time`) USING BTREE,
                              KEY `idx_user_type` (`user_id`,`collection_type`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='收藏/点赞';


-- tamp_community.comment definition

CREATE TABLE `comment` (
                           `id` bigint(32) NOT NULL AUTO_INCREMENT COMMENT 'id',
                           `comment_id` varchar(64) NOT NULL COMMENT '评论主键Id',
                           `comment_type` int(4) NOT NULL COMMENT '类型 1：评论',
                           `content` varchar(1024) NOT NULL DEFAULT '' COMMENT '文本内容',
                           `author_id` varchar(64) NOT NULL COMMENT '作者id',
                           `theme_id` varchar(64) NOT NULL COMMENT '主题id',
                           `parent_id` varchar(64) NOT NULL DEFAULT '' COMMENT '一级评论id',
                           `reply_id` varchar(64) NOT NULL DEFAULT '' COMMENT '回复评论id',
                           `review_status` int(4) NOT NULL DEFAULT '0' COMMENT '审核状态 0：初始值  1：已通过（管理后台使用）',
                           `report_status` int(4) NOT NULL DEFAULT '0' COMMENT '举报状态 0：未被举报  1:被举报 2：已处理',
                           `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
                           `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
                           `delete_tag` int(3) NOT NULL DEFAULT '0',
                           PRIMARY KEY (`id`),
                           UNIQUE KEY `uk_comment` (`comment_id`) USING BTREE,
                           KEY `idx_author` (`author_id`) USING BTREE,
                           KEY `idx_target` (`reply_id`) USING BTREE,
                           KEY `idx_theme` (`theme_id`)
) ENGINE=InnoDB AUTO_INCREMENT=153 DEFAULT CHARSET=utf8mb4 COMMENT='评论';


-- tamp_community.file_record definition

CREATE TABLE `file_record` (
                               `id` bigint(32) NOT NULL AUTO_INCREMENT COMMENT 'id',
                               `file_id` varchar(64) NOT NULL COMMENT '文件主键Id',
                               `file_type` int(4) NOT NULL COMMENT '类型：1：图片',
                               `file_name` varchar(64) NOT NULL COMMENT '文件名称',
                               `file_oss_key` varchar(64) NOT NULL COMMENT '阿里云key',
                               `preview_url` varchar(512) NOT NULL DEFAULT '' COMMENT '预签名预览url',
                               `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
                               `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
                               `delete_tag` int(3) NOT NULL DEFAULT '0',
                               `ext_info` varchar(100) DEFAULT NULL,
                               PRIMARY KEY (`id`),
                               UNIQUE KEY `uk_logic` (`file_oss_key`) USING BTREE,
                               KEY `idx_file` (`file_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='上传文件';


-- tamp_community.follow_rel definition

CREATE TABLE `follow_rel` (
                              `id` bigint(32) NOT NULL AUTO_INCREMENT COMMENT 'id',
                              `idol_id` varchar(64) NOT NULL COMMENT '被关注的人id',
                              `fans_id` varchar(64) NOT NULL COMMENT '粉丝id',
                              `follow_time` datetime DEFAULT NULL COMMENT '关注时间',
                              `unfollow_time` datetime DEFAULT NULL COMMENT '取消关注时间',
                              `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
                              `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
                              `delete_tag` int(3) NOT NULL DEFAULT '0',
                              PRIMARY KEY (`id`),
                              UNIQUE KEY `uk_idol_follower` (`idol_id`,`fans_id`),
                              KEY `idx_follower` (`fans_id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8mb4 COMMENT='粉丝关系';



-- tamp_community.rank_log definition

CREATE TABLE `rank_log` (
                            `id` bigint(32) NOT NULL AUTO_INCREMENT COMMENT 'id',
                            `type` int(4) NOT NULL COMMENT '1:话题 2：主题',
                            `total_count` int(11) NOT NULL COMMENT '总排序数量',
                            `page_number` int(11) NOT NULL COMMENT '页码',
                            `page_size` int(11) NOT NULL COMMENT '页面大小',
                            `content` text COMMENT '排序内容',
                            `rank_cost` bigint(20) NOT NULL DEFAULT '0' COMMENT '花费间隔，单位毫秒',
                            `rank_time` datetime DEFAULT NULL COMMENT '排序时间',
                            `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
                            `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
                            `delete_tag` int(3) NOT NULL DEFAULT '0',
                            PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='话题排序日志记录’';


-- tamp_community.report_log definition

CREATE TABLE `report_log` (
                              `id` bigint(32) NOT NULL AUTO_INCREMENT COMMENT 'id',
                              `user_id` varchar(64) NOT NULL COMMENT '举报发起人',
                              `report_type` int(4) NOT NULL COMMENT '举报类型，1：主题，2：评论 3、用户',
                              `target_id` varchar(64) NOT NULL COMMENT '举报对象id',
                              `target_user_id` varchar(64) NOT NULL COMMENT '举报对象作者id',
                              `report_reason` varchar(64) NOT NULL DEFAULT '' COMMENT '举报理由',
                              `report_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '上报时间',
                              `review_result` int(4) DEFAULT NULL COMMENT '处理结果 0：无操作 1：屏蔽 2：删除 ',
                              `review_user_id` varchar(64) NOT NULL DEFAULT '' COMMENT '处理管理员',
                              `review_time` datetime DEFAULT NULL COMMENT '处理时间',
                              `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
                              `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
                              `delete_tag` int(3) NOT NULL DEFAULT '0',
                              PRIMARY KEY (`id`),
                              KEY `uk_user` (`user_id`),
                              KEY `uk_report_target_id` (`target_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='举报记录';


-- tamp_community.theme definition

CREATE TABLE `theme` (
                         `id` bigint(32) NOT NULL AUTO_INCREMENT COMMENT 'id',
                         `theme_id` varchar(64) NOT NULL COMMENT '主题主键Id',
                         `title` varchar(128) NOT NULL DEFAULT '' COMMENT '标题',
                         `theme_type` int(4) NOT NULL COMMENT '类型 1：讨论无标题 2：长文有标题 3:转发',
                         `content` longtext COMMENT '文本内容(json)，type：附件类型（108：文本，88:产品 3：直播 6：短视频 303：新版课程-视频，304: 新版课程-音频，109：单图（长文） 110：多图（讨论）），productType：基金类型（0 公募，1 私募，2 白名单，3 私有）',
                         `author_id` varchar(64) NOT NULL COMMENT '作者id',
                         `former_theme_id` varchar(64) DEFAULT NULL COMMENT '转发的主题',
                         `topic_id` varchar(64) DEFAULT NULL COMMENT '所属的话题',
                         `review_status` int(4) NOT NULL DEFAULT '0' COMMENT '审核状态 0：未审核  1：审核通过（管理后台使用）',
                         `report_status` int(4) NOT NULL DEFAULT '0' COMMENT '举报状态 0：未被举报  1:被举报 2：已处理',
                         `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
                         `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
                         `delete_tag` int(3) NOT NULL DEFAULT '0' COMMENT '1：删除',
                         PRIMARY KEY (`id`),
                         KEY `idx_author` (`author_id`),
                         KEY `idx_former` (`former_theme_id`),
                         KEY `idx_create_time` (`create_time`) USING BTREE,
                         KEY `idx_topic_id_create_time` (`topic_id`,`create_time`) USING BTREE,
                         KEY `idx_theme_id_createTime` (`theme_id`,`create_time`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='主题内容';


-- tamp_community.theme_attachment definition

CREATE TABLE `theme_attachment` (
                                    `id` varchar(64) NOT NULL COMMENT 'id',
                                    `theme_id` varchar(64) NOT NULL COMMENT '主题ID',
                                    `attach_type` int(4) NOT NULL COMMENT '附件类型：108：文本，88:产品 3：直播 6：短视频 303：新版课程-视频，304: 新版课程-音频，109：单图（长文） 110：多图（讨论））',
                                    `attach_id` varchar(64) NOT NULL COMMENT '附件对应的ID',
                                    `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
                                    `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
                                    `delete_tag` int(3) NOT NULL DEFAULT '0',
                                    `ext_info` varchar(128) NOT NULL DEFAULT '',
                                    PRIMARY KEY (`id`),
                                    KEY `theme_id` (`theme_id`) USING BTREE,
                                    KEY `uk_attach_type` (`attach_id`,`attach_type`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='主题附件';


-- tamp_community.topic definition

CREATE TABLE `topic` (
                         `id` bigint(32) NOT NULL AUTO_INCREMENT COMMENT 'id',
                         `topic_id` varchar(64) NOT NULL COMMENT '话题主键Id',
                         `topic_title` varchar(64) NOT NULL COMMENT '话题名称',
                         `is_top` int(4) NOT NULL DEFAULT '0' COMMENT '是否置顶',
                         `is_conceal` int(4) NOT NULL DEFAULT '0' COMMENT '是否隐藏',
                         `view_cnt_adjust` int(11) NOT NULL DEFAULT '0' COMMENT '浏览量调整基数',
                         `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
                         `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
                         `delete_tag` int(3) NOT NULL DEFAULT '0',
                         PRIMARY KEY (`id`),
                         UNIQUE KEY `uk_title` (`topic_title`),
                         UNIQUE KEY `uk_topicId` (`topic_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='话题';


-- tamp_community.user_visit_statistics definition

CREATE TABLE `user_visit_statistics` (
                                         `id` bigint(32) unsigned NOT NULL AUTO_INCREMENT,
                                         `visitor_id` varchar(64) DEFAULT NULL,
                                         `ref_id` varchar(64) DEFAULT NULL,
                                         `ref_type` int(8) DEFAULT NULL,
                                         `total_duration` bigint(20) DEFAULT NULL,
                                         `first_visit_time` datetime DEFAULT NULL,
                                         `last_visit_time` datetime DEFAULT NULL,
                                         `total_visit` int(16) DEFAULT NULL,
                                         PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;


-- tamp_community.visit_log definition

CREATE TABLE `visit_log` (
                             `id` bigint(32) NOT NULL COMMENT 'id',
                             `ident` varchar(64) NOT NULL DEFAULT '' COMMENT 'session_id',
                             `visitor_id` varchar(64) NOT NULL DEFAULT '' COMMENT '浏览者id',
                             `author_id` varchar(64) NOT NULL DEFAULT '' COMMENT '作者id',
                             `ref_id` varchar(64) NOT NULL DEFAULT '' COMMENT '关联目标ID',
                             `ref_type` varchar(16) NOT NULL DEFAULT '' COMMENT '关联目标类型 ：p13508:进入话题页 p13503:进入主题正文 3、用户查看首页-关注',
                             `duration` int(16) NOT NULL DEFAULT '0' COMMENT '浏览时间 单位秒',
                             `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
                             `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
                             `delete_tag` int(3) NOT NULL DEFAULT '0',
                             PRIMARY KEY (`id`),
                             KEY `idx_session` (`ident`) USING BTREE,
                             KEY `idx_visitor` (`visitor_id`) USING BTREE,
                             KEY `idx_author` (`author_id`) USING BTREE,
                             KEY `idx_ref_id_and_type` (`ref_id`,`ref_type`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='浏览记录';


-- tamp_community.worker_node definition

CREATE TABLE `worker_node` (
                               `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'auto increment id',
                               `host_name` varchar(64) NOT NULL COMMENT 'host name',
                               `port` varchar(64) NOT NULL COMMENT 'port',
                               `type` varchar(32) NOT NULL COMMENT 'node type: realhost or container',
                               `launch_date` date NOT NULL COMMENT 'launch date',
                               `created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 'created time',
                               `modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'modified time',
                               PRIMARY KEY (`id`),
                               UNIQUE KEY `idx_host_name_port` (`host_name`,`port`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='分布式唯一ID生成，DB WorkerID Assigner for UID Generator';