feat: 完成分析结果下载功能实现

- 新增DownloadButton组件,支持Markdown、PDF、PNG三种格式下载
- 实现后端下载API接口(/api/download)
- 添加Markdown、PDF、PNG三种格式生成器
- 集成下载按钮到所有分析结果页面
- 修复API路径配置问题,确保开发环境正确访问后端
- 添加下载历史记录功能和数据库表结构
- 完善错误处理和用户反馈机制
This commit is contained in:
patdelphi
2025-08-21 12:44:40 +08:00
parent 5801d6a9ee
commit 9231651ae1
12 changed files with 2666 additions and 2 deletions

View File

@@ -45,6 +45,18 @@ CREATE TABLE IF NOT EXISTS numerology_readings (
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE
);
-- 下载历史表
CREATE TABLE IF NOT EXISTS download_history (
id INTEGER PRIMARY KEY AUTOINCREMENT,
user_id INTEGER NOT NULL,
analysis_type TEXT NOT NULL CHECK (analysis_type IN ('bazi', 'ziwei', 'yijing')),
format TEXT NOT NULL CHECK (format IN ('markdown', 'pdf', 'png')),
filename TEXT NOT NULL,
file_size INTEGER,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE
);
-- 会话表 (用于JWT token管理)
CREATE TABLE IF NOT EXISTS user_sessions (
id INTEGER PRIMARY KEY AUTOINCREMENT,