From ded3890236e8d2371afc44c48631bb0fb9101d76 Mon Sep 17 00:00:00 2001
From: wangting <675591594@qq.com>
Date: 星期二, 07 五月 2024 18:34:37 +0800
Subject: [PATCH] 表单展示

---
 Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue |   57 +++++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 43 insertions(+), 14 deletions(-)

diff --git a/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue b/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue
index ba90e03..23ebb62 100644
--- a/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue
+++ b/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue
@@ -16,13 +16,18 @@
                @selection-change="selectChange">
       <!--top鍖哄煙鎸夐挳-->
       <template slot="menuLeft" slot-scope="scope">
-        <dynamic-button :componentVO="componentVO" :butttonList="componentVO.buttons" :dataStore="selectList" LocationType="top" :sourceData="sourceData"
+        <dynamic-button :componentVO="componentVO"
+                        :key="areasName+'buttons-'+componentVO.oid"
+                        :butttonList="componentVO.buttons" :dataStore="selectList" LocationType="top" :sourceData="sourceData"
+                        @afterMethod="handleRefresh"
                         type="table"></dynamic-button>
       </template>
 
       <!--menu鍖哄煙鎸夐挳-->
       <template slot="menu" slot-scope="scope">
-        <dynamic-button :componentVO="componentVO" :butttonList="componentVO.buttons" :scope="scope" :dataStore="selectList" :sourceData="sourceData" LocationType="menu"
+        <dynamic-button :componentVO="componentVO" :butttonList="componentVO.buttons" :scope="scope" :dataStore="selectList" :sourceData="sourceData"
+                        LocationType="menu"
+                        @afterMethod="handleRefresh"
                         type="table"></dynamic-button>
       </template>
     </avue-crud>
@@ -51,6 +56,11 @@
     inDialog: {
       type: Boolean,
       default: false
+    },
+    canEdit:{
+      //鍐呭鏄惁鍙紪杈�
+      type:Boolean,
+      default:false
     },
     areasName: {
       type: String,
@@ -114,7 +124,7 @@
         height: '100%',
         calcHeight: 15,
         indexFixed: false,
-        menuFixed: 'right',
+        menuFixed: this.areasName === 'westArea' ? false : 'right',
         searchMenuSpan:12,
         searchShow:false,
         column: [],
@@ -163,6 +173,20 @@
         }
       }
     },
+    tableList:{
+      handler(newval) {
+        if(newval) {
+          this.$emit("setData", {
+            area: this.areasName,
+            type:this.componentVO.uiComponentType,
+            currentDefineVO:this.currentDefineVO,
+            data:newval
+          });
+        }
+      },
+      deep: true,
+      immediate: true
+    },
     'sourceData':{
       handler(newval) {
         if(newval) {
@@ -170,7 +194,9 @@
           this.getParams();
           this.handleRefresh();
         }
-      }
+      },
+      deep: true,
+      immediate: true
     }
   },
   created() {
@@ -230,19 +256,18 @@
           sourceDataMap.sourceOid = this.sourceData.oid;
         }
         for (let i in this.sourceData) {
-          let item = this.sourceData[i]
-          if (item && item.constructor === Object) return;
-          if (i == 'type' || i == 'context' || i == 'content') return;
+          const item = this.sourceData[i]
+          if (item && item.constructor === Object) continue;
+          if (i == 'type' || i == 'context' || i == 'content') continue;
           sourceDataMap['sourceData["' + i + '"]'] = item
         }
       }
 
       if (Object.keys(this.paramVOS).length>0) {
-        for (let i in this.paramVOS) {
-          let item = this.paramVOS[i]
-          if (item && item.constructor === Object) return;
-          if (i == 'type' || i == 'context' || i == 'content') return;
-          sourceDataMap['sourceData["' + i + '"]'] = item
+        for (let j in this.paramVOS) {
+          if (this.paramVOS[j] && this.paramVOS[j].constructor === Object) continue;
+          if (j == 'type' || j == 'context' || j == 'content') continue;
+          sourceDataMap['sourceData["' + j + '"]'] = this.paramVOS[j]
         }
       }
       return sourceDataMap;
@@ -316,9 +341,13 @@
     },
     selectionClear() {
       this.selectionList = [];
-      this.$refs.dataTable.toggleSelection();
+      try {
+        this.$refs.dataTable.toggleSelection();
+      }catch (e) {
+
+      }
     },
-    handleRefresh() {
+    handleRefresh(type) {
       this.onLoad(this.page, this.query);
     }
   }

--
Gitblit v1.9.3