diff --git a/frontend/src/pages/Workflow/Definition/Design/index.tsx b/frontend/src/pages/Workflow/Definition/Design/index.tsx
index 29f81897..726da214 100644
--- a/frontend/src/pages/Workflow/Definition/Design/index.tsx
+++ b/frontend/src/pages/Workflow/Definition/Design/index.tsx
@@ -1,6 +1,6 @@
import React, { useEffect, useState, useRef } from 'react';
import { useParams, useNavigate } from 'react-router-dom';
-import { Button, Space, Card, Row, Col, message } from 'antd';
+import { Button, Space, Card, Row, Col, message, Modal } from 'antd';
import { ArrowLeftOutlined, SaveOutlined, PlayCircleOutlined } from '@ant-design/icons';
import { Graph, Cell } from '@antv/x6';
import { getDefinitionDetail, saveDefinition } from '../service';
@@ -257,7 +257,24 @@ const WorkflowDesign: React.FC = () => {
// 调用保存接口
await saveDefinition(saveData);
- message.success('流程保存成功');
+
+ // 使用 Modal.confirm 显示操作选择
+ Modal.confirm({
+ title: '保存成功',
+ content: '流程设计已保存成功,请选择下一步操作',
+ okText: '继续设计',
+ cancelText: '返回列表',
+ onOk: () => {
+ // 重新加载设计数据
+ if (id) {
+ loadDefinitionDetail(graph, id);
+ }
+ },
+ onCancel: () => {
+ // 返回列表页
+ navigate('/workflow/definition');
+ }
+ });
} catch (error) {
console.error('保存流程失败:', error);
message.error('保存流程失败');
@@ -277,12 +294,6 @@ const WorkflowDesign: React.FC = () => {
>
保存
- }
- onClick={() => console.log('Deploy workflow')}
- >
- 发布
-
}
onClick={() => navigate('/workflow/definition')}
diff --git a/frontend/src/pages/Workflow/Definition/index.tsx b/frontend/src/pages/Workflow/Definition/index.tsx
index f17d4c86..445c1532 100644
--- a/frontend/src/pages/Workflow/Definition/index.tsx
+++ b/frontend/src/pages/Workflow/Definition/index.tsx
@@ -124,7 +124,7 @@ const WorkflowDefinitionList: React.FC = () => {
content: '确定要发布该流程定义吗?发布后将不能修改。',
onOk: async () => {
try {
- await service.deployDefinition(id);
+ await service.publishDefinition(id);
message.success('发布成功');
loadData(query);
} catch (error) {
diff --git a/frontend/src/pages/Workflow/Definition/service.ts b/frontend/src/pages/Workflow/Definition/service.ts
index 2d9c082a..689994f6 100644
--- a/frontend/src/pages/Workflow/Definition/service.ts
+++ b/frontend/src/pages/Workflow/Definition/service.ts
@@ -20,4 +20,12 @@ export const saveDefinition = (data: WorkflowDefinition) =>
request.post(`${DEFINITION_URL}`, data);
export const updateDefinition = (id: number, data: WorkflowDefinition) =>
- request.put(`${DEFINITION_URL}/${id}`, data);
\ No newline at end of file
+ request.put(`${DEFINITION_URL}/${id}`, data);
+
+/**
+ * 发布工作流定义
+ * @param id 工作流定义ID
+ * @returns Promise
+ */
+export const publishDefinition = (id: number) =>
+ request.post(`${DEFINITION_URL}/${id}/published`);
\ No newline at end of file