51 lines
2.1 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

-- 基线迁移:为上传模板体系创建基础表,便于后续增量迁移在 shadow 数据库中正常回放
-- 使用 IF NOT EXISTS 保证在已有线上库上执行时是幂等、安全的
-- UploadTemplate:上传模板主表
CREATE TABLE IF NOT EXISTS "UploadTemplate" (
"id" TEXT NOT NULL,
"name" TEXT NOT NULL,
"description" TEXT,
"status" TEXT NOT NULL DEFAULT 'draft',
"materialType" TEXT NOT NULL DEFAULT '其他',
"materialKind" TEXT NOT NULL DEFAULT 'IMAGE',
"version" INTEGER NOT NULL DEFAULT 1,
"fieldGroups" TEXT,
"displayConfig" TEXT,
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
CONSTRAINT "UploadTemplate_pkey" PRIMARY KEY ("id")
);
-- UploadField:模板字段表
CREATE TABLE IF NOT EXISTS "UploadField" (
"id" TEXT NOT NULL,
"templateId" TEXT NOT NULL,
"key" TEXT NOT NULL,
"label" TEXT NOT NULL,
"type" TEXT NOT NULL,
"required" BOOLEAN NOT NULL DEFAULT false,
"orderIndex" INTEGER NOT NULL DEFAULT 0,
"layoutWidth" TEXT,
"validations" TEXT,
"optionsSource" TEXT,
"optionsStatic" TEXT,
"allowedExtensions" TEXT,
"visibleOnHomeFilter" BOOLEAN NOT NULL DEFAULT false,
"isSearchable" BOOLEAN NOT NULL DEFAULT false,
"isReadOnly" BOOLEAN NOT NULL DEFAULT false,
"addToCategory" BOOLEAN NOT NULL DEFAULT false,
"conditions" TEXT,
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
CONSTRAINT "UploadField_pkey" PRIMARY KEY ("id")
);
-- 关联关系:字段隶属于模板
ALTER TABLE "UploadField"
ADD CONSTRAINT "UploadField_templateId_fkey"
FOREIGN KEY ("templateId") REFERENCES "UploadTemplate"("id")
ON DELETE CASCADE ON UPDATE CASCADE;