-- ****************************************************************** -- 表 kku_task_user_tasks 的创建SQL -- 对应的Model: App\Module\Task\Models\TaskUserTask -- 警告: 此文件由系统自动生成,禁止修改! -- ****************************************************************** CREATE TABLE `kku_task_user_tasks` ( `id` int NOT NULL AUTO_INCREMENT COMMENT '主键', `user_id` int NOT NULL COMMENT '用户ID', `task_id` int NOT NULL COMMENT '任务ID,外键关联task_tasks表', `status` tinyint(1) NOT NULL DEFAULT '0' COMMENT '状态(0:未接取, 1:进行中, 2:已完成, 3:已领取奖励, 4:已失败, 5:已过期)', `progress` int NOT NULL DEFAULT '0' COMMENT '当前进度', `completed_at` timestamp NULL DEFAULT NULL COMMENT '完成时间', `rewarded_at` timestamp NULL DEFAULT NULL COMMENT '奖励发放时间', `expire_at` timestamp NULL DEFAULT NULL COMMENT '过期时间', `created_at` timestamp NULL DEFAULT NULL COMMENT '创建时间', `updated_at` timestamp NULL DEFAULT NULL COMMENT '更新时间', `next_reset_time` timestamp NULL DEFAULT NULL COMMENT '下次重置时间,用于快速判断是否需要重置', `last_reset_time` timestamp NULL DEFAULT NULL COMMENT '上次重置时间,用于计算下次重置时间', `reset_count` int NOT NULL DEFAULT '0' COMMENT '重置次数,用于统计和分析', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `idx_user_task` (`user_id`,`task_id`) USING BTREE, KEY `idx_user_status` (`user_id`,`status`) USING BTREE, KEY `idx_task` (`task_id`) USING BTREE, KEY `idx_expire` (`expire_at`) USING BTREE, KEY `idx_next_reset_time` (`next_reset_time`) USING BTREE, KEY `idx_user_next_reset` (`user_id`,`next_reset_time`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='用户任务关联表';