|
@@ -14,6 +14,13 @@
|
|
|
<el-input v-model="form.code" placeholder="请输入模板编码" clearable></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="8">
|
|
|
+ <el-form-item label="模板类型" prop="flowType" :rules="[{ required: true, message: '请选择模板类型', trigger: 'change' }]">
|
|
|
+ <el-select v-model="form.flowType" class="w100" placeholder="请选择模板类型">
|
|
|
+ <el-option v-for="item in baseDataResult.flowTypeOptions" :key="item.key" :label="item.value" :value="item.key" />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
<el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="8">
|
|
|
<el-form-item label="模板描述" prop="description" :rules="[{ required: false, message: '请输入模板描述', trigger: 'blur' }]">
|
|
|
<el-input v-model="form.description" placeholder="请输入模板描述" clearable></el-input>
|
|
@@ -26,23 +33,23 @@
|
|
|
<div class="w100 h100" ref="lfElRef" style="height: 100%"></div>
|
|
|
</div>
|
|
|
<!-- 节点内容弹窗 -->
|
|
|
- <PropertySetting ref="propertySettingRef" v-model="formData" @change="handlePropertyChange" @changeOther="handlePropertyChangeOther" />
|
|
|
+ <PropertySetting ref="propertySettingRef" v-model="formData" @change="handlePropertyChange" @changeOther="handlePropertyChangeOther" :baseData="baseDataResult"/>
|
|
|
</div>
|
|
|
</div>
|
|
|
</template>
|
|
|
<script setup lang="ts" name="hotlineFlowDesigner">
|
|
|
-import { onMounted, ref, Ref, watch, unref, defineAsyncComponent, reactive, nextTick } from 'vue';
|
|
|
-import { useRoute, useRouter } from 'vue-router';
|
|
|
-import LogicFlow, { EdgeType } from '@logicflow/core';
|
|
|
-import { DndPanel, SelectionSelect, Control, InsertNodeInPolyline, Menu, Group, Snapshot, MiniMap } from '@logicflow/extension';
|
|
|
+import {defineAsyncComponent, nextTick, onMounted, reactive, Ref, ref, unref, watch} from 'vue';
|
|
|
+import {useRoute, useRouter} from 'vue-router';
|
|
|
+import LogicFlow from '@logicflow/core';
|
|
|
+import {Control, DndPanel, Group, InsertNodeInPolyline, Menu, MiniMap, SelectionSelect, Snapshot} from '@logicflow/extension';
|
|
|
import '@logicflow/core/dist/style/index.css';
|
|
|
import '@logicflow/extension/lib/style/index.css';
|
|
|
-import { SnakerFlowElement, SnakerFlowAdapter } from './snakerflow/index';
|
|
|
-import { NodeTypeEnum } from './enums';
|
|
|
-import { workflowAdd, workflowUpdate, publish, baseData } from '/@/api/system/workflow';
|
|
|
+import {SnakerFlowAdapter, SnakerFlowElement} from './snakerflow/index';
|
|
|
+import {NodeTypeEnum} from './enums';
|
|
|
+import {baseData, workflowAdd, workflowUpdate} from '/@/api/system/workflow';
|
|
|
import mittBus from '/@/utils/mitt';
|
|
|
-import { throttle } from '/@/utils/tools';
|
|
|
-import {ElMessage, ElMessageBox, FormInstance} from 'element-plus';
|
|
|
+import {throttle} from '/@/utils/tools';
|
|
|
+import {ElMessage, FormInstance} from 'element-plus';
|
|
|
// 引入组件
|
|
|
const PropertySetting = defineAsyncComponent(() => import('./PropertySetting/index.vue')); // 节点属性设置
|
|
|
|
|
@@ -52,7 +59,7 @@ const emits = defineEmits(['update:modelValue', 'on-save']); // 定义组件事
|
|
|
// 提交表单数据
|
|
|
let formData = reactive({} as any);
|
|
|
// 外层表单
|
|
|
-let form = reactive<any>({});
|
|
|
+let form = reactive<Record<string, any>>({});
|
|
|
const ruleFormRef = ref<RefType>();
|
|
|
// 定义组件接收的参数
|
|
|
const props = defineProps({
|
|
@@ -379,6 +386,7 @@ const reRender = (data: any): void => {
|
|
|
// 最外层扩展属性赋值
|
|
|
form.name = lf.graphModel.name;
|
|
|
form.code = lf.graphModel.code;
|
|
|
+ form.flowType = lf.graphModel.flowType;
|
|
|
form.description = lf.graphModel.description;
|
|
|
form.id = route.params.id;
|
|
|
form.name = lf.graphModel.name;
|
|
@@ -454,7 +462,14 @@ const refreshImport = () => {
|
|
|
const importJson = (data: any) => {
|
|
|
reRender(data);
|
|
|
};
|
|
|
-onMounted(init);
|
|
|
+const baseDataResult = ref<EmptyObjectType>({});
|
|
|
+onMounted( async()=>{
|
|
|
+ // 获取页面基础数据
|
|
|
+ const {result} = await baseData();
|
|
|
+ baseDataResult.value = result;
|
|
|
+ await init();
|
|
|
+});
|
|
|
+
|
|
|
// 出提供给外部操作-$refs.xxx
|
|
|
defineExpose({
|
|
|
getGraphData,
|