| | |
| | | COMMIT; |
| | | |
| | | -- ---------------------------- |
| | | -- Table structure for tcm_health_course_download_record |
| | | -- ---------------------------- |
| | | DROP TABLE IF EXISTS `tcm_health_course_download_record`; |
| | | CREATE TABLE `tcm_health_course_download_record` ( |
| | | `id` bigint unsigned NOT NULL AUTO_INCREMENT, |
| | | `app_user_id` bigint unsigned NOT NULL COMMENT '用户ID', |
| | | `course_id` bigint unsigned NOT NULL COMMENT '养生课程ID', |
| | | `course_video_id` bigint unsigned NOT NULL COMMENT '视频小节ID', |
| | | `course_title_snapshot` varchar(128) NOT NULL DEFAULT '' COMMENT '课程标题快照', |
| | | `chapter_name_snapshot` varchar(128) NOT NULL DEFAULT '' COMMENT '章节标题快照', |
| | | `cover_img_snapshot` varchar(255) NOT NULL DEFAULT '' COMMENT '封面图快照', |
| | | `video_url_snapshot` varchar(512) NOT NULL DEFAULT '' COMMENT '视频地址快照', |
| | | `duration_seconds_snapshot` int NOT NULL DEFAULT '0' COMMENT '视频时长快照(秒)', |
| | | `deleted` tinyint(1) NOT NULL DEFAULT '0', |
| | | `created_by` varchar(64) NOT NULL DEFAULT '系统初始化' COMMENT '创建人', |
| | | `updated_by` varchar(64) NOT NULL DEFAULT '系统初始化' COMMENT '更新人', |
| | | `created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP, |
| | | `updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, |
| | | PRIMARY KEY (`id`), |
| | | KEY `idx_health_course_download_user_deleted_created` (`app_user_id`,`deleted`,`created_at`), |
| | | KEY `idx_health_course_download_user_video_deleted` (`app_user_id`,`course_video_id`,`deleted`) |
| | | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='养生课程下载记录表'; |
| | | |
| | | -- ---------------------------- |
| | | -- Table structure for tcm_health_course_favorite_record |
| | | -- ---------------------------- |
| | | DROP TABLE IF EXISTS `tcm_health_course_favorite_record`; |
| | |
| | | `play_end` datetime DEFAULT NULL COMMENT '结束播放时间', |
| | | `duration_seconds` int NOT NULL DEFAULT '0' COMMENT '累计播放时长(秒)', |
| | | `is_completed` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否完播:1是 0否', |
| | | `last_play_position_seconds` int NOT NULL DEFAULT '0' COMMENT '本次结束时播放位置(秒)', |
| | | PRIMARY KEY (`id`), |
| | | KEY `idx_health_course_play_course` (`course_id`), |
| | | KEY `idx_health_course_play_video` (`video_id`), |
| | |
| | | -- Records of tcm_health_course_play_record |
| | | -- ---------------------------- |
| | | BEGIN; |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5101, 1, 1, 200, '2026-03-20 10:00:00', '2026-03-20 10:18:00', 1080, 1); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5102, 1, 2, 200, '2026-03-20 15:10:00', '2026-03-20 15:18:00', 480, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5103, 1, 1, 200, '2026-03-21 10:02:00', '2026-03-21 10:20:00', 1080, 1); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5104, 1, 3, 200, '2026-03-21 14:30:00', '2026-03-21 14:38:00', 480, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5105, 1, 1, 200, '2026-03-22 09:55:00', '2026-03-22 10:13:00', 1080, 1); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5106, 1, 2, 200, '2026-03-22 13:20:00', '2026-03-22 13:28:00', 480, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5107, 1, 3, 200, '2026-03-22 19:10:00', '2026-03-22 19:18:00', 480, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5108, 1, 1, 200, '2026-03-23 10:05:00', '2026-03-23 10:23:00', 1080, 1); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5109, 1, 2, 200, '2026-03-23 12:40:00', '2026-03-23 12:48:00', 480, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5110, 1, 3, 200, '2026-03-23 18:25:00', '2026-03-23 18:33:00', 480, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5111, 1, 1, 200, '2026-03-24 10:08:00', '2026-03-24 10:26:00', 1080, 1); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5112, 1, 2, 200, '2026-03-24 13:10:00', '2026-03-24 13:18:00', 480, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5113, 1, 3, 200, '2026-03-24 18:00:00', '2026-03-24 18:08:00', 480, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5114, 1, 1, 200, '2026-03-24 20:10:00', '2026-03-24 20:18:00', 480, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5115, 1, 1, 200, '2026-03-25 09:58:00', '2026-03-25 10:16:00', 1080, 1); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5116, 1, 2, 200, '2026-03-25 12:20:00', '2026-03-25 12:28:00', 480, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5117, 1, 3, 200, '2026-03-25 17:42:00', '2026-03-25 17:50:00', 480, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5118, 1, 2, 200, '2026-03-25 21:00:00', '2026-03-25 21:08:00', 480, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5119, 1, 1, 200, '2026-03-26 09:50:00', '2026-03-26 10:08:00', 1080, 1); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5120, 1, 2, 200, '2026-03-26 12:15:00', '2026-03-26 12:23:00', 480, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5121, 1, 3, 200, '2026-03-26 15:30:00', '2026-03-26 15:38:00', 480, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5122, 1, 1, 200, '2026-03-26 18:20:00', '2026-03-26 18:28:00', 480, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`) VALUES (5123, 1, 2, 200, '2026-03-26 21:10:00', '2026-03-26 21:18:00', 480, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5101, 1, 1, 200, '2026-03-20 10:00:00', '2026-03-20 10:18:00', 1080, 1, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5102, 1, 2, 200, '2026-03-20 15:10:00', '2026-03-20 15:18:00', 480, 0, 480); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5103, 1, 1, 200, '2026-03-21 10:02:00', '2026-03-21 10:20:00', 1080, 1, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5104, 1, 3, 200, '2026-03-21 14:30:00', '2026-03-21 14:38:00', 480, 0, 480); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5105, 1, 1, 200, '2026-03-22 09:55:00', '2026-03-22 10:13:00', 1080, 1, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5106, 1, 2, 200, '2026-03-22 13:20:00', '2026-03-22 13:28:00', 480, 0, 480); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5107, 1, 3, 200, '2026-03-22 19:10:00', '2026-03-22 19:18:00', 480, 0, 480); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5108, 1, 1, 200, '2026-03-23 10:05:00', '2026-03-23 10:23:00', 1080, 1, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5109, 1, 2, 200, '2026-03-23 12:40:00', '2026-03-23 12:48:00', 480, 0, 480); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5110, 1, 3, 200, '2026-03-23 18:25:00', '2026-03-23 18:33:00', 480, 0, 480); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5111, 1, 1, 200, '2026-03-24 10:08:00', '2026-03-24 10:26:00', 1080, 1, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5112, 1, 2, 200, '2026-03-24 13:10:00', '2026-03-24 13:18:00', 480, 0, 480); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5113, 1, 3, 200, '2026-03-24 18:00:00', '2026-03-24 18:08:00', 480, 0, 480); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5114, 1, 1, 200, '2026-03-24 20:10:00', '2026-03-24 20:18:00', 480, 0, 480); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5115, 1, 1, 200, '2026-03-25 09:58:00', '2026-03-25 10:16:00', 1080, 1, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5116, 1, 2, 200, '2026-03-25 12:20:00', '2026-03-25 12:28:00', 480, 0, 480); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5117, 1, 3, 200, '2026-03-25 17:42:00', '2026-03-25 17:50:00', 480, 0, 480); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5118, 1, 2, 200, '2026-03-25 21:00:00', '2026-03-25 21:08:00', 480, 0, 480); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5119, 1, 1, 200, '2026-03-26 09:50:00', '2026-03-26 10:08:00', 1080, 1, 0); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5120, 1, 2, 200, '2026-03-26 12:15:00', '2026-03-26 12:23:00', 480, 0, 480); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5121, 1, 3, 200, '2026-03-26 15:30:00', '2026-03-26 15:38:00', 480, 0, 480); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5122, 1, 1, 200, '2026-03-26 18:20:00', '2026-03-26 18:28:00', 480, 0, 480); |
| | | INSERT INTO `tcm_health_course_play_record` (`id`, `course_id`, `video_id`, `app_user_id`, `play_start`, `play_end`, `duration_seconds`, `is_completed`, `last_play_position_seconds`) VALUES (5123, 1, 2, 200, '2026-03-26 21:10:00', '2026-03-26 21:18:00', 480, 0, 480); |
| | | COMMIT; |
| | | |
| | | -- ---------------------------- |