From 03e5e6dbf617b3557936b7ba80c625beea7f48af Mon Sep 17 00:00:00 2001
From: Surpriseplus <845948745@qq.com>
Date: 星期五, 10 二月 2023 11:11:29 +0800
Subject: [PATCH] 模板管理界面添加,样式修改

---
 src/views/Archive/index.vue |  219 ++++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 168 insertions(+), 51 deletions(-)

diff --git a/src/views/Archive/index.vue b/src/views/Archive/index.vue
index ccce285..916d7dd 100644
--- a/src/views/Archive/index.vue
+++ b/src/views/Archive/index.vue
@@ -1,41 +1,44 @@
 <template>
-  <div class="archive box_div">
+  <div
+    class="archive box_div"
+    v-loading="loading"
+    element-loading-background="rgba(0, 0, 0, 0.8)"
+  >
     <div class="top_header">
       <div class="top_left">
         <My-bread :list="[`${$t('synthesis.synthesis')}`, `${$t('synthesis.archive')}`]"></My-bread>
       </div>
-
     </div>
     <div class="box_item ">
-   
-        <div class="box_left">璧勬枡绫诲埆</div>
-        <div class="box_cont">
 
-          <div v-if="isShowFirstCheck">
-            <el-checkbox-group v-model="checkedDataType">
-              <el-checkbox
-                @change="handleCheckedDataTypeChange(item)"
-                v-for="(item, index)  in showList"
-                :label="item.name"
-                :key="index"
-              >{{item.name}}</el-checkbox>
-            </el-checkbox-group>
-          </div>
-          <div
-            v-if="!isShowFirstCheck"
-            class="menu_div"
-            v-for="(item, index) in showList"
-            :key="index"
-            @click="changeListDataType(item)"
-          >
+      <div class="box_left">璧勬枡绫诲埆</div>
+      <div class="box_cont">
 
-            <div
-              :class="{menuActive:dataTypeName == item.name}"
-              style="margin-left: 5px"
-            >{{ item.name }}</div>
-          </div>
+        <div v-if="isShowFirstCheck">
+          <el-checkbox-group v-model="checkedDataType">
+            <el-checkbox
+              @change="handleCheckedDataTypeChange(item)"
+              v-for="(item, index)  in showList"
+              :label="item.name"
+              :key="index"
+            >{{item.name}}</el-checkbox>
+          </el-checkbox-group>
         </div>
-       
+        <div
+          v-if="!isShowFirstCheck"
+          class="menu_div"
+          v-for="(item, index) in showList"
+          :key="index"
+          @click="changeListDataType(item)"
+        >
+
+          <div
+            :class="{menuActive:dataTypeName == item.name}"
+            style="margin-left: 5px"
+          >{{ item.name }}</div>
+        </div>
+      </div>
+
       <div class="box_right">
         <div
           class="menu_div subpage_Div"
@@ -265,14 +268,16 @@
       :title="dialogtitle"
       :visible.sync="dialogVisible"
       width="90%"
-      top="5vh"
+      top="10vh"
+      :modal="false"
+      style="z-index:999"
       :before-close="handleClose"
     >
       <!-- 鏉′欢-->
       <el-dialog
         width="37%"
         :visible.sync="conditionVisible"
-        append-to-body
+        :modal="false"
         title="鏌ヨ鏉′欢"
         :before-close="handleconditionClose"
       >
@@ -283,6 +288,7 @@
         >
           <el-form-item>
             <el-select
+              :popper-append-to-body="false"
               @change="fieldChange($event)"
               v-model="formSql.field"
             >
@@ -296,7 +302,10 @@
             </el-select>
           </el-form-item>
           <el-form-item>
-            <el-select v-model="formSql.condition">
+            <el-select
+              :popper-append-to-body="false"
+              v-model="formSql.condition"
+            >
               <el-option
                 v-for="item in condOption"
                 :key="item.value"
@@ -334,7 +343,6 @@
       <el-dialog
         width="30%"
         :visible.sync="innerVisible"
-        append-to-body
       >
         <div class="contentBox">
           <ul>
@@ -352,7 +360,7 @@
       <el-dialog
         width="30%"
         :visible.sync="outerVisible"
-        append-to-body
+        :modal="false"
       >
         <el-form
           :model="fromfile"
@@ -427,7 +435,7 @@
 
             </el-table>
           </el-form-item>
-          <el-form-item>
+          <!-- <el-form-item>
 
             <el-row :gutter="20">
               <el-col
@@ -444,6 +452,56 @@
                 >鍙栨秷</el-button>
               </el-col>
             </el-row>
+          </el-form-item> -->
+        </el-form>
+      </el-dialog>
+      <el-dialog
+        :title="$t('common.passworld')"
+        :visible.sync="downloadLogVisible"
+        width="30%"
+        top="10vh"
+        :modal="false"
+        :show-close="false"
+        :before-close="handleCloseDown"
+      >
+        <el-form
+          :model="codeForm"
+          :rules="rules"
+          ref="codeForm"
+          label-width="100px"
+          class="codeForm"
+        >
+          <el-form-item
+            :label="$t('common.passworld')"
+            prop="password"
+          >
+            <el-input
+              type="password"
+              v-model="codeForm.password"
+              show-password
+            ></el-input>
+          </el-form-item>
+          <el-form-item
+            :label="$t('common.SPassword')"
+            prop="repassword"
+          >
+            <el-input
+              type="password"
+              v-model="codeForm.repassword"
+              show-password
+            ></el-input>
+          </el-form-item>
+          <el-form-item>
+            <el-button
+              class="primary"
+              size="small"
+              @click="download1('codeForm')"
+            >{{$t('common.confirm')}}</el-button>
+            <el-button
+              type="info"
+              size="small"
+              @click="closeDown1('codeForm')"
+            >{{$t('common.cancel')}}</el-button>
           </el-form-item>
         </el-form>
       </el-dialog>
@@ -487,6 +545,13 @@
               icon="el-icon-search"
             >{{$t('common.reset')}}</el-button>
           </el-form-item>
+          <el-form-item>
+            <el-button
+              type="info"
+              @click="downloadForm()"
+              icon="el-icon-download"
+            >{{$t('common.download')}}</el-button>
+          </el-form-item>
         </el-form>
         <el-divider class="eldivider" />
         <div style="width:100%;height:400px;">
@@ -520,7 +585,7 @@
             ></el-table-column>
             <el-table-column
               v-if="isMenuActive"
-              min-width="80"
+              min-width="120"
               align="center"
               :label="$t('common.operate')"
             >
@@ -874,6 +939,8 @@
       }
     };
     return {
+      loading: false,
+      downloadLogVisible: false,
       downloadListVisible: false,
       data_type: [],
       project_name: [],
@@ -1025,12 +1092,67 @@
     },
   },
   methods: {
-    downloadMap(index, rows) {
-      //     var token = '?token=' + getToken();
-      //   
-      //  var url = BASE_URL + '/dataLib/downloadFile' + token + '&guid=' + rows.guid+ '&pwd='+  rows.pwd 
-      var token = getToken()
+    handleCloseDown() {
 
+    },
+    download1() {
+      if (this.codeForm.password == '' || this.codeForm.repassword == '') {
+        return this.$message.error('瀵嗙爜涓嶈兘涓虹┖');
+      }
+      if (this.codeForm.password != this.codeForm.repassword) {
+        return;
+      }
+      var passwordreg =
+        /^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z\W!@#$%^&*`~()\\-_+=,.?;<>]+$)(?![a-z0-9]+$)(?![a-z\W!@#$%^&*`~()\\-_+=,.?;<>]+$)(?![0-9\W!@#$%^&*`~()\\-_+=,.?;<>]+$)[a-zA-Z0-9\W!@#$%^&*`~()\\-_+=,.?;<>]{12,20}$/;
+      if (!passwordreg.test(this.codeForm.password)) {
+        return;
+      }
+      this.downloadLogVisible = false;
+      var obj = {
+        entities: [this.listTypeData.name], // bpachydrogeology,bhydrogeologyattach
+        filter: this.listTypeData.filter,
+        pwd: encrypt.encrypt(this.codeForm.password)
+      };
+      this.loading = true;
+      var that = this;
+      $.ajax({
+        url: BASE_URL + "/dataLib/downloadEntityReq?token=" + getToken(),
+        type: "POST",
+        data: JSON.stringify(obj),
+        dataType: 'json', // html銆乯son銆乯sonp銆乻cript銆乼ext
+        contentType: "application/json", // "application/x-www-form-urlencoded"
+        success: (data) => {
+          if (data.code == 200) {
+            that.downloadflie(data, this.codeForm.password)
+
+          }
+        },
+        error: function (e) {
+        }
+      });
+    },
+    downloadflie(data, pwd) {
+      this.codeForm = {
+        password: '',
+        repassword: '',
+      }
+      var token = getToken()
+      var url = BASE_URL + "/dataLib/downloadFile?token=" + token + "&guid=" + data.result + "&pwd=" + encrypt.encrypt(pwd);
+      $("#downFrame").attr("src", url).click();
+      this.loading = false;
+    },
+    closeDown1() {
+      this.codeForm = {
+        password: '',
+        repassword: '',
+      }
+      this.downloadLogVisible = false;
+    },
+    downloadForm() {
+      this.downloadLogVisible = true;
+    },
+    downloadMap(index, rows) {
+      var token = getToken()
       var url = BASE_URL + "/dataLib/downloadFile?token=" + token + "&guid=" + rows.guid + "&pwd=" + rows.pwd;
       $("#downFrame").attr("src", url).click();
     },
@@ -1062,7 +1184,7 @@
       }
 
       this.downloadTableData = data.result;
-      console.log(this.downloadTableData, data.result.length, this.downloadPage)
+
       this.downloadPage.count = data.count;
     },
     handleCheckedEntryNameChange(res) {
@@ -1434,6 +1556,7 @@
       this.getCollapseTable(this.filedsLayer);
 
     },
+
     async showDetail2(res) {
       var val = res.tab.split(".");
       const data = await dataLib_selectTabFields({
@@ -1948,7 +2071,7 @@
     width: calc(100% - 60px);
     height: auto;
     margin: 5px 30px;
-    padding-bottom:5px ;
+    padding-bottom: 5px;
     border-bottom: 1px solid #dcdfe6;
     align-items: center;
     display: flex;
@@ -2067,14 +2190,8 @@
 
     border-radius: 10px;
   }
-}
-
-.contentBox {
-  height: 60vh;
-  overflow: auto;
-}
-
-.downloadBox {
-  z-index: 999;
+  /deeep/.el-form-item {
+    margin-bottom: 0px;
+  }
 }
 </style>

--
Gitblit v1.9.3