<template>
|
<dynamic-table v-if="componentVO.uiComponentType=='table' || componentVO.uiComponentType=='TreeTable'"
|
:uiBtmType="uiBtmType"
|
:uiContext="uiContext"
|
:key="areasName+'table-'+componentVO.oid"
|
:inDialog="inDialog"
|
:canEdit="canEdit"
|
:actionType="actionType"
|
:componentVO="componentVO"
|
:sourceData="sourceData"
|
:sourceBtmType="sourceBtmType"
|
:dataStore="dataStore"
|
:areasName="areasName"
|
:paramVOS="paramVOS"
|
@setData="setData"
|
@setDataStore="setDataStore"
|
:isShow="isShow">
|
|
</dynamic-table>
|
<dynamic-form v-else-if="componentVO.uiComponentType=='form'"
|
:uiBtmType="uiBtmType"
|
:uiContext="uiContext"
|
:key="areasName+'form-'+componentVO.oid"
|
:inDialog="inDialog"
|
:canEdit="canEdit"
|
:actionType="actionType"
|
:componentVO="componentVO"
|
:sourceData="sourceData"
|
:sourceBtmType="sourceBtmType"
|
:dataStore="dataStore"
|
:areasName="areasName"
|
:paramVOS="paramVOS"
|
@setData="setData"
|
@setDataStore="setDataStore"
|
:isShow="isShow">
|
|
</dynamic-form>
|
<dynamic-tree v-else-if="componentVO.uiComponentType=='tree'"
|
:uiBtmType="uiBtmType"
|
:uiContext="uiContext"
|
:key="areasName+'tree-'+componentVO.oid"
|
:inDialog="inDialog"
|
:canEdit="canEdit"
|
:actionType="actionType"
|
:componentVO="componentVO"
|
:sourceData="sourceData"
|
:sourceBtmType="sourceBtmType"
|
:dataStore="dataStore"
|
:areasName="areasName"
|
:paramVOS="paramVOS"
|
@setData="setData"
|
@setDataStore="setDataStore"
|
:isShow="isShow">
|
</dynamic-tree>
|
<dynamic-custom v-else-if="componentVO.uiComponentType=='customer'"
|
:uiBtmType="uiBtmType"
|
:uiContext="uiContext"
|
:inDialog="inDialog"
|
:canEdit="canEdit"
|
:actionType="actionType"
|
:key="areasName+'custom-'+componentVO.oid"
|
:componentVO="componentVO"
|
:sourceData="sourceData"
|
:sourceBtmType="sourceBtmType"
|
:dataStore="dataStore"
|
:areasName="areasName"
|
:paramVOS="paramVOS"
|
@setData="setData"
|
@setDataStore="setDataStore"
|
:isShow="isShow">
|
|
</dynamic-custom>
|
</template>
|
|
<script>
|
import dynamicTable from "@/components/dynamic-components/dynamic-table"
|
import dynamicForm from "@/components/dynamic-components/dynamic-form"
|
import dynamicTree from "@/components/dynamic-components/dynamic-tree"
|
import dynamicCustom from "@/components/dynamic-components/dynamic-custom"
|
export default {
|
name: "dynamicIndex",
|
components:{dynamicCustom, dynamicTree, dynamicForm, dynamicTable },
|
props:{
|
//ui上下文的业务类型(或链接类型)
|
uiBtmType: {
|
type: String
|
},
|
//ui上下文
|
uiContext:{
|
type: String
|
},
|
componentVO:{
|
type:Object,
|
default: {}
|
},
|
inDialog: {
|
type: Boolean,
|
default: false
|
},
|
canEdit:{
|
//内容是否可编辑
|
type:Boolean,
|
default:false
|
},
|
actionType:{
|
//按钮操作类型
|
default:""
|
},
|
areasName:{
|
type:String,
|
default:''
|
},
|
sourceData:{
|
//菜单源数据或者弹窗时按钮所属区域的上一区域选中数据
|
type:Object,
|
default: {}
|
},
|
//上一区域业务类型
|
sourceBtmType:{
|
type: String
|
},
|
dataStore:{
|
//弹窗时按钮所属区域选中数据
|
type:Array,
|
default: []
|
},
|
paramVOS:{
|
type:Object,
|
default: {}
|
},
|
isShow: {
|
//所在区域是否已显示,针对tab和collapse
|
type: Boolean,
|
default: true
|
},
|
},
|
created() {
|
},
|
methods:{
|
setDataStore(value) {
|
this.$emit("setDataStore", value);
|
this.dataStore = value.dataStore;
|
},
|
setData(value) {
|
this.$emit("setData", value);
|
}
|
}
|
}
|
</script>
|
|
<style scoped>
|
|
</style>
|