refactor: spel

master
dap 6 months ago
parent a971369b91
commit 317c17ee88

@ -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…
Cancel
Save