项目重构: 整理目录结构, 更新前后端代码, 添加测试和数据库迁移
This commit is contained in:
@@ -115,8 +115,7 @@ CREATE TABLE IF NOT EXISTS membership_levels (
|
||||
description TEXT COMMENT '描述',
|
||||
price DECIMAL(10,2) NOT NULL DEFAULT 0 COMMENT '价格(元)',
|
||||
duration_days INT NOT NULL DEFAULT 30 COMMENT '时长(天)',
|
||||
points_bonus INT NOT NULL DEFAULT 0 COMMENT '积分奖励',
|
||||
resource_points INT NOT NULL DEFAULT 0 COMMENT '资源点数量',
|
||||
points_bonus INT NOT NULL DEFAULT 0 COMMENT '积分奖励(购买会员后获得的资源点数量)',
|
||||
features JSON COMMENT '功能特性(JSON格式)',
|
||||
is_active BOOLEAN NOT NULL DEFAULT TRUE COMMENT '是否启用',
|
||||
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
@@ -144,47 +143,10 @@ CREATE TABLE IF NOT EXISTS user_memberships (
|
||||
INDEX idx_end_date (end_date)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='用户会员信息表';
|
||||
|
||||
-- 视频生成任务表
|
||||
CREATE TABLE IF NOT EXISTS video_tasks (
|
||||
id BIGINT PRIMARY KEY AUTO_INCREMENT,
|
||||
task_id VARCHAR(100) NOT NULL UNIQUE,
|
||||
user_id BIGINT NOT NULL,
|
||||
task_type VARCHAR(50) NOT NULL COMMENT 'TEXT_TO_VIDEO, IMAGE_TO_VIDEO, STORYBOARD_VIDEO',
|
||||
title VARCHAR(200) NOT NULL,
|
||||
description TEXT,
|
||||
input_text TEXT,
|
||||
input_image_url VARCHAR(500),
|
||||
output_video_url VARCHAR(500),
|
||||
status VARCHAR(20) NOT NULL DEFAULT 'PENDING' COMMENT 'PENDING, PROCESSING, COMPLETED, FAILED',
|
||||
progress INT NOT NULL DEFAULT 0,
|
||||
error_message TEXT,
|
||||
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
completed_at TIMESTAMP NULL,
|
||||
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,
|
||||
INDEX idx_task_id (task_id),
|
||||
INDEX idx_user_id (user_id),
|
||||
INDEX idx_status (status)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='视频生成任务表';
|
||||
|
||||
-- 系统配置表
|
||||
CREATE TABLE IF NOT EXISTS system_configs (
|
||||
id BIGINT PRIMARY KEY AUTO_INCREMENT,
|
||||
config_key VARCHAR(100) NOT NULL UNIQUE,
|
||||
config_value TEXT,
|
||||
description VARCHAR(500),
|
||||
config_type VARCHAR(50) NOT NULL DEFAULT 'STRING' COMMENT 'STRING, NUMBER, BOOLEAN, JSON',
|
||||
is_public BOOLEAN NOT NULL DEFAULT FALSE,
|
||||
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_config_key (config_key)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='系统配置表';
|
||||
|
||||
-- 系统设置表(用于存储系统级别的设置)
|
||||
-- 注意:套餐价格已移至 membership_levels 表管理
|
||||
CREATE TABLE IF NOT EXISTS system_settings (
|
||||
id BIGINT PRIMARY KEY AUTO_INCREMENT,
|
||||
standard_price_cny INT NOT NULL DEFAULT 0 COMMENT '标准版价格(元)',
|
||||
pro_price_cny INT NOT NULL DEFAULT 0 COMMENT '专业版价格(元)',
|
||||
points_per_generation INT NOT NULL DEFAULT 1 COMMENT '每次生成消耗的资源点',
|
||||
site_name VARCHAR(100) NOT NULL DEFAULT 'AIGC Demo' COMMENT '站点名称',
|
||||
site_subtitle VARCHAR(150) NOT NULL DEFAULT '现代化的Spring Boot应用演示' COMMENT '站点副标题',
|
||||
@@ -192,7 +154,10 @@ CREATE TABLE IF NOT EXISTS system_settings (
|
||||
maintenance_mode BOOLEAN NOT NULL DEFAULT FALSE COMMENT '维护模式',
|
||||
enable_alipay BOOLEAN NOT NULL DEFAULT TRUE COMMENT '启用支付宝',
|
||||
enable_paypal BOOLEAN NOT NULL DEFAULT TRUE COMMENT '启用PayPal',
|
||||
contact_email VARCHAR(120) DEFAULT 'support@example.com' COMMENT '联系邮箱'
|
||||
contact_email VARCHAR(120) DEFAULT 'support@example.com' COMMENT '联系邮箱',
|
||||
prompt_optimization_model VARCHAR(50) DEFAULT 'gpt-5.1-thinking' COMMENT '优化提示词使用的模型',
|
||||
storyboard_system_prompt VARCHAR(2000) DEFAULT '' COMMENT '分镜图生成系统引导词',
|
||||
token_expire_hours INT NOT NULL DEFAULT 24 COMMENT 'Token过期时间(小时)'
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='系统设置表';
|
||||
|
||||
-- 用户活跃度统计表
|
||||
|
||||
Reference in New Issue
Block a user