Files
ai/backend/prisma/migrations/20260602095000_live_action_ai_mode/migration.sql
T
2026-06-15 17:45:28 +08:00

56 lines
2.4 KiB
SQL

ALTER TABLE `projects`
ADD COLUMN `output_mode` VARCHAR(50) NOT NULL DEFAULT 'image_manga' AFTER `output_type`,
ADD COLUMN `visual_mode` VARCHAR(100) NULL AFTER `output_mode`,
ADD COLUMN `video_generation_level` VARCHAR(50) NULL AFTER `visual_mode`;
ALTER TABLE `storyboard_shots`
ADD COLUMN `live_action_desc` TEXT NULL AFTER `negative_prompt`,
ADD COLUMN `actor_action` TEXT NULL AFTER `live_action_desc`,
ADD COLUMN `camera_instruction` TEXT NULL AFTER `actor_action`,
ADD COLUMN `performance_instruction` TEXT NULL AFTER `camera_instruction`,
ADD COLUMN `video_prompt` TEXT NULL AFTER `performance_instruction`,
ADD COLUMN `keyframe_asset_id` BIGINT NULL AFTER `video_prompt`,
ADD COLUMN `video_clip_asset_id` BIGINT NULL AFTER `keyframe_asset_id`,
ADD COLUMN `video_status` VARCHAR(50) NULL AFTER `video_clip_asset_id`;
CREATE TABLE `actor_profiles` (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`project_id` BIGINT NOT NULL,
`character_id` BIGINT NOT NULL,
`actor_desc` TEXT NULL,
`appearance_rules` TEXT NULL,
`wardrobe_rules` TEXT NULL,
`performance_style` TEXT NULL,
`voice_style` TEXT NULL,
`reference_asset_ids` JSON NULL,
`anchor_asset_id` BIGINT NULL,
`status` VARCHAR(50) NOT NULL DEFAULT 'draft',
`created_at` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
`updated_at` DATETIME(3) NOT NULL,
UNIQUE INDEX `actor_profiles_project_id_character_id_key`(`project_id`, `character_id`),
INDEX `actor_profiles_project_id_status_idx`(`project_id`, `status`),
INDEX `actor_profiles_character_id_idx`(`character_id`),
PRIMARY KEY (`id`)
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE TABLE `video_clips` (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`project_id` BIGINT NOT NULL,
`episode_id` BIGINT NOT NULL,
`shot_id` BIGINT NOT NULL,
`provider_id` BIGINT NULL,
`input_asset_id` BIGINT NULL,
`output_asset_id` BIGINT NULL,
`duration` DECIMAL(6, 2) NULL,
`prompt_text` TEXT NULL,
`status` VARCHAR(50) NOT NULL DEFAULT 'pending',
`cost_actual` DECIMAL(12, 4) NULL,
`retry_count` INTEGER NOT NULL DEFAULT 0,
`created_at` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
`updated_at` DATETIME(3) NOT NULL,
INDEX `video_clips_project_id_episode_id_idx`(`project_id`, `episode_id`),
INDEX `video_clips_shot_id_status_idx`(`shot_id`, `status`),
INDEX `video_clips_provider_id_idx`(`provider_id`),
PRIMARY KEY (`id`)
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;