From 065d7aee856305cd7f6392f25d0e0ac578726be3 Mon Sep 17 00:00:00 2001
From: zhangjinyang <409225776@qq.com>
Date: 星期四, 22 五月 2025 14:59:50 +0800
Subject: [PATCH] feat: 新增单节点执行功能。 close #IC7QJU
---
aiflowy-ui-react/src/pages/ai/workflowDesign/WorkflowDesign.tsx | 47 +++++++++++++++++++++++++++++++++++++----------
1 files changed, 37 insertions(+), 10 deletions(-)
diff --git a/aiflowy-ui-react/src/pages/ai/workflowDesign/WorkflowDesign.tsx b/aiflowy-ui-react/src/pages/ai/workflowDesign/WorkflowDesign.tsx
index 55394bf..7f4e9a6 100644
--- a/aiflowy-ui-react/src/pages/ai/workflowDesign/WorkflowDesign.tsx
+++ b/aiflowy-ui-react/src/pages/ai/workflowDesign/WorkflowDesign.tsx
@@ -10,6 +10,7 @@
import customNode from './customNode/index.ts'
import {PluginNode} from './customNode/pluginNode.ts'
import {PluginTools} from "../botDesign/PluginTools.tsx";
+import {SingleRun} from "./SingleRun.tsx";
export const WorkflowDesign = () => {
@@ -132,6 +133,10 @@
}
const [open, setOpen] = useState(false);
+ const [singleRunOpen, setSingleRunOpen] = useState(false);
+
+ const singleRunRef = useRef<any>(null)
+ const [currentNode, setCurrentNode] = useState<any>(null)
const showDrawer = () => {
setOpen(true);
@@ -139,6 +144,11 @@
const onClose = () => {
setOpen(false);
+ };
+
+ const onSingleRunClose = () => {
+ setSingleRunOpen(false);
+ singleRunRef.current.resetForm()
};
const onFinish = (values: any) => {
@@ -306,6 +316,17 @@
</Drawer>
+ <Drawer
+ width={640}
+ title="璇疯緭鍏ュ弬鏁�"
+ placement="right"
+ closable={false}
+ onClose={onSingleRunClose}
+ open={singleRunOpen}
+ >
+ <SingleRun ref={singleRunRef} workflowId={params.id} node={currentNode} />
+ </Drawer>
+
<div style={{height: 'calc(100vh - 50px)', display: "flex"}} className={"agentsflow"}>
<div style={{flexGrow: 1}}>
<div style={{
@@ -335,16 +356,22 @@
<Spin spinning={pageLoading} >
<Tinyflow ref={tinyflowRef} data={workflowData}
provider={provider}
- // onChange={(data: any) => {
- // console.log(data)
- // setWorkflow({
- // ...workflow,
- // data: {
- // ...workflow?.data,
- // content: JSON.stringify(data)
- // }
- // })
- // }}
+ onNodeExecute={async (node) => {
+ if ("loopNode" === node.type) {
+ message.warning("鏆備笉鏀寔")
+ return
+ }
+ setCurrentNode(node)
+ setPageLoading(true)
+ await doUpdate({
+ data: {
+ id: params.id,
+ content: tinyflowRef.current!.getData()
+ }
+ })
+ setPageLoading(false)
+ setSingleRunOpen(true)
+ }}
style={{height: 'calc(100vh - 10px)'}} customNodes={customNodes}/>
</Spin>
: <div style={{padding: '20px'}}><Skeleton active /></div>
--
Gitblit v1.8.0