Initial commit: GovAI 政务AI平台

This commit is contained in:
freedakgmail
2026-06-15 23:48:37 +08:00
commit 0f490f72a9
245 changed files with 51669 additions and 0 deletions
+64
View File
@@ -0,0 +1,64 @@
-- 000006: PPT 生成任务表
CREATE TABLE ppt_tasks (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
user_id UUID NOT NULL REFERENCES users(id),
app_id UUID REFERENCES applications(id),
-- 任务输入
title VARCHAR(200) NOT NULL,
source_type VARCHAR(20) NOT NULL DEFAULT 'text'
CHECK (source_type IN ('text', 'file', 'url')),
source_content TEXT, -- 文本内容或 URL
source_file TEXT, -- 上传文件路径
-- 生成配置
config JSONB NOT NULL DEFAULT '{}',
-- config 结构:
-- {
-- "format": "ppt169", -- 画布格式
-- "page_count": 10, -- 目标页数
-- "style": "general", -- 风格: general/consultant/consultant-top
-- "color_scheme": "", -- 配色方案(可选)
-- "language": "zh", -- 语言
-- "with_images": true, -- 是否生成图片
-- "image_backend": "gpt-image-2" -- 图片生成后端
-- }
-- 任务状态
status VARCHAR(30) NOT NULL DEFAULT 'pending'
CHECK (status IN (
'pending', -- 等待处理
'processing', -- 处理中
'converting', -- 转换源文件
'designing', -- 策略师阶段
'generating_images', -- 图片生成阶段
'generating_svg', -- SVG 生成阶段
'exporting', -- 导出 PPTX 阶段
'completed', -- 完成
'failed' -- 失败
)),
progress INTEGER NOT NULL DEFAULT 0 CHECK (progress BETWEEN 0 AND 100),
status_message TEXT, -- 当前状态描述
error_message TEXT, -- 错误信息
-- 输出
output_file TEXT, -- 生成的 PPTX 文件路径
output_preview JSONB DEFAULT '[]', -- SVG 预览图路径列表
page_count INTEGER, -- 实际生成页数
project_path TEXT, -- PPT Master 项目路径
-- 时间戳
started_at TIMESTAMPTZ,
completed_at TIMESTAMPTZ,
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
);
CREATE INDEX idx_ppt_tasks_user ON ppt_tasks(user_id);
CREATE INDEX idx_ppt_tasks_status ON ppt_tasks(status);
CREATE INDEX idx_ppt_tasks_created ON ppt_tasks(created_at DESC);
CREATE TRIGGER update_ppt_tasks_updated_at
BEFORE UPDATE ON ppt_tasks
FOR EACH ROW EXECUTE FUNCTION update_updated_at_column();