-- 实战业务培训(科技平台与服务) -- 业务说明见 doc/科技平台与服务/实战业务培训/实战业务培训技术方案.md CREATE TABLE IF NOT EXISTS `biz_practical_training` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `training_topic` varchar(64) NOT NULL COMMENT '培训主题', `training_time` datetime NOT NULL COMMENT '培训时间', `training_intro` varchar(500) NOT NULL COMMENT '培训简介', `planned_head_count` int(11) NOT NULL COMMENT '计划人数', `training_location` varchar(200) NOT NULL COMMENT '培训地点', `expected_outcome` text COMMENT '预期成果', `registration_start_time` datetime NOT NULL COMMENT '报名开始时间', `registration_end_time` datetime NOT NULL COMMENT '报名截止时间', `cover_file_url` varchar(512) DEFAULT NULL COMMENT '封面URL', `cover_file_path` varchar(512) DEFAULT NULL COMMENT '封面存储路径', `actual_enrolled_count` int(11) NOT NULL DEFAULT '0' COMMENT '实际报名人数', `training_status` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '006001' COMMENT '培训状态(006001未开始 006002报名中 006003已报满 006004已截止)', `publish_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '0未发布 1已发布', `publish_time` datetime DEFAULT NULL COMMENT '发布时间', `offline_time` datetime DEFAULT NULL COMMENT '下架时间', `del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '0存在 2删除', `create_by` varchar(64) DEFAULT '' COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` varchar(64) DEFAULT '' COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`), KEY `idx_training_time` (`training_time`), KEY `idx_training_topic` (`training_topic`), KEY `idx_publish` (`publish_status`), KEY `idx_reg_start` (`registration_start_time`), KEY `idx_del_flag` (`del_flag`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='实战业务培训'; -- --------------------------------------------------------------------------- -- 报名成员子表(一场培训下多名报名人;有效报名计入主表 actual_enrolled_count) -- --------------------------------------------------------------------------- CREATE TABLE IF NOT EXISTS `biz_practical_training_member` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `training_id` bigint(20) NOT NULL COMMENT '培训主表ID,关联 biz_practical_training.id', `member_name` varchar(32) NOT NULL COMMENT '成员姓名', `sys_user_id` bigint(20) DEFAULT NULL COMMENT '移动端报名用户ID,关联 sys_user.user_id', `enroll_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '报名状态:0已报名 1已取消', `enroll_time` datetime NOT NULL COMMENT '报名时间', `cancel_time` datetime DEFAULT NULL COMMENT '取消报名时间', `del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '0存在 2删除', `create_by` varchar(64) DEFAULT '' COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` varchar(64) DEFAULT '' COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`), KEY `idx_training_id` (`training_id`), KEY `idx_training_enroll` (`training_id`, `enroll_status`), KEY `idx_sys_user_id` (`sys_user_id`), UNIQUE KEY `uk_training_user` (`training_id`, `sys_user_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='实战业务培训报名成员';