|
@@ -12,11 +12,17 @@
|
|
|
<div class="info-wrap">
|
|
|
<el-divider content-position="left">{{ record.processName }}表单</el-divider>
|
|
|
<!-- 表单设计 -->
|
|
|
- <div class="self-Everright-formEditor">
|
|
|
- <er-form-preview ref="EReditorRef" :is-show-complete-button="false" :file-upload-u-r-i="uploadFileApi" />
|
|
|
- </div>
|
|
|
+ <template v-if="record.formTemplate.type === 0">
|
|
|
+ <div class="self-Everright-formEditor">
|
|
|
+ <er-form-preview ref="EReditorRef" :is-show-complete-button="false" :file-upload-u-r-i="uploadFileApi" />
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
|
|
|
<!-- vue自定义 -->
|
|
|
+ <template v-if="record.formTemplate.type === 1">
|
|
|
+ <component :is="dyVueComponent"></component>
|
|
|
+ </template>
|
|
|
+
|
|
|
<el-divider content-position="left">审批流程</el-divider>
|
|
|
<flow-trend v-model="modelContentConfig"></flow-trend>
|
|
|
<el-divider></el-divider>
|
|
@@ -31,7 +37,7 @@
|
|
|
|
|
|
<script setup lang="ts">
|
|
|
import model from '@/api/flow/process'
|
|
|
-import { nextTick, onMounted, ref } from 'vue'
|
|
|
+import { nextTick, onMounted, ref, markRaw, defineAsyncComponent } from 'vue'
|
|
|
import { ElMessage } from 'element-plus'
|
|
|
import { erFormPreview } from '@ER/formEditor'
|
|
|
import FlowTrend from '@/components/Flow/FlowTrend.vue'
|
|
@@ -67,6 +73,7 @@ const { VITE_APP_BASE_API } = import.meta.env
|
|
|
const uploadFileApi = ref(`${VITE_APP_BASE_API}/v1/oss/upload`)
|
|
|
const EReditorRef = ref()
|
|
|
const modelContentConfig = ref<ModelContentConfig | any>({})
|
|
|
+const dyVueComponent = ref(undefined)
|
|
|
|
|
|
const onSubmit = async () => {
|
|
|
const processId = props.record.processId
|
|
@@ -118,6 +125,8 @@ const getDetailInfo = () => {
|
|
|
cur_processForm_str = content || '{}' // processForm 这个是后台返回来的
|
|
|
const formStructure = JSON.parse(cur_processForm_str)
|
|
|
EReditorRef.value.setData(formStructure)
|
|
|
+ } else {
|
|
|
+ dyVueComponent.value = markRaw(defineAsyncComponent(() => import('./test1.vue')))
|
|
|
}
|
|
|
validateForm.value.loading = false
|
|
|
}
|