refactor: spel
This commit is contained in:
parent
a971369b91
commit
317c17ee88
15
apps/web-antd/src/views/workflow/spel/common.ts
Normal file
15
apps/web-antd/src/views/workflow/spel/common.ts
Normal file
@ -0,0 +1,15 @@
|
||||
export function generateSpel(data: {
|
||||
componentName?: string;
|
||||
methodName?: string;
|
||||
methodParams?: string;
|
||||
}) {
|
||||
const { componentName, methodName, methodParams } = data;
|
||||
if (!componentName || !methodName) {
|
||||
return '-';
|
||||
}
|
||||
|
||||
const params = methodParams ? methodParams.split(',') : [];
|
||||
const methodParamsText = params.map((item) => `#${item}`).join(',');
|
||||
|
||||
return `#{@${componentName}.${methodName}(${methodParamsText})}`;
|
||||
}
|
||||
@ -9,6 +9,7 @@ import { useVbenForm } from '#/adapter/form';
|
||||
import { spelAdd, spelInfo, spelUpdate } from '#/api/workflow/spel';
|
||||
import { defaultFormValueGetter, useBeforeCloseDiff } from '#/utils/popup';
|
||||
|
||||
import { generateSpel } from './common';
|
||||
import { drawerSchema } from './data';
|
||||
import SpelPreviewer from './spel-previewer.vue';
|
||||
|
||||
@ -69,7 +70,13 @@ async function handleConfirm() {
|
||||
return;
|
||||
}
|
||||
const data = cloneDeep(await formApi.getValues());
|
||||
await (isUpdate.value ? spelUpdate(data) : spelAdd(data));
|
||||
if (isUpdate.value) {
|
||||
await spelUpdate(data);
|
||||
} else {
|
||||
// 新增需要生成
|
||||
data.viewSpel = generateSpel(data);
|
||||
await spelAdd(data);
|
||||
}
|
||||
resetInitialized();
|
||||
emit('reload');
|
||||
drawerApi.close();
|
||||
|
||||
Loading…
Reference in New Issue
Block a user