"""迁移 016: 创建 insurance_ppt_sessions 表。""" import logging logger = logging.getLogger(__name__) def migrate(): """迁移入口。""" from insurance.db.compat import db from sqlalchemy import text dialect = db.engine.dialect.name is_postgres = dialect == 'postgresql' if is_postgres: sql = """ CREATE TABLE IF NOT EXISTS insurance_ppt_sessions ( id VARCHAR(36) PRIMARY KEY, user_id VARCHAR(64) NOT NULL, status VARCHAR(20) DEFAULT 'created' NOT NULL, files_json TEXT, extractions_json TEXT, chat_history_json TEXT, ppt_path VARCHAR(500), markdown_path VARCHAR(500), preview_paths_json TEXT, preview_pdf_path VARCHAR(500), slide_count INTEGER, created_at TIMESTAMP DEFAULT NOW(), updated_at TIMESTAMP DEFAULT NOW() ) """ else: sql = """ CREATE TABLE IF NOT EXISTS insurance_ppt_sessions ( id VARCHAR(36) PRIMARY KEY, user_id VARCHAR(64) NOT NULL, status VARCHAR(20) DEFAULT 'created' NOT NULL, files_json TEXT, extractions_json TEXT, chat_history_json TEXT, ppt_path VARCHAR(500), markdown_path VARCHAR(500), preview_paths_json TEXT, preview_pdf_path VARCHAR(500), slide_count INTEGER, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ) """ logger.info("[migrate_016] 创建 insurance_ppt_sessions 表 ...") db.session.execute(text(sql)) db.session.commit() logger.info("[migrate_016] insurance_ppt_sessions 表创建完成")