video-flow-b/api/script_episode.ts
2025-07-01 22:36:50 +08:00

67 lines
1.6 KiB
TypeScript

import { post } from './request';
import { ApiResponse } from './common';
import { Character } from './video_flow';
// 创建剧集的数据类型
export interface CreateScriptEpisodeRequest {
title?: string;
script_id?: number;
characters?: {
characters?: Array<{
name?: string;
desc?: string;
}>;
};
summary?: string;
atmosphere?: string;
scene?: string;
status?: number;
task_description?: string;
creator_name?: string;
cate_tags?: {
tags?: string[];
};
episode_sort?: number;
}
// 更新剧集的数据类型
export interface UpdateScriptEpisodeRequest {
id: number;
title?: string;
script_id?: number;
status?: number;
summary?: string;
atmosphere?: string;
scene?: string;
task_description?: string;
creator_name?: string;
cate_tags?: {
tags?: string[];
};
characters?: Character[];
episode_sort?: number;
video_url?: string;
}
// 创建剧集响应数据类型
export interface ScriptEpisode {
id: number;
title: string;
script_id: number;
status: number;
episode_sort: number;
creator_name: string;
created_at: string;
updated_at?: string;
video_url?: string;
}
// 创建剧集
export const createScriptEpisode = async (data: CreateScriptEpisodeRequest): Promise<ApiResponse<ScriptEpisode>> => {
return post<ApiResponse<ScriptEpisode>>('/script_episode/create', data);
};
// 更新剧集
export const updateScriptEpisode = async (data: UpdateScriptEpisodeRequest): Promise<ApiResponse<ScriptEpisode>> => {
return post<ApiResponse<ScriptEpisode>>('/script_episode/update', data);
};