fix: include 0013 migration + avoid duplicate add column
Some checks failed
Lint / build (20) (push) Has been cancelled
Playwright Tests / test (push) Has been cancelled

This commit is contained in:
Your Name 2026-02-14 01:01:41 +08:00
parent 3f3523f1bb
commit fc063df878
2 changed files with 95 additions and 0 deletions

3
.gitignore vendored
View File

@ -73,3 +73,6 @@ checkpoints/
# 第三方参考源码(不提交到git)
reference-sources/
# Drizzle migrations must be versioned (override the global *.sql ignore above)
!lib/db/migrations/*.sql

View File

@ -0,0 +1,92 @@
CREATE TABLE IF NOT EXISTS "CanvasNode" (
"id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
"projectId" uuid NOT NULL,
"type" varchar(32) NOT NULL,
"position" jsonb,
"size" jsonb,
"data" jsonb,
"connections" jsonb DEFAULT '[]'::jsonb,
"parentId" uuid,
"createdAt" timestamp DEFAULT now() NOT NULL,
"updatedAt" timestamp DEFAULT now() NOT NULL
);
--> statement-breakpoint
CREATE TABLE IF NOT EXISTS "CanvasProject" (
"id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
"userId" uuid NOT NULL,
"title" varchar(256) DEFAULT '未命名画布' NOT NULL,
"description" text,
"thumbnail" text,
"canvasData" jsonb,
"createdAt" timestamp DEFAULT now() NOT NULL,
"updatedAt" timestamp DEFAULT now() NOT NULL
);
--> statement-breakpoint
CREATE TABLE IF NOT EXISTS "GeneratedImage" (
"id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
"userId" uuid NOT NULL,
"chatId" uuid,
"messageId" uuid,
"thumbnailUrl" text NOT NULL,
"originalUrl" text NOT NULL,
"imageSize" varchar(10) DEFAULT '2K',
"prompt" text,
"modelId" varchar(128),
"isFeatured" boolean DEFAULT false NOT NULL,
"featuredAt" timestamp,
"featuredBy" uuid,
"createdAt" timestamp DEFAULT now() NOT NULL
);
--> statement-breakpoint
ALTER TABLE "AiModel" ADD COLUMN IF NOT EXISTS "capabilities" jsonb;--> statement-breakpoint
ALTER TABLE "AiModel" ADD COLUMN IF NOT EXISTS "defaultParams" jsonb;--> statement-breakpoint
ALTER TABLE "AiModel" ADD COLUMN IF NOT EXISTS "is_sub_model" boolean DEFAULT false NOT NULL;--> statement-breakpoint
ALTER TABLE "AiModel" ADD COLUMN IF NOT EXISTS "parent_model_id" uuid;--> statement-breakpoint
ALTER TABLE "AiModel" ADD COLUMN IF NOT EXISTS "fallbackModelId1" varchar(128);--> statement-breakpoint
ALTER TABLE "AiModel" ADD COLUMN IF NOT EXISTS "fallbackModelId2" varchar(128);--> statement-breakpoint
ALTER TABLE "AiModel" ADD COLUMN IF NOT EXISTS "imageGenConfig" jsonb;--> statement-breakpoint
ALTER TABLE "AuthSettings" ADD COLUMN IF NOT EXISTS "dingTalkOrganizations" jsonb;--> statement-breakpoint
ALTER TABLE "Message_v2" ADD COLUMN IF NOT EXISTS "video_storage_status" varchar(20) DEFAULT 'temporary';--> statement-breakpoint
ALTER TABLE "Message_v2" ADD COLUMN IF NOT EXISTS "temporary_video_url" text;--> statement-breakpoint
ALTER TABLE "Message_v2" ADD COLUMN IF NOT EXISTS "permanent_video_url" text;--> statement-breakpoint
ALTER TABLE "Message_v2" ADD COLUMN IF NOT EXISTS "archived_at" timestamp;--> statement-breakpoint
ALTER TABLE "Message_v2" ADD COLUMN IF NOT EXISTS "video_metadata" jsonb;--> statement-breakpoint
ALTER TABLE "SiteSettings" ADD COLUMN IF NOT EXISTS "showAutoModel" boolean DEFAULT true NOT NULL;--> statement-breakpoint
ALTER TABLE "SiteSettings" ADD COLUMN IF NOT EXISTS "defaultTheme" varchar(16) DEFAULT 'system' NOT NULL;--> statement-breakpoint
ALTER TABLE "SiteSettings" ADD COLUMN IF NOT EXISTS "usageTimeEnabled" boolean DEFAULT false NOT NULL;--> statement-breakpoint
ALTER TABLE "SiteSettings" ADD COLUMN IF NOT EXISTS "usageTimeStart" varchar(5) DEFAULT '08:00';--> statement-breakpoint
ALTER TABLE "SiteSettings" ADD COLUMN IF NOT EXISTS "usageTimeEnd" varchar(5) DEFAULT '20:00';--> statement-breakpoint
ALTER TABLE "SiteSettings" ADD COLUMN IF NOT EXISTS "usageTimeMessage" text DEFAULT '由壹点累了也是需要休息的';--> statement-breakpoint
ALTER TABLE "User" ADD COLUMN IF NOT EXISTS "name" varchar(100);--> statement-breakpoint
ALTER TABLE "User" ADD COLUMN IF NOT EXISTS "department" varchar(256);--> statement-breakpoint
ALTER TABLE "User" ADD COLUMN IF NOT EXISTS "dingtalkUserId" varchar(128);--> statement-breakpoint
ALTER TABLE "User" ADD COLUMN IF NOT EXISTS "monthlyImageLimit" integer;--> statement-breakpoint
DO $$ BEGIN
ALTER TABLE "CanvasNode" ADD CONSTRAINT "CanvasNode_projectId_CanvasProject_id_fk" FOREIGN KEY ("projectId") REFERENCES "public"."CanvasProject"("id") ON DELETE cascade ON UPDATE no action;
EXCEPTION
WHEN duplicate_object THEN null;
END $$;
--> statement-breakpoint
DO $$ BEGIN
ALTER TABLE "CanvasProject" ADD CONSTRAINT "CanvasProject_userId_User_id_fk" FOREIGN KEY ("userId") REFERENCES "public"."User"("id") ON DELETE cascade ON UPDATE no action;
EXCEPTION
WHEN duplicate_object THEN null;
END $$;
--> statement-breakpoint
DO $$ BEGIN
ALTER TABLE "GeneratedImage" ADD CONSTRAINT "GeneratedImage_userId_User_id_fk" FOREIGN KEY ("userId") REFERENCES "public"."User"("id") ON DELETE no action ON UPDATE no action;
EXCEPTION
WHEN duplicate_object THEN null;
END $$;
--> statement-breakpoint
DO $$ BEGIN
ALTER TABLE "GeneratedImage" ADD CONSTRAINT "GeneratedImage_chatId_Chat_id_fk" FOREIGN KEY ("chatId") REFERENCES "public"."Chat"("id") ON DELETE cascade ON UPDATE no action;
EXCEPTION
WHEN duplicate_object THEN null;
END $$;
--> statement-breakpoint
DO $$ BEGIN
ALTER TABLE "GeneratedImage" ADD CONSTRAINT "GeneratedImage_featuredBy_User_id_fk" FOREIGN KEY ("featuredBy") REFERENCES "public"."User"("id") ON DELETE no action ON UPDATE no action;
EXCEPTION
WHEN duplicate_object THEN null;
END $$;