- 新增工作流插件类型、发布快照同步、实时可用性与下线影响检查 - 收口绑定候选、分类权限、间接环路校验与运行态优雅降级 - 补齐管理端工作流插件配置、详情与试运行界面及定向测试
72 lines
1.8 KiB
Vue
72 lines
1.8 KiB
Vue
<script setup lang="ts">
|
||
import type { FormInstance } from 'element-plus';
|
||
|
||
import { ref } from 'vue';
|
||
|
||
import { Position } from '@element-plus/icons-vue';
|
||
import { ElButton, ElForm, ElFormItem, ElMessage } from 'element-plus';
|
||
|
||
import { api } from '#/api/request';
|
||
import ShowJson from '#/components/json/ShowJson.vue';
|
||
import { $t } from '#/locales';
|
||
import WorkflowFormItem from '#/views/ai/workflow/components/WorkflowFormItem.vue';
|
||
|
||
interface Props {
|
||
workflowId: any;
|
||
node: any;
|
||
}
|
||
|
||
const props = defineProps<Props>();
|
||
|
||
const singleRunForm = ref<FormInstance>();
|
||
const runParams = ref<any>({});
|
||
const submitLoading = ref(false);
|
||
const result = ref<any>('');
|
||
function submit() {
|
||
singleRunForm.value?.validate((valid) => {
|
||
if (valid) {
|
||
const params = {
|
||
workflowId: props.workflowId,
|
||
nodeId: props.node.id,
|
||
variables: runParams.value,
|
||
};
|
||
submitLoading.value = true;
|
||
api.post('/api/v1/workflow/singleRun', params).then((res) => {
|
||
submitLoading.value = false;
|
||
result.value = res.data;
|
||
if (res.errorCode === 0) {
|
||
ElMessage.success(res.message);
|
||
} else {
|
||
ElMessage.error(res.message);
|
||
}
|
||
});
|
||
}
|
||
});
|
||
}
|
||
</script>
|
||
|
||
<template>
|
||
<div>
|
||
<ElForm label-position="top" ref="singleRunForm" :model="runParams">
|
||
<WorkflowFormItem
|
||
v-model:run-params="runParams"
|
||
:parameters="node?.data.parameters || []"
|
||
/>
|
||
<ElFormItem>
|
||
<ElButton
|
||
type="primary"
|
||
@click="submit"
|
||
:loading="submitLoading"
|
||
:icon="Position"
|
||
>
|
||
{{ $t('button.run') }}
|
||
</ElButton>
|
||
</ElFormItem>
|
||
</ElForm>
|
||
<div class="mb-2.5 mt-2.5 font-semibold">{{ $t('workflow.result') }}:</div>
|
||
<ShowJson :value="result" />
|
||
</div>
|
||
</template>
|
||
|
||
<style scoped></style>
|