新增普拉提训练系统的数据库结构和数据导入功能
- 创建普拉提分类和动作数据的SQL导入脚本,支持垫上普拉提和器械普拉提的分类管理 - 实现数据库结构迁移脚本,添加新字段以支持普拉提类型和器械名称 - 更新数据库升级总结文档,详细说明数据库结构变更和数据导入步骤 - 创建训练会话相关表,支持每日训练实例功能 - 引入训练会话管理模块,整合训练计划与实际训练会话的关系
This commit is contained in:
31
docs/workout-sessions-table-create.sql
Normal file
31
docs/workout-sessions-table-create.sql
Normal file
@@ -0,0 +1,31 @@
|
||||
-- 创建训练会话表
|
||||
CREATE TABLE t_workout_sessions (
|
||||
id VARCHAR(36) PRIMARY KEY DEFAULT (UUID()),
|
||||
user_id VARCHAR(255) NOT NULL COMMENT '用户ID',
|
||||
training_plan_id VARCHAR(36) NOT NULL COMMENT '关联的训练计划模板',
|
||||
name VARCHAR(255) NOT NULL COMMENT '训练会话名称',
|
||||
scheduled_date DATETIME NOT NULL COMMENT '计划训练日期',
|
||||
started_at DATETIME NULL COMMENT '实际开始时间',
|
||||
completed_at DATETIME NULL COMMENT '实际结束时间',
|
||||
status ENUM('planned', 'in_progress', 'completed', 'skipped') NOT NULL DEFAULT 'planned' COMMENT '训练状态',
|
||||
total_duration_sec INT NULL COMMENT '总时长(秒)',
|
||||
summary TEXT NULL COMMENT '训练总结/备注',
|
||||
calories_burned INT NULL COMMENT '消耗卡路里(估算)',
|
||||
stats JSON NULL COMMENT '训练统计数据',
|
||||
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
deleted BOOLEAN DEFAULT FALSE COMMENT '是否已删除',
|
||||
|
||||
-- 外键约束
|
||||
FOREIGN KEY (training_plan_id) REFERENCES t_training_plans(id),
|
||||
|
||||
-- 索引
|
||||
INDEX idx_user_id (user_id),
|
||||
INDEX idx_training_plan_id (training_plan_id),
|
||||
INDEX idx_scheduled_date (scheduled_date),
|
||||
INDEX idx_status (status),
|
||||
INDEX idx_deleted (deleted)
|
||||
);
|
||||
|
||||
-- 添加表注释
|
||||
ALTER TABLE t_workout_sessions COMMENT = '训练会话表';
|
||||
Reference in New Issue
Block a user