/* eslint-disable */ /** * 初始 schema:评估记录 / 工作流状态 / 操作记录 / 盈利分析。 * 使用 IF NOT EXISTS 以与早期 initSchema 已建表的环境幂等兼容。 */ exports.up = (pgm) => { pgm.sql(` CREATE TABLE IF NOT EXISTS assessments ( id TEXT PRIMARY KEY, assessment JSONB NOT NULL, report JSONB, saved_at TIMESTAMPTZ NOT NULL ); CREATE INDEX IF NOT EXISTS idx_assessments_saved_at ON assessments(saved_at DESC); CREATE TABLE IF NOT EXISTS workflow_status ( assessment_id TEXT PRIMARY KEY, status TEXT NOT NULL, updated_at TIMESTAMPTZ NOT NULL DEFAULT now() ); CREATE TABLE IF NOT EXISTS audit_logs ( id BIGSERIAL PRIMARY KEY, assessment_id TEXT NOT NULL, role TEXT NOT NULL, username TEXT NOT NULL, action TEXT NOT NULL, comment TEXT, ts TIMESTAMPTZ NOT NULL ); CREATE INDEX IF NOT EXISTS idx_audit_assessment ON audit_logs(assessment_id); CREATE TABLE IF NOT EXISTS profitability ( assessment_id TEXT PRIMARY KEY, result JSONB NOT NULL ); `); }; exports.down = (pgm) => { pgm.sql(` DROP TABLE IF EXISTS profitability; DROP TABLE IF EXISTS audit_logs; DROP TABLE IF EXISTS workflow_status; DROP TABLE IF EXISTS assessments; `); };