forked from 77media/video-flow
115 lines
2.7 KiB
TypeScript
115 lines
2.7 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 detailScriptEpisodeRequest {
|
|
id: number;
|
|
}
|
|
|
|
// 创建剧集响应数据类型
|
|
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);
|
|
return new Promise((resolve) => {
|
|
setTimeout(() => {
|
|
resolve({
|
|
code: 0,
|
|
message: 'success',
|
|
data: {
|
|
id: 1,
|
|
title: 'test',
|
|
script_id: 1,
|
|
status: 1,
|
|
episode_sort: 1,
|
|
creator_name: 'king',
|
|
created_at: '2025-07-03 10:00:00',
|
|
updated_at: '2025-07-03 10:00:00'
|
|
},
|
|
successful: true
|
|
});
|
|
}, 1000);
|
|
});
|
|
};
|
|
|
|
// 更新剧集
|
|
export const updateScriptEpisode = async (data: UpdateScriptEpisodeRequest): Promise<ApiResponse<ScriptEpisode>> => {
|
|
// return post<ApiResponse<ScriptEpisode>>('/script_episode/update', data);
|
|
return new Promise((resolve) => {
|
|
setTimeout(() => {
|
|
resolve({
|
|
code: 0,
|
|
message: 'success',
|
|
data: {
|
|
id: 1,
|
|
title: 'test',
|
|
script_id: 1,
|
|
status: 1,
|
|
episode_sort: 1,
|
|
creator_name: 'king',
|
|
created_at: '2025-07-03 10:00:00',
|
|
updated_at: '2025-07-03 10:00:00'
|
|
},
|
|
successful: true
|
|
});
|
|
}, 0);
|
|
});
|
|
};
|
|
|
|
// 获取剧集详情
|
|
export const detailScriptEpisode = async (data: detailScriptEpisodeRequest): Promise<ApiResponse<ScriptEpisode>> => {
|
|
return post<ApiResponse<ScriptEpisode>>('/script_episode/detail', data);
|
|
};
|