From 015a99675ad021a5b1f8d635da3e8887e0c28a97 Mon Sep 17 00:00:00 2001
From: Surpriseplus <845948745@qq.com>
Date: 星期四, 02 三月 2023 17:33:03 +0800
Subject: [PATCH] 资料馆添加附件上传,添加支持查看pdf,图片文件功能;字典管理,值域管理页面左侧目录树展示效果优化

---
 src/views/Archive/index.vue               |  270 ++++++++++++++++++++++
 src/views/datamanage/dictionaryManage.vue |   86 +++---
 src/views/datamanage/domainManage.vue     |  339 +++++++++++++++++-----------
 3 files changed, 520 insertions(+), 175 deletions(-)

diff --git a/src/views/Archive/index.vue b/src/views/Archive/index.vue
index 3200e8e..745f391 100644
--- a/src/views/Archive/index.vue
+++ b/src/views/Archive/index.vue
@@ -465,6 +465,102 @@
           >纭� 瀹�</el-button>
         </span>
       </el-dialog>
+      <!-- 鏁版嵁搴撻檮浠朵俊鎭� -->
+      <el-dialog
+        :title="$t('common.enclosure')"
+        :visible.sync="outerVisible"
+        :close-on-click-modal="false"
+        width="50%"
+        :modal="false"
+      >
+        <div style="height:68vh">
+          <el-form
+            :model="fromfile"
+            class="demo-form-inline"
+          >
+            <el-form-item>
+              <el-input
+                v-model="fromfile.file"
+                style="width: 300px; margin-right: 20px"
+                :placeholder="$t('common.choose')"
+                disabled
+              ></el-input>
+              <input
+                name="file1"
+                type="file"
+                id="insertFile"
+                multiple="multiple"
+                style="display: none"
+                @change="insertFile( )"
+              />
+              <el-link
+                @click="getInsertFile( )"
+                :underline="false"
+              ><i class="el-icon-folder-opened"></i></el-link>
+            </el-form-item>
+            <el-form-item>
+              <el-row>
+                <el-col :span="2">
+                  <el-link
+                    class="elLink"
+                    :underline="false"
+                    @click="setAttachInsert"
+                  >{{$t('common.append')}}</el-link>
+                </el-col>
+                <el-col :span="2">
+                  <el-link
+                    class="elLink"
+                    :underline="false"
+                    @click="setAttachDel"
+                  >{{$t('common.delete')}}</el-link>
+                </el-col>
+              </el-row>
+            </el-form-item>
+          </el-form>
+          <el-table
+            :data="tableAttach"
+            ref="filterTable"
+            height="calc(100% - 130px)"
+            border
+            style="width: 100%"
+            @selection-change="handleAttatchChange"
+          >
+            <el-table-column
+              type="selection"
+              width="70"
+            />
+            <el-table-column
+              width="60"
+              type="index"
+              :label="$t('common.index')"
+            />
+            <el-table-column
+              prop="name"
+              :label="$t('common.fileNme')"
+            />
+
+            <el-table-column
+              prop="sizes"
+              :label="$t('common.size')"
+              :formatter="statSizeChange"
+            />
+            <el-table-column
+              align="center"
+              :label="$t('common.operate')"
+              min-width="100"
+            >
+              <template slot-scope="scope">
+                <el-link
+                  @click="setAttatchDetail(scope.$index, scope.row)"
+                  class="elLink"
+                >{{ $t('common.see') }}</el-link>
+
+              </template>
+            </el-table-column>
+          </el-table>
+        </div>
+      </el-dialog>
+      <!-- 鏁版嵁搴揟able淇℃伅 -->
       <div style="height:68vh">
         <el-form
           :model="formInline"
@@ -910,6 +1006,37 @@
         </div>
       </div>
     </el-dialog>
+    <el-dialog
+      title="棰勮"
+      :append-to-body="false"
+      :visible.sync="dialog.dialogVisible"
+      width="70%"
+      :close-on-click-modal="false"
+    >
+      <div
+        v-if="dialog.isPdf"
+        class="pdfClass"
+      >
+        <iframe
+          :src="dialog.src"
+          type="application/x-google-chrome-pdf"
+          width="100%"
+          height="100%"
+        >
+        </iframe>
+      </div>
+      <div
+        v-if="dialog.isJpg"
+        class="pdfClass"
+      >
+        <img
+          style="width:100%; height:100%"
+          :src="dialog.src"
+          alt=""
+        />
+      </div>
+    </el-dialog>
+
     <iframe
       id="downFrame"
       src=""
@@ -938,7 +1065,9 @@
   dataLib_selectDownloadFile,
   dataLib_selectPageCountForDownload,
   dataLib_selectPageAndCountByPid,
-  dataLib_selectMetaById
+  dataLib_selectMetaById,
+  dataLib_selectFiles,
+  dataLib_deletes
 } from '../../api/api';
 export default {
   components: {
@@ -966,7 +1095,7 @@
       }
     };
     return {
-
+      fromfile: { file: '' },
       fromSqlflag: false,
       filedsOption: [],
       condOption: [],
@@ -1055,6 +1184,20 @@
       },
       queryMetaFlag: false,
       metaDataTable: [],
+      upAttach: {
+        tabName: null,
+        eventid: null,
+      },
+      outerVisible: false,
+      tableAttach: [],
+      dataLib_selectFiles: [],
+      attacgSelection: [],
+      dialog: {
+        dialogVisible: false,
+        isPdf: false,
+        isJpg: false,
+        src: ''
+      }
     };
   },
   mounted() {
@@ -1064,9 +1207,119 @@
     this.signGetPublicKey();
   },
   methods: {
-    getAttachTable() {
-
+    // 闄勪欢=>琛ㄦ牸閫夋嫨
+    handleAttatchChange(val) {
+      this.attacgSelection = val;
     },
+    //闄勪欢=>鏂囦欢閫夋嫨
+    getInsertFile() {
+      $('#insertFile').click();
+    },
+    insertFile() {
+      var val = document.getElementById('insertFile').files;
+      if (!val || !val.length) return;
+      this.fromfile.file = val[0].name;
+    },
+    getAttachTable(index, row) {
+      if (row.eventid != null) {
+        this.upAttach.eventid = row.eventid;
+      } else {
+        this.upAttach.eventid = "";
+      }
+      this.outerVisible = true;
+      this.getAttacthFlieList();
+    },
+    //闄勪欢鍒楄〃鏌ヨ 
+    async getAttacthFlieList() {
+      var obj = this.upAttach;
+      const res = await dataLib_selectFiles(obj);
+      if (res.code != 200) {
+        this.$message.error('鍒楄〃璋冪敤澶辫触');
+        return
+      }
+      this.tableAttach = res.result;
+    },
+    refreshAttatchDetail() {
+      this.dialog.src = "";
+      this.dialog.dialogVisible = false;
+      this.dialog.isPdf = false;
+      this.dialog.isJpg = false;
+    },
+    //闄勪欢鏌ョ湅
+    setAttatchDetail(index, row) {
+
+      this.refreshAttatchDetail()
+      var name = row.name;
+      if (name.indexOf('.pdf') != -1) {
+        this.dialog.dialogVisible = true;
+        this.dialog.isPdf = true;
+        var url = BASE_URL + "/res/downloadForView?guid=" + row.guid + "&token=" + getToken();
+        this.dialog.src = url
+      } else if (name.indexOf('.jpg') != -1 || name.indexOf('.gif') != -1 || name.indexOf('.png') != -1 || name.indexOf('.jpeg') != -1) {
+        this.dialog.dialogVisible = true;
+        this.dialog.isJpg = true;
+        var url = BASE_URL + "/res/downloadForView?guid=" + row.guid + "&token=" + getToken();
+        this.dialog.src = url
+      }
+    },
+    //闄勪欢鍒櫎
+    async setAttachDel() {
+      var std = [];
+      for (var i in this.attacgSelection) {
+        std.push(this.attacgSelection[i].id);
+      }
+      const res = await dataLib_deletes({ ids: std.toString() });
+      if (res.code != 200) {
+        this.$message.error('鏂囦欢鍒犻櫎澶辫触');
+      }
+      this.getAttacthFlieList();
+    },
+    //闄勪欢鍒楄〃鏂板
+    setAttachInsert() {
+      var token = getToken();
+      var fs = document.getElementById("insertFile");
+      if (fs.files.length == 0) {
+
+        this.$message({
+          message: '璇烽�夋嫨瑕佷笂浼犵殑鏂囦欢锛�',
+          type: 'warning'
+        });
+        return;
+      }
+      const formData = new FormData()
+      for (var i = 0, c = fs.files.length; i < c; i++) {
+
+        formData.append('file', fs.files[i]); // fs.files[i].name,file
+      }
+
+      $.ajax(BASE_URL + "/dataQuery/uploadFiles?token=" + token + "&tabName=" + this.upAttach.tabName + "&eventid=" + this.upAttach.eventid, {
+        type: "post",
+        data: formData,
+        async: true,
+        cache: false,
+        processData: false,
+        contentType: false,
+        success: (rs) => {
+          this.$message({
+            message: '闄勪欢娣诲姞鎴愬姛',
+            type: 'success'
+          });
+          document.getElementById("insertFile").value = "";
+          this.fromfile = {
+            file: '',
+          }
+          this.getAttacthFlieList();
+        },
+        error: (e) => {
+          document.getElementById("insertFile").value = "";
+          this.fromfile = {
+            file: '',
+          }
+          this.$message.error('闄勪欢娣诲姞澶辫触');
+        }
+      });
+    },
+
     setRestMetaData() {
       this.fromQueryMeta.name = "";
       this.listMetaData.name = this.fromQueryMeta.name;
@@ -1434,6 +1687,7 @@
       this.listBankData.pageIndex = 1;
       this.listBankData.pageSize = 10;
       this.listBankData.title = res.tabDesc;
+      this.upAttach.tabName = res.ns + "." + res.tab;
       this.filedsLayer = this.getBankTableFiled();
       this.getCollapseTable(this.filedsLayer);
     },
@@ -1614,6 +1868,9 @@
     //鏍煎紡鍖栨椂闂�
     add0(m) {
       return m < 10 ? '0' + m : m;
+    },
+    statSizeChange(row, column) {
+      return this.stateFormatSizes(row.sizes)
     },
     stateFormatSizes(res) {
       if (res >= 1024) {
@@ -1903,5 +2160,10 @@
       justify-content: center;
     }
   }
+  .pdfClass {
+    height: 70vh;
+    width: 100%;
+    position: relative;
+  }
 }
 </style>
diff --git a/src/views/datamanage/dictionaryManage.vue b/src/views/datamanage/dictionaryManage.vue
index 0e20bcc..845acae 100644
--- a/src/views/datamanage/dictionaryManage.vue
+++ b/src/views/datamanage/dictionaryManage.vue
@@ -607,20 +607,7 @@
         insert: false,
         update: false,
       },
-      domainData: [
-        {
-          val: "鍩虹鏁版嵁",
-          children: [],
-        },
-        {
-          val: "涓氬姟鏁版嵁",
-          children: [],
-        },
-        {
-          val: "鍏冩暟鎹�",
-          children: [],
-        },
-      ],
+      domainData: [],
       defaultProps: {
         children: "children",
         label: "val",
@@ -787,31 +774,52 @@
       if (data.code != 200) {
         this.$message.error("涓嬫媺璋冪敤澶辫触");
       }
-      let bdres = data.result.filter((item) => item.ns == "bd");
-      let bsres = data.result.filter((item) => item.ns == "bs");
-      let mdres = data.result.filter((item) => item.ns == "md");
-      for (var i in bdres) {
-        // bdres[i].val = bdres[i].tabDesc + '(' + bdres[i].tab + ')';
-        bdres[i].val = bdres[i].tabDesc;
-      }
-      for (var i in bsres) {
-        // bsres[i].val = bsres[i].tabDesc + '(' + bsres[i].tab + ')';
-        bsres[i].val = bsres[i].tabDesc;
-      }
-      for (var i in mdres) {
-        // bsres[i].val = bsres[i].tabDesc + '(' + bsres[i].tab + ')';
-        mdres[i].val = mdres[i].tabDesc;
-      }
-      this.domainData[0].children = bdres;
-      this.domainData[1].children = bsres;
-      this.domainData[2].children = mdres;
-      var val = this.domainData[0].children;
-      this.insertform.tab = val[0].tab;
-      this.insertform.tabDesc = val[0].tabDesc;
-      this.insertform.ns = val[0].ns;
-      this.listData.tab = val[0].tab;
-      this.listData.ns = val[0].ns;
-      this.activeName = val[0].tab;
+      var val = data.result;
+      var std = [];
+      val.filter((item) => {
+        if (std.indexOf(item.bak) == -1) {
+          std.push(item.bak);
+          this.domainData.push(
+            {
+              val: item.bak,
+              children: [],
+            }
+          )
+        }
+      });
+      this.domainData.filter((item) => {
+        val.filter((res) => {
+          if (item.val === res.bak) {
+            res.val = res.tabDesc
+            item.children.push(res)
+          }
+        })
+      })
+      // let bdres = data.result.filter((item) => item.ns == "bd");
+      // let bsres = data.result.filter((item) => item.ns == "bs");
+      // let mdres = data.result.filter((item) => item.ns == "md");
+      // for (var i in bdres) {
+      //   // bdres[i].val = bdres[i].tabDesc + '(' + bdres[i].tab + ')';
+      //   bdres[i].val = bdres[i].tabDesc;
+      // }
+      // for (var i in bsres) {
+      //   // bsres[i].val = bsres[i].tabDesc + '(' + bsres[i].tab + ')';
+      //   bsres[i].val = bsres[i].tabDesc;
+      // }
+      // for (var i in mdres) {
+      //   // bsres[i].val = bsres[i].tabDesc + '(' + bsres[i].tab + ')';
+      //   mdres[i].val = mdres[i].tabDesc;
+      // }
+      // this.domainData[0].children = bdres;
+      // this.domainData[1].children = bsres;
+      // this.domainData[2].children = mdres;
+      var result = this.domainData[0].children;
+      this.insertform.tab = result[0].tab;
+      this.insertform.tabDesc = result[0].tabDesc;
+      this.insertform.ns = result[0].ns;
+      this.listData.tab = result[0].tab;
+      this.listData.ns = result[0].ns;
+      this.activeName = result[0].tab;
       this.startQueryNameData();
     },
   },
diff --git a/src/views/datamanage/domainManage.vue b/src/views/datamanage/domainManage.vue
index e99b85a..db8557e 100644
--- a/src/views/datamanage/domainManage.vue
+++ b/src/views/datamanage/domainManage.vue
@@ -1,15 +1,22 @@
 <template>
   <div class="domainBox">
-    <My-bread
-      :list="[
+    <My-bread :list="[
         `${$t('dataManage.dataManage')}`,
         `${$t('dataManage.rangeManage')}`,
-      ]"
-    ></My-bread>
+      ]"></My-bread>
     <el-divider />
     <div class="mainBox">
-      <div class="leftTree subpage_Div" style="border: 1px solid #dcdfe6;">
-        <el-input size="small" v-model="filterInput" style="width: 200px" :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valueone')" suffix-icon="el-icon-search"></el-input>
+      <div
+        class="leftTree subpage_Div"
+        style="border: 1px solid #dcdfe6;"
+      >
+        <el-input
+          size="small"
+          v-model="filterInput"
+          style="width: 200px"
+          :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valueone')"
+          suffix-icon="el-icon-search"
+        ></el-input>
         <div style="width: 450px">
           <el-tree
             :data="domainData"
@@ -23,14 +30,26 @@
       </div>
       <div class="right subpage_Div">
         <div class="inquire">
-          <el-form ref="queryForm" :model="queryForm" :inline="true">
-            <el-form-item :label="$t('dataManage.vmobj.keyword')" prop="name" >
-             <el-input
-                  size="small"
+          <el-form
+            ref="queryForm"
+            :model="queryForm"
+            :inline="true"
+          >
+            <el-form-item
+              :label="$t('dataManage.vmobj.keyword')"
+              prop="name"
+            >
+              <el-input
+                size="small"
                 v-model="queryForm.code"
                 :placeholder="$t('shuJuGuanLi.lable4')"
                 style="width: 200px"
-              ><i slot="suffix" class="el-icon-search"  @click="queryInfo('queryForm')" style="padding-right: 8px"></i></el-input>
+              ><i
+                  slot="suffix"
+                  class="el-icon-search"
+                  @click="queryInfo('queryForm')"
+                  style="padding-right: 8px"
+                ></i></el-input>
             </el-form-item>
             <el-form-item style="float: right">
               <el-button
@@ -39,17 +58,15 @@
                 icon="el-icon-plus"
                 size="small"
                 type="success"
-                >{{ $t("common.append") }}</el-button
-              >
+              >{{ $t("common.append") }}</el-button>
               <el-button
                 v-if="btnStatus.delete"
                 @click="deleteInfo"
                 type="danger"
                 size="small"
                 icon="el-icon-delete"
-                >{{ $t("common.delete") }}</el-button
-              >
-<!--              <el-button
+              >{{ $t("common.delete") }}</el-button>
+              <!--              <el-button
                 @click="queryInfo('queryForm')"
                 icon="el-icon-search"
                 size="small"
@@ -61,20 +78,25 @@
                 icon="el-icon-delete"
                 size="small"
                 type="info"
-                >{{ $t("common.empty") }}</el-button
-              >
+              >{{ $t("common.empty") }}</el-button>
             </el-form-item>
           </el-form>
         </div>
         <div class="dividing-line"></div>
-        <div class="table_box" style="height: calc(100% - 60px)">
+        <div
+          class="table_box"
+          style="height: calc(100% - 60px)"
+        >
           <el-table
             :data="tableData"
             @selection-change="handleSelectionChange"
             border
             height="calc(100% - 57px)"
           >
-            <el-table-column type="selection" width="50" />
+            <el-table-column
+              type="selection"
+              width="50"
+            />
             <el-table-column
               align="center"
               type="index"
@@ -122,27 +144,31 @@
               :label="$t('dataManage.domainManage.bak')"
             />
 
-            <el-table-column min-width="150" :label="$t('common.operate')">
+            <el-table-column
+              min-width="150"
+              :label="$t('common.operate')"
+            >
               <template slot-scope="scope">
                 <el-button
                   @click="showDetail(scope.row)"
                   type="primary"
                   size="small"
                   plain
-                  >{{ $t("common.details") }}</el-button
-                >
+                >{{ $t("common.details") }}</el-button>
                 <el-button
                   v-if="btnStatus.update"
                   type="warning"
                   @click="handleEdit(scope.$index, scope.row)"
                   size="small"
                   plain
-                  >{{ $t("common.update") }}</el-button
-                >
+                >{{ $t("common.update") }}</el-button>
               </template>
             </el-table-column>
           </el-table>
-          <div class="pagination_box" style="margin-top: 15px">
+          <div
+            class="pagination_box"
+            style="margin-top: 15px"
+          >
             <el-pagination
               @size-change="handleSizeChange"
               @current-change="handleCurrentChange"
@@ -157,11 +183,20 @@
         </div>
       </div>
     </div>
-    <div class="infoBox_box" v-show="showinfoBox">
+    <div
+      class="infoBox_box"
+      v-show="showinfoBox"
+    >
       <div class="infoBox subpage_Div box_div">
-        <div slot="header" class="clearfix">
+        <div
+          slot="header"
+          class="clearfix"
+        >
           <span>{{ $t("common.details") }}</span>
-          <div style="float: right; cursor: pointer" @click="closeDetial">
+          <div
+            style="float: right; cursor: pointer"
+            @click="closeDetial"
+          >
             <i class="el-icon-close"></i>
           </div>
         </div>
@@ -217,75 +252,114 @@
       :visible.sync="dialogFormVisible"
       :before-close="handleClose"
     >
-    <div style="height: 500px; overflow: auto">
-      <el-form :model="editForm" ref="editForm" label-position="top">
-        <el-form-item
-          :label="$t('dataManage.domainManage.domName')"
-          :label-width="formLabelWidth"
+      <div style="height: 500px; overflow: auto">
+        <el-form
+          :model="editForm"
+          ref="editForm"
+          label-position="top"
         >
-          <el-select
-            :popper-append-to-body="false"
-            style="width:85%"
-            v-model="editForm.domName"
-            placeholder="璇烽�夋嫨"
+          <el-form-item
+            :label="$t('dataManage.domainManage.domName')"
+            :label-width="formLabelWidth"
           >
-            <el-option
-              v-for="item in domainOptions"
-              :key="item.value"
-              :label="item.label"
-              :value="item.value"
+            <el-select
+              :popper-append-to-body="false"
+              style="width:85%"
+              v-model="editForm.domName"
+              placeholder="璇烽�夋嫨"
             >
-            </el-option>
-          </el-select>
-          <!-- <el-input v-model="editForm.domName" autocomplete="off"></el-input> -->
-        </el-form-item>
-        <el-form-item
-          :label="$t('dataManage.domainManage.domDesc')"
-          :label-width="formLabelWidth"
-        >
-          <el-input v-model="editForm.domDesc" autocomplete="off" style="width:85%"></el-input>
-        </el-form-item>
+              <el-option
+                v-for="item in domainOptions"
+                :key="item.value"
+                :label="item.label"
+                :value="item.value"
+              >
+              </el-option>
+            </el-select>
+            <!-- <el-input v-model="editForm.domName" autocomplete="off"></el-input> -->
+          </el-form-item>
+          <el-form-item
+            :label="$t('dataManage.domainManage.domDesc')"
+            :label-width="formLabelWidth"
+          >
+            <el-input
+              v-model="editForm.domDesc"
+              autocomplete="off"
+              style="width:85%"
+            ></el-input>
+          </el-form-item>
 
-        <el-form-item
-          :label="$t('dataManage.domainManage.domCode')"
-          :label-width="formLabelWidth"
-        >
-          <el-input v-model="editForm.domCode" autocomplete="off" style="width:85%"></el-input>
-        </el-form-item>
-        <el-form-item
-          :label="$t('dataManage.domainManage.codeDesc')"
-          :label-width="formLabelWidth"
-        >
-          <el-input v-model="editForm.codeDesc" autocomplete="off" style="width:85%"></el-input>
-        </el-form-item>
-        <el-form-item
-          :label="$t('dataManage.domainManage.bsm')"
-          :label-width="formLabelWidth"
-        >
-          <el-input v-model="editForm.bsm" autocomplete="off" style="width:85%"></el-input>
-        </el-form-item>
-        <el-form-item
-          :label="$t('dataManage.domainManage.level')"
-          :label-width="formLabelWidth"
-        >
-          <el-input v-model="editForm.level" autocomplete="off" style="width:85%"></el-input>
-        </el-form-item>
-        <el-form-item
-          :label="$t('dataManage.domainManage.orderid')"
-          :label-width="formLabelWidth"
-        >
-          <el-input v-model="editForm.orderid" autocomplete="off" style="width:85%"></el-input>
-        </el-form-item>
-        <el-form-item
-          :label="$t('dataManage.domainManage.bak')"
-          :label-width="formLabelWidth"
-        >
-          <el-input v-model="editForm.bak" autocomplete="off" style="width:85%"></el-input>
-        </el-form-item>
-      </el-form>
-    </div>
-      <div v-if="behavior == '淇敼淇℃伅'" slot="footer" class="dialog-footer">
-        <el-button size="small" @click="cancelEdit()">{{
+          <el-form-item
+            :label="$t('dataManage.domainManage.domCode')"
+            :label-width="formLabelWidth"
+          >
+            <el-input
+              v-model="editForm.domCode"
+              autocomplete="off"
+              style="width:85%"
+            ></el-input>
+          </el-form-item>
+          <el-form-item
+            :label="$t('dataManage.domainManage.codeDesc')"
+            :label-width="formLabelWidth"
+          >
+            <el-input
+              v-model="editForm.codeDesc"
+              autocomplete="off"
+              style="width:85%"
+            ></el-input>
+          </el-form-item>
+          <el-form-item
+            :label="$t('dataManage.domainManage.bsm')"
+            :label-width="formLabelWidth"
+          >
+            <el-input
+              v-model="editForm.bsm"
+              autocomplete="off"
+              style="width:85%"
+            ></el-input>
+          </el-form-item>
+          <el-form-item
+            :label="$t('dataManage.domainManage.level')"
+            :label-width="formLabelWidth"
+          >
+            <el-input
+              v-model="editForm.level"
+              autocomplete="off"
+              style="width:85%"
+            ></el-input>
+          </el-form-item>
+          <el-form-item
+            :label="$t('dataManage.domainManage.orderid')"
+            :label-width="formLabelWidth"
+          >
+            <el-input
+              v-model="editForm.orderid"
+              autocomplete="off"
+              style="width:85%"
+            ></el-input>
+          </el-form-item>
+          <el-form-item
+            :label="$t('dataManage.domainManage.bak')"
+            :label-width="formLabelWidth"
+          >
+            <el-input
+              v-model="editForm.bak"
+              autocomplete="off"
+              style="width:85%"
+            ></el-input>
+          </el-form-item>
+        </el-form>
+      </div>
+      <div
+        v-if="behavior == '淇敼淇℃伅'"
+        slot="footer"
+        class="dialog-footer"
+      >
+        <el-button
+          size="small"
+          @click="cancelEdit()"
+        >{{
           $t("common.reset")
         }}</el-button>
         <el-button
@@ -294,11 +368,18 @@
           type="info"
           @click="sendEdit('editForm')"
           v-loading.fullscreen.lock="fullscreenLoading"
-          >{{ $t("common.confirm") }}</el-button
-        >
+        >{{ $t("common.confirm") }}</el-button>
       </div>
-      <div v-else slot="footer" class="dialog-footer">
-        <el-button type="info" size="small" @click="cancelAdd('editForm')">{{
+      <div
+        v-else
+        slot="footer"
+        class="dialog-footer"
+      >
+        <el-button
+          type="info"
+          size="small"
+          @click="cancelAdd('editForm')"
+        >{{
           $t("common.reset")
         }}</el-button>
         <el-button
@@ -306,8 +387,7 @@
           class="primary"
           @click="sendAdd('editForm')"
           v-loading.fullscreen.lock="fullscreenLoading"
-          >{{ $t("common.confirm") }}</el-button
-        >
+        >{{ $t("common.confirm") }}</el-button>
       </div>
     </el-dialog>
   </div>
@@ -364,18 +444,7 @@
         update: false,
       },
       domainData: [
-        {
-          val: "鍩虹鏁版嵁",
-          children: [],
-        },
-        {
-          val: "涓氬姟鏁版嵁",
-          children: [],
-        },
-        {
-          val: "鍏冩暟鎹�",
-          children: [],
-        },
+
       ],
       defaultProps: {
         children: "children",
@@ -400,6 +469,9 @@
       return data.val.indexOf(value) !== -1;
     },
     async toggleTabs(data) {
+      if (data.children != null) {
+        return
+      }
       this.fullscreenLoading = true;
       this.listData.ns = data.ns;
       this.listData.tab = data.tab;
@@ -442,24 +514,27 @@
     },
     getAllTabelData() {
       getDomainTabs().then((res) => {
-        let bdres = res.result.filter((item) => item.ns == "bd");
-        let bsres = res.result.filter((item) => item.ns == "bs");
-        let mdres = res.result.filter((item) => item.ns == "md");
-        for (var i in bdres) {
-          // bdres[i].val = bdres[i].tabDesc + '(' + bdres[i].tab + ')';
-          bdres[i].val = bdres[i].tabDesc;
-        }
-        for (var i in bsres) {
-          // bsres[i].val = bsres[i].tabDesc + '(' + bsres[i].tab + ')';
-          bsres[i].val = bsres[i].tabDesc;
-        }
-        for (var i in mdres) {
-          // bsres[i].val = bsres[i].tabDesc + '(' + bsres[i].tab + ')';
-          mdres[i].val = mdres[i].tabDesc;
-        }
-        this.domainData[0].children = bdres;
-        this.domainData[1].children = bsres;
-        this.domainData[2].children = mdres;
+        var val = res.result;
+        var std = [];
+        val.filter((item) => {
+          if (std.indexOf(item.bak) == -1) {
+            std.push(item.bak);
+            this.domainData.push(
+              {
+                val: item.bak,
+                children: [],
+              }
+            )
+          }
+        });
+        this.domainData.filter((item) => {
+          val.filter((res) => {
+            if (item.val === res.bak) {
+              res.val = res.tabDesc
+              item.children.push(res)
+            }
+          })
+        })
       });
     },
     handleSelectionChange(val) {
@@ -588,7 +663,7 @@
           this.editForm = {};
           done();
         })
-        .catch((_) => {});
+        .catch((_) => { });
     },
     // 鏌ョ湅鐣岄潰
     showDetail(row) {
@@ -682,7 +757,7 @@
   watch: {
     pathId: {
       immediate: true,
-      handler(val) {},
+      handler(val) { },
     },
     filterInput(val) {
       this.$refs.tree.filter(val);

--
Gitblit v1.9.3