diff --git a/web/app/dashboard/ai-workflows/_components/workflow-workbench.tsx b/web/app/dashboard/ai-workflows/_components/workflow-workbench.tsx index 84182bf..70ae815 100644 --- a/web/app/dashboard/ai-workflows/_components/workflow-workbench.tsx +++ b/web/app/dashboard/ai-workflows/_components/workflow-workbench.tsx @@ -147,30 +147,44 @@ export function WorkflowWorkbench({ toast.error("请填写工作流名称") return } + const savedName = name.trim() + const savedDescription = description.trim() setSaving(true) try { if (active) { await updateAIWorkflow({ id: active.id, - name: name.trim(), - description: description.trim(), + name: savedName, + description: savedDescription, definition, }) - await load() + setActive((current) => + current + ? { + ...current, + name: savedName, + description: savedDescription, + draftDefinition: definition, + updatedAt: new Date().toISOString(), + } + : current + ) + setName(savedName) + setDescription(savedDescription) + setDirty(false) } else { const created = await createAIWorkflow({ - name: name.trim(), - description: description.trim(), + name: savedName, + description: savedDescription, definition, }) setActive(created) setName(created.name) setDescription(created.description) - setDefinition(created.draftDefinition) setDirty(false) } onSaved?.() - toast.success("草稿已保存") + toast.success("保存成功") } catch (error) { toast.error(error instanceof Error ? error.message : "保存失败") } finally { @@ -180,7 +194,7 @@ export function WorkflowWorkbench({ async function publish() { if (!active) { - toast.error("请先保存草稿") + toast.error("请先保存") return } setSaving(true) @@ -208,17 +222,8 @@ export function WorkflowWorkbench({ return (
-
+
-

@@ -238,7 +243,7 @@ export function WorkflowWorkbench({

-