feat: finish update pipline but left some bugs

This commit is contained in:
HYana
2025-04-29 23:49:15 +08:00
parent b65ce87a39
commit d4af2d4326
6 changed files with 799 additions and 15 deletions
@@ -13,10 +13,20 @@ import styles from "./pipelineFormStyle.module.css";
import { httpClient } from "@/app/infra/http/HttpClient";
import { LLMModel, Pipeline } from "@/app/infra/api/api-types";
import { UUID } from "uuidjs";
import {PipelineFormEntity} from "@/app/home/pipelines/components/pipeline-form/PipelineFormEntity";
export default function PipelineFormComponent({
onFinish
initValues,
onFinish,
isEditMode,
pipelineId,
disableForm,
}: {
pipelineId?: string;
isEditMode: boolean;
disableForm: boolean;
// 这里的写法很不安全不规范,未来流水线需要重新整理
initValues?: PipelineFormEntity;
onFinish: () => void;
}) {
const [nowFormIndex, setNowFormIndex] = useState<number>(0);
@@ -40,6 +50,18 @@ export default function PipelineFormComponent({
getLLMModelList();
}, []);
useEffect(() => {
console.log("initValues change: ", initValues);
if (initValues) {
basicForm.setFieldsValue(initValues.basic);
aiForm.setFieldsValue(initValues.ai);
triggerForm.setFieldsValue(initValues.trigger);
safetyForm.setFieldsValue(initValues.safety);
outputForm.setFieldsValue(initValues.output);
}
}, [initValues]);
function getLLMModelList() {
httpClient
.getProviderLLMModels()
@@ -91,6 +113,14 @@ export default function PipelineFormComponent({
}
function handleCommit() {
if (isEditMode) {
handleModify()
} else {
handleCreate()
}
}
function handleCreate() {
Promise.all([
basicForm.validateFields(),
aiForm.validateFields(),
@@ -98,13 +128,30 @@ export default function PipelineFormComponent({
safetyForm.validateFields(),
outputForm.validateFields()
])
.then(() => {
const pipeline = assembleForm();
httpClient.createPipeline(pipeline).then(() => onFinish());
})
.catch((e) => {
console.error(e);
});
.then(() => {
const pipeline = assembleForm();
httpClient.createPipeline(pipeline).then(() => onFinish());
})
.catch((e) => {
console.error(e);
});
}
function handleModify() {
Promise.all([
basicForm.validateFields(),
aiForm.validateFields(),
triggerForm.validateFields(),
safetyForm.validateFields(),
outputForm.validateFields()
])
.then(() => {
const pipeline = assembleForm();
httpClient.updatePipeline(pipelineId || '', pipeline).then(() => onFinish());
})
.catch((e) => {
console.error(e);
});
}
// TODO 类型混乱,需要优化
@@ -142,6 +189,7 @@ export default function PipelineFormComponent({
display: getNowFormLabel().name === "basic" ? "block" : "none"
}}
form={basicForm}
disabled={disableForm}
>
<Form.Item
label="流水线名称"
@@ -172,6 +220,7 @@ export default function PipelineFormComponent({
layout={"vertical"}
style={{ display: getNowFormLabel().name === "ai" ? "block" : "none" }}
form={aiForm}
disabled={disableForm}
>
{/* Runner 配置区块 */}
<div className={`${styles.formItemSubtitle}`}></div>
@@ -331,6 +380,7 @@ export default function PipelineFormComponent({
display: getNowFormLabel().name === "trigger" ? "block" : "none"
}}
form={triggerForm}
disabled={disableForm}
>
{/* 群响应规则块 */}
<div className={`${styles.formItemSubtitle}`}> </div>
@@ -423,6 +473,7 @@ export default function PipelineFormComponent({
display: getNowFormLabel().name === "safety" ? "block" : "none"
}}
form={safetyForm}
disabled={disableForm}
>
{/* 内容过滤块 content-filter */}
<div className={`${styles.formItemSubtitle}`}> </div>
@@ -488,6 +539,7 @@ export default function PipelineFormComponent({
display: getNowFormLabel().name === "output" ? "block" : "none"
}}
form={outputForm}
disabled={disableForm}
>
{/* 长文本处理区块 */}
<div className={`${styles.formItemSubtitle}`}> </div>
@@ -0,0 +1,7 @@
export interface PipelineFormEntity {
basic: object,
ai: object,
trigger: object,
safety: object,
output: object,
}