From 8be3182372eb774dce8f9c97a0b51c03bda165c7 Mon Sep 17 00:00:00 2001 From: wangting <675591594@qq.com> Date: 星期一, 08 四月 2024 15:33:11 +0800 Subject: [PATCH] UI展示 --- Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue | 74 +++++++++++++++++++++++-------------- 1 files changed, 46 insertions(+), 28 deletions(-) diff --git a/Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue b/Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue index af3363a..1ac86c5 100644 --- a/Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue +++ b/Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue @@ -6,7 +6,7 @@ :areasData="uiDefineVO.northAreas" :inDialog="inDialog" :sourceData="sourceData" - :dataStore="checkedData.northAreaInDialog[0]" + :dataStore="checkedData.northAreaInDialog" :paramVOS="paramVOS" @setDataStore="setDataStore"> </UIContentArea> @@ -18,7 +18,7 @@ :areasData="uiDefineVO.westAreas" :inDialog="inDialog" :sourceData="sourceData" - :dataStore="checkedData.westAreaInDialog[0]" + :dataStore="checkedData.westAreaInDialog" :paramVOS="paramVOS" @setDataStore="setDataStore"> </UIContentArea> @@ -29,8 +29,8 @@ cradStyle="" :areasData="uiDefineVO.centerAreas" :inDialog="inDialog" - :sourceData="checkedData.westAreaInDialog[0]" - :dataStore="checkedData.centerAreaInDialog[0]" + :sourceData="checkedData.westAreaInDialog[checkedData.westAreaInDialog.length-1]" + :dataStore="checkedData.centerAreaInDialog" :paramVOS="paramVOS" @setDataStore="setDataStore"> </UIContentArea> @@ -40,8 +40,8 @@ cradStyle="" :areasData="uiDefineVO.southAreas" :inDialog="inDialog" - :sourceData="checkedData.centerAreaInDialog[0]" - :dataStore="checkedData.southAreaInDialog[0]" + :sourceData="checkedData.centerAreaInDialog[checkedData.centerAreaInDialog.length-1]" + :dataStore="checkedData.southAreaInDialog" :paramVOS="paramVOS" @setDataStore="setDataStore"> </UIContentArea> @@ -54,17 +54,25 @@ <script> import UIContentArea from "@/views/base/UIContentArea" import {uiDefineVOData} from "@/views/base/uiDefineVOInDialog" +import {verifyNull} from "@/util/validate"; +import {getUIContent} from '@/api/base/region' export default { name: "UIContentViewerInDialog", components:{UIContentArea}, props:{ + btmType:{ + type: String, + }, + content:{ + type: String, + }, inDialog: { type: Boolean, default: false }, sourceData:{ - //鑿滃崟婧愭暟鎹垨鑰呭脊绐楁椂鎸夐挳鎵�灞炲尯鍩熺殑涓婁竴鍖哄煙閫変腑鏁版嵁 + //鎵�灞炲尯鍩熺殑涓婁竴鍖哄煙閫変腑鏁版嵁 type:Object, default: {} }, @@ -76,46 +84,56 @@ paramVOS:{ type:Object, default: {} - }, - customOptions:{ - type:Object, - default: {} } }, data() { return { - btmType:this.customOptions.btmType,//涓氬姟绫诲瀷锛堟垨閾炬帴绫诲瀷锛� - content:this.customOptions.content,//UI涓婁笅鏂囩殑鍚嶇О checkedData:{ //鍚勫尯鍩熼�変腑鏁版嵁 - northAreaInDialog:[], - westAreaInDialog:[], - centerAreaInDialog:[], - southAreaInDialog:[] + northAreaInDialog:[{}], + westAreaInDialog:[{}], + centerAreaInDialog:[{}], + southAreaInDialog:[{}] }, - uiDefineVO: uiDefineVOData, + uiDefineVO: {}, centerHeight:'100%' } }, watch: { - + typeAContent:{ + handler(newV,oldV){ + if(oldV!=newV && !verifyNull(newV)){ + this.initUI(); + } + }, + immediate: true, + } }, computed: { - + typeAContent(){ + return this.btmType+this.content; + } }, created() { - if (this.uiDefineVO.southAreas && this.uiDefineVO.southAreas.length > 0) { - this.centerHeight = 'calc(100% - 310px)'; - } else { - this.centerHeight = '100%'; + if (verifyNull(this.btmType) || verifyNull(this.content) ) { + this.$message.error("鑷畾涔夌粍浠堕厤缃殑淇℃伅閿欒锛岃鍙傝�僢s=name?type=xxx&context=yyy¶m=zzz杩欑褰㈠紡銆傚叾涓璽ype鏄笟鍔$被鍨嬶紙鎴栭摼鎺ョ被鍨嬶級锛宑ontext鏄疷I涓婁笅鏂囩殑鍚嶇О,name涓虹粍浠跺悕绉帮紝绌哄�兼椂榛樿灞曠ずUI寮曟搸"); + return false; } }, methods: { - initUI(){ - + initUI() { + getUIContent({btmType: this.btmType, id: this.content}).then(res => { + console.log(res.data.obj) + this.uiDefineVO = res.data.obj; + this.initContent(); + }) }, - initContent(){ - + initContent() { + if (this.uiDefineVO.southAreas && this.uiDefineVO.southAreas.length > 0) { + this.centerHeight = 'calc(100% - 310px)'; + } else { + this.centerHeight = '100%'; + } }, setDataStore(value) { this.checkedData[value.area] = value.dataStore; -- Gitblit v1.9.3