From f8cb32db56b89f20d591e580464c76dac6fc7084 Mon Sep 17 00:00:00 2001 From: Audit Bot Date: Sun, 28 Jun 2026 17:45:05 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E4=B8=80=E9=94=AE?= =?UTF-8?q?=E7=94=9F=E6=88=90=E9=A1=B5=E9=9D=A2=E5=BA=9F=E5=BC=83=20API=20?= =?UTF-8?q?=E8=B0=83=E7=94=A8=E5=8F=8A=E5=AF=BC=E8=88=AA=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bug A: GeneratePage 引用已删除的 editPlans API(/edit-plans/auto-generate 不存在) - 新增 createGenerationTask 到 tasks.ts(USE_MOCK 模式,待后端适配扁平化架构后切换) - GeneratePage 改用 createGenerationTask 替代 autoGenerateEditPlan - 移除对 @/api/editPlans 的引用 附带修复: window.location.href → useNavigate('/history') --- apps/web/src/api/tasks.ts | 37 ++++++++++++++++++++ apps/web/src/pages/generate/GeneratePage.tsx | 10 +++--- 2 files changed, 43 insertions(+), 4 deletions(-) diff --git a/apps/web/src/api/tasks.ts b/apps/web/src/api/tasks.ts index cb6519cde..536b859ba 100644 --- a/apps/web/src/api/tasks.ts +++ b/apps/web/src/api/tasks.ts @@ -30,3 +30,40 @@ export const retryTask = async (taskId: string): Promise => { const response = await apiClient.post(`/tasks/${taskId}/retry`); return response.data; }; + +/** 创建生成任务请求参数 */ +export interface CreateGenerationTaskRequest { + template_id: string; + asset_ids: string[]; + title_ids: string[]; + voice_ids: string[]; +} + +/** 创建生成任务响应 */ +export interface CreateGenerationTaskResponse { + task_id: string; + status: string; + message: string; +} + +// TODO: 后端生成接口适配扁平化架构后切换为 false +const USE_MOCK = true; + +/** 创建生成任务(一键生成) */ +export const createGenerationTask = async ( + params: CreateGenerationTaskRequest, +): Promise => { + if (USE_MOCK) { + await new Promise((r) => setTimeout(r, 800)); + return { + task_id: `task_${Date.now()}`, + status: 'pending', + message: '生成任务已创建', + }; + } + const response = await apiClient.post( + '/generation/tasks', + params, + ); + return response.data; +}; diff --git a/apps/web/src/pages/generate/GeneratePage.tsx b/apps/web/src/pages/generate/GeneratePage.tsx index 725d1d3b4..beb92de75 100644 --- a/apps/web/src/pages/generate/GeneratePage.tsx +++ b/apps/web/src/pages/generate/GeneratePage.tsx @@ -3,6 +3,7 @@ * 流程:选择模板 → 选择素材 → 选择标题 → 选择配音 → 批量生成 */ import React, { useState } from 'react'; +import { useNavigate } from 'react-router-dom'; import { useQuery, useMutation } from '@tanstack/react-query'; import { Card, @@ -30,11 +31,12 @@ import { getTemplates } from '@/api/templates'; import { getAssetLibraries, getAssets, type AssetItem } from '@/api/assets'; import { getTitles } from '@/api/titles'; import { getVoices } from '@/api/voices'; -import { autoGenerateEditPlan } from '@/api/editPlans'; +import { createGenerationTask } from '@/api/tasks'; const { Title, Text } = Typography; const GeneratePage: React.FC = () => { + const navigate = useNavigate(); const [currentStep, setCurrentStep] = useState(0); const [selectedTemplate, setSelectedTemplate] = useState(''); const [selectedAssets, setSelectedAssets] = useState([]); @@ -81,9 +83,9 @@ const GeneratePage: React.FC = () => { enabled: libraries.length > 0, }); - // 创建生成计划 + // 创建生成任务 const generateMutation = useMutation({ - mutationFn: autoGenerateEditPlan, + mutationFn: createGenerationTask, onSuccess: () => { message.success('生成任务已提交'); setGenerated(true); @@ -242,7 +244,7 @@ const GeneratePage: React.FC = () => { title="生成任务已提交" subTitle="您可以在任务历史中查看生成进度" extra={ - } -- 2.54.0