Przeglądaj źródła

1.1.14 修复查询窗口设置在curd内显示层级bug

liuyanpeng 1 rok temu
rodzic
commit
0ed2562e3e
2 zmienionych plików z 72 dodań i 70 usunięć
  1. 1 1
      package.json
  2. 71 69
      packages/info/src/InfoHeader.vue

+ 1 - 1
package.json

@@ -1,6 +1,6 @@
 {
   "name": "pc-component-v3",
-  "version": "1.1.13",
+  "version": "1.1.14",
   "description": "",
   "main": "dist/pc-component-v3.js",
   "scripts": {

+ 71 - 69
packages/info/src/InfoHeader.vue

@@ -41,18 +41,69 @@
 
 
     
-
-    <a-drawer
-      v-model:open="showDrawer1"
-      title="查询字段设置"
-      placement="right"
-      @after-open-change="showDrawer1 = $event"
-    >
-      <template v-if="infoFilterFieldsClone != null">
+    <div ref="drawer">
+      <a-drawer
+        v-model:open="showDrawer1"
+        title="查询字段设置"
+        placement="right"
+        :get-container="() => $refs.drawer"
+        @after-open-change="showDrawer1 = $event"
+      >
+        <template v-if="infoFilterFieldsClone != null">
+          <draggable
+            v-model="infoFilterFieldsClone"
+            item-key="key"
+            @change="filterFieldSortChanged()"
+            @click="stopPropagation($event)"
+          >
+            <template #item="{ element }">
+              <div style="margin-left: 15px; margin-right: 15px">
+                <div class="column">
+                  <input
+                    :id="
+                      'InfoForm' +
+                        '_' +
+                        infoWindowNo +
+                        '_' +
+                        element.fieldName
+                    "
+                    v-model="element.isShow"
+                    autocomplete="off"
+                    class="isShow-checkbox"
+                    type="checkbox"
+                    :disabled="element.mandatory && element.isShow"
+                    @change="visibleChanged(element)"
+                  />
+                  <label
+                    :for="
+                      'InfoForm' +
+                        '_' +
+                        infoWindowNo +
+                        '_' +
+                        element.fieldName
+                    "
+                    class="column-name"
+                    :class="{ 'column-red': element.mandatory == true }"
+                  >{{ element.name }}</label>
+                </div>
+              </div>
+            </template>
+          </draggable>
+        </template>
+      </a-drawer>
+
+      <a-drawer
+        v-if="infoGridFieldsClone != null"
+        v-model:open="showDrawer2"
+        title="表格字段设置"
+        :get-container="() => $refs.drawer"
+        placement="right" 
+        @after-open-change="showDrawer2 = $event"
+      >
         <draggable
-          v-model="infoFilterFieldsClone"
+          v-model="infoGridFieldsClone"
           item-key="key"
-          @change="filterFieldSortChaned()"
+          @change="gridFieldSortChanged()"
           @click="stopPropagation($event)"
         >
           <template #item="{ element }">
@@ -60,7 +111,7 @@
               <div class="column">
                 <input
                   :id="
-                    'InfoForm' +
+                    'InfoGrid' +
                       '_' +
                       infoWindowNo +
                       '_' +
@@ -71,11 +122,11 @@
                   class="isShow-checkbox"
                   type="checkbox"
                   :disabled="element.mandatory && element.isShow"
-                  @change="visibleChanged(element)"
+                  @change="gridFieldvisibleChanged(element)"
                 />
                 <label
                   :for="
-                    'InfoForm' +
+                    'InfoGrid' +
                       '_' +
                       infoWindowNo +
                       '_' +
@@ -88,57 +139,8 @@
             </div>
           </template>
         </draggable>
-      </template>
-    </a-drawer>
-
-
-    <a-drawer
-      v-if="infoGridFieldsClone != null"
-      v-model:open="showDrawer2"
-      title="表格字段设置"
-      placement="right"
-      @after-open-change="showDrawer2 = $event"
-    >
-      <draggable
-        v-model="infoGridFieldsClone"
-        item-key="key"
-        @change="gridFieldSortChaned()"
-        @click="stopPropagation($event)"
-      >
-        <template #item="{ element }">
-          <div style="margin-left: 15px; margin-right: 15px">
-            <div class="column">
-              <input
-                :id="
-                  'InfoGrid' +
-                    '_' +
-                    infoWindowNo +
-                    '_' +
-                    element.fieldName
-                "
-                v-model="element.isShow"
-                autocomplete="off"
-                class="isShow-checkbox"
-                type="checkbox"
-                :disabled="element.mandatory && element.isShow"
-                @change="gridFieldvisibleChanged(element)"
-              />
-              <label
-                :for="
-                  'InfoGrid' +
-                    '_' +
-                    infoWindowNo +
-                    '_' +
-                    element.fieldName
-                "
-                class="column-name"
-                :class="{ 'column-red': element.mandatory == true }"
-              >{{ element.name }}</label>
-            </div>
-          </div>
-        </template>
-      </draggable>
-    </a-drawer>
+      </a-drawer>
+    </div>
   </div>
 </template>
 
@@ -318,9 +320,9 @@ export default {
     stopPropagation: function (e) {
       e.stopPropagation();
     },
-        
-    filterFieldSortChaned: function () {
-      console.log('filterFieldSortChaned');
+
+    filterFieldSortChanged: function () {
+      console.log('filterFieldSortChanged');
       var _self = this;
       for (var i = 0, len1 = _self.infoFilterFieldsClone.length; i < len1; i++) {
         _self.infoFilterFieldsClone[i].sortNo = i * 10;
@@ -328,8 +330,8 @@ export default {
       this.$emit('filterFieldPropertyChanged', _self.infoFilterFieldsClone);
     },
 
-    gridFieldSortChaned: function () {
-      console.log('gridFieldSortChaned');
+    gridFieldSortChanged: function () {
+      console.log('gridFieldSortChanged');
       var _self = this;
       for (var i = 0, len1 = _self.infoGridFieldsClone.length; i < len1; i++) {
         _self.infoGridFieldsClone[i].sortNo = i * 10;