93 lines
4.9 KiB
SQL
93 lines
4.9 KiB
SQL
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 $$;
|