From 506b5b59e3899d8dd40a61cc8b9a575bbde3caaa Mon Sep 17 00:00:00 2001
From: wangting <675591594@qq.com>
Date: 星期一, 06 五月 2024 18:24:33 +0800
Subject: [PATCH] 添加action

---
 Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue |  122 ++++++++++++++++++++++++++++++++--------
 1 files changed, 98 insertions(+), 24 deletions(-)

diff --git a/Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue b/Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue
index 6528465..0bd27af 100644
--- a/Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue
+++ b/Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue
@@ -1,12 +1,19 @@
 <template>
   <!--UI涓婁笅鏂囩殑灞曠ず鍣�-->
-  <div style="height:calc(100% - 4px);min-width:1200px" >
+  <div style="height:calc(100% - 4px);" >
     <el-header v-if="uiDefineVO.northAreas && uiDefineVO.northAreas.length>0">
-      <UIContentArea :key="'northArea-'+uiDefineVO.oid" :areasData="uiDefineVO.northAreas"
-                     :dataStore="checkedData.northArea"
+      <UIContentArea :key="'northArea-'+uiDefineVO.oid"
+                     :uiBtmType="btmType"
+                     :uiContext="context"
+                     :areasData="uiDefineVO.northAreas"
+                     :dataStore="checkedData.northAreaInDialog.data"
+                     :paramVOS="paramVOS"
                      :inDialog="inDialog"
+                     :canEdit="canEdit"
                      :sourceData="sourceData"
-                     areas-name="northArea"
+                     :sourceBtmType="btmType"
+                     areas-name="northAreaInDialog"
+                     @setData="setData"
                      @setDataStore="setDataStore">
       </UIContentArea>
     </el-header>
@@ -15,34 +22,55 @@
       <el-aside v-if="uiDefineVO.westAreas && uiDefineVO.westAreas.length>0"
                 :width="uiDefineVO.westAreas[0].componentVOs[0].uiComponentType=='table' || uiDefineVO.westAreas[0].componentVOs[0].uiComponentType=='TreeTable'?'420px':'320px'"
                 height="100%">
-        <UIContentArea :key="'westArea-'+uiDefineVO.oid" :areasData="uiDefineVO.westAreas"
-                       :dataStore="checkedData.westArea"
+        <UIContentArea :key="'westArea-'+uiDefineVO.oid"
+                       :uiBtmType="btmType"
+                       :uiContext="context"
+                       :areasData="uiDefineVO.westAreas"
+                       :dataStore="checkedData.westAreaInDialog.data"
+                       :paramVOS="paramVOS"
                        :inDialog="inDialog"
+                       :canEdit="canEdit"
                        :sourceData="sourceData"
-                       areas-name="westArea"
+                       :sourceBtmType="btmType"
+                       areas-name="westAreaInDialog"
                        cradStyle=""
+                       @setData="setData"
                        @setDataStore="setDataStore">
         </UIContentArea>
       </el-aside>
       <el-container style="height: 100%;display: block">
-        <el-main v-if="uiDefineVO.centerAreas && uiDefineVO.centerAreas.length>0" :style="'min-height: 300px;height: '+centerHeight">
-          <UIContentArea :key="'centerArea-'+uiDefineVO.oid" :areasData="uiDefineVO.centerAreas"
-                         :dataStore="checkedData.centerArea"
+        <el-main v-if="uiDefineVO.centerAreas && uiDefineVO.centerAreas.length>0" :style="'min-height: 200px;height: '+centerHeight">
+          <UIContentArea :key="'centerArea-'+uiDefineVO.oid"
+                         :uiBtmType="btmType"
+                         :uiContext="context"
+                         :areasData="uiDefineVO.centerAreas"
+                         :dataStore="checkedData.centerAreaInDialog.data"
+                         :paramVOS="paramVOS"
                          :inDialog="inDialog"
-                         :sourceData="checkedData.westArea[checkedData.westArea.length-1]"
-                         areas-name="centerArea"
+                         :canEdit="canEdit"
+                         :sourceData="checkedData.westAreaInDialog.data[checkedData.westAreaInDialog.data.length-1]"
+                         :sourceBtmType="checkedData.westAreaInDialog.DefineVOBtmType"
+                         areas-name="centerAreaInDialog"
                          cradStyle=""
+                         @setData="setData"
                          @setDataStore="setDataStore">
           </UIContentArea>
         </el-main>
         <el-footer v-if="uiDefineVO.southAreas && uiDefineVO.southAreas.length>0" height="35%"
-                   style="min-height: 150px;">
-          <UIContentArea :key="'southArea-'+uiDefineVO.oid" :areasData="uiDefineVO.southAreas"
-                         :dataStore="checkedData.southArea"
+                   style="min-height: 100px;">
+          <UIContentArea :key="'southArea-'+uiDefineVO.oid"
+                         :uiBtmType="btmType"
+                         :uiContext="context"
+                         :areasData="uiDefineVO.southAreas"
+                         :dataStore="checkedData.southAreaInDialog.data"
+                         :paramVOS="paramVOS"
                          :inDialog="inDialog"
-                         :sourceData="checkedData.centerArea[checkedData.centerArea.length-1]"
-                         areas-name="southArea"
+                         :canEdit="canEdit"
+                         :sourceData="checkedData.centerAreaInDialog.data[checkedData.centerAreaInDialog.data.length-1]"
+                         :sourceBtmType="checkedData.centerAreaInDialog.DefineVOBtmType"
+                         areas-name="southAreaInDialog"
                          cradStyle=""
+                         @setData="setData"
                          @setDataStore="setDataStore">
           </UIContentArea>
         </el-footer>
@@ -54,7 +82,7 @@
 <script>
 import UIContentArea from "@/views/base/UIContentArea"
 import {verifyNull} from "@/util/validate";
-import {getUIContext} from '@/api/base/region'
+import {getUIContext} from '@/api/base/ui'
 
 export default {
   name: "UIContentViewerInDialog",
@@ -69,6 +97,11 @@
     inDialog: {
       type: Boolean,
       default: false
+    },
+    canEdit:{
+      //鍐呭鏄惁鍙紪杈�
+      type:Boolean,
+      default:false
     },
     sourceData:{
       //鎵�灞炲尯鍩熺殑涓婁竴鍖哄煙閫変腑鏁版嵁
@@ -87,12 +120,47 @@
   },
   data() {
     return {
+      //鍚勫尯鍩熺殑閫変腑鏁版嵁
       checkedData:{
-        //鍚勫尯鍩熼�変腑鏁版嵁
-        northAreaInDialog:[{}],
-        westAreaInDialog:[{}],
-        centerAreaInDialog:[{}],
-        southAreaInDialog:[{}]
+        northAreaInDialog:{
+          DefineVOBtmType:'',
+          data:[{}]
+        },
+        westAreaInDialog:{
+          DefineVOBtmType:'',
+          data:[{}]
+        },
+        centerAreaInDialog:{
+          DefineVOBtmType:'',
+          data:[{}]
+        },
+        southAreaInDialog:{
+          DefineVOBtmType:'',
+          data:[{}]
+        }
+      },
+      //鍚勫尯鍩熸暟鎹�
+      data:{
+        northAreaInDialog:{
+          type:'',
+          btmType:'',
+          data:null
+        },
+        westAreaInDialog:{
+          type:'',
+          btmType:'',
+          data:null
+        },
+        centerAreaInDialog:{
+          type:'',
+          btmType:'',
+          data:null
+        },
+        southAreaInDialog:{
+          type:'',
+          btmType:'',
+          data:null
+        }
       },
       uiDefineVO: {},
       centerHeight:'100%'
@@ -133,8 +201,14 @@
         this.centerHeight = '100%';
       }
     },
+    setData(value) {
+      this.data[value.area].btmType = value.btmType;
+      this.data[value.area].data = value.data;
+      this.data[value.area].type = value.type;
+    },
     setDataStore(value) {
-      this.checkedData[value.area] = value.dataStore;
+      this.checkedData[value.area].DefineVOBtmType = value.btmType;
+      this.checkedData[value.area].data = value.dataStore;
     }
   }
 }

--
Gitblit v1.9.3