From 271d931fc950745d37554528324cbc8a636d85c3 Mon Sep 17 00:00:00 2001
From: Surpriseplus <845948745@qq.com>
Date: 星期二, 29 十一月 2022 19:30:28 +0800
Subject: [PATCH] 1

---
 src/views/datamanage/metadataManage.vue |   73 +++++++++++++++++-------------------
 1 files changed, 35 insertions(+), 38 deletions(-)

diff --git a/src/views/datamanage/metadataManage.vue b/src/views/datamanage/metadataManage.vue
index 2f4d408..e151641 100644
--- a/src/views/datamanage/metadataManage.vue
+++ b/src/views/datamanage/metadataManage.vue
@@ -317,10 +317,10 @@
         class="codeForm"
       >
         <el-form-item :label="$t('common.passworld')" prop="password">
-          <el-input type="password" v-model="codeForm.password"></el-input>
+          <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"></el-input>
+          <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="download('codeForm')"
@@ -332,11 +332,11 @@
         </el-form-item>
       </el-form>
     </div>
+     <iframe id="downFrame" src="" style="display: none; border: 0; padding: 0; height: 0; width: 0"></iframe>
   </div>
 </template>
 
 <script>
-var encrypt = new JSEncrypt();
 import $ from 'jquery'
 import { getToken } from '@/utils/auth';
 import {
@@ -349,6 +349,8 @@
   selectdirTab,
   queryDepTree,
   meta_downloadReq,
+  sign_getPublicKey,
+  meta_selectDownloadFile
 } from '../../api/api';
 
 import MyBread from '../../components/MyBread.vue';
@@ -443,8 +445,17 @@
     this.getSelectDictTab();
     this.showPermsBtn();
     this.getQueryDepTree();
+    this.signGetPublicKey();
   },
+
   methods: {
+  async signGetPublicKey(){
+      const res = await sign_getPublicKey();
+       if (res && res.code == 200) {
+          window.encrypt = new JSEncrypt();
+          encrypt.setPublicKey(res.result);
+        }
+    },
     //鍗曚綅鍒楄〃鑾峰彇
     async getQueryDepTree() {
       const res = await queryDepTree();
@@ -749,45 +760,31 @@
         std.push(this.multipleSelection[i].id)
       }
       var obj = {
-        pwd: encrypt.encrypt("Test!321&456"),
+        pwd: encrypt.encrypt(this.codeForm.repassword),
         ids: std
       };
-       var token = getToken();
-      $.ajax({
-        url:BASE_URL+"/meta/downloadReq?token="+token,
-        type: 'post',
- dataType:  null,
-        data: JSON.stringify(obj),
-        success: function (res) {
-            debugger
-        },
-        error: function () {
+        const res = await meta_downloadReq(JSON.stringify(obj))
 
-        }
-      })
+       if(res.code!=200){
+        this.$message.error('涓嬭浇璇锋眰澶辫触');
+        return
+       }
 
-      //
-      //    $.ajax( BASE_URL+"/meta/downloadReq?token="+token, "POST", JSON.stringify(obj), null, null, function (rs) {
-      //   console.log(rs);
-      //   alert("code = " + rs.code + ", msg = " + rs.msg + ", result = " + rs.result);
-      // });
-      //   const res = await meta_downloadReq(JSON.stringify(obj))
-      //  debugger
-      //
-      //         $.ajax(BASE_URL + '/meta/downloadReq"?token=' + token, {
-      //         type: 'post',
-      //         data:  JSON.stringify(obj),
-      //         async: true,
-      //         cache: false,
-      //         processData: false,
-      //         contentType: false,
-      //         success: (rs) => {
-      //        debugger
-      //         },
-      //         error: (e) => {
-      //           console.log(e);
-      //         },
-      //       });
+       var downObj={
+        guid :res.result,
+        pwd :encodeURIComponent(encrypt.encrypt(this.codeForm.repassword))
+       }
+      const data = await meta_selectDownloadFile(downObj)
+
+      if(data.code !=200){
+        this.$message.error('涓嬭浇璇锋眰澶辫触');
+        return
+       }
+       var token = getToken()
+       var url = BASE_URL+"/meta/downloadFile?token=" +token+ "&guid=" + res.result + "&pwd=" +encodeURIComponent(encrypt.encrypt(this.codeForm.repassword));
+
+      $("#downFrame").attr("src", url).click();
+      this.closeDown();
     },
     closeDown() {
       this.showCodeBox = false;

--
Gitblit v1.9.3