Переглянути джерело

修改工程部署下载方法

xuezizhuo 1 рік тому
батько
коміт
37667ea699

+ 2 - 1
zkqy-ui/src/api/system/engineering.js

@@ -47,6 +47,7 @@ export function delEngineering(id) {
 export function downloadEngineering() {
   return request({
     url: '/system/engineering/download',
-    method: 'get'
+    method: 'get',
+    responseType: 'blob'
   })
 }

+ 60 - 22
zkqy-ui/src/views/system/engineeringManage/index.vue

@@ -30,10 +30,12 @@
           icon="el-icon-search"
           size="mini"
           @click="handleQuery"
-          >搜索</el-button
+        >搜索
+        </el-button
         >
         <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
-          >重置</el-button
+        >重置
+        </el-button
         >
       </el-form-item>
     </el-form>
@@ -47,7 +49,8 @@
           size="mini"
           @click="handleAdd"
           v-hasPermi="['system:engineering:add']"
-          >新增</el-button
+        >新增
+        </el-button
         >
       </el-col>
       <el-col :span="1.5">
@@ -59,7 +62,8 @@
           :disabled="single"
           @click="handleUpdate"
           v-hasPermi="['system:engineering:edit']"
-          >修改</el-button
+        >修改
+        </el-button
         >
       </el-col>
       <el-col :span="1.5">
@@ -71,7 +75,8 @@
           :disabled="multiple"
           @click="handleDelete"
           v-hasPermi="['system:engineering:remove']"
-          >删除</el-button
+        >删除
+        </el-button
         >
       </el-col>
       <el-col :span="1.5">
@@ -82,7 +87,8 @@
           size="mini"
           @click="handleExport"
           v-hasPermi="['system:engineering:export']"
-          >导出</el-button
+        >导出
+        </el-button
         >
       </el-col>
       <el-col :span="1.5">
@@ -91,9 +97,10 @@
           plain
           icon="el-icon-download"
           size="mini"
-          @click="handleDownload"
+          @click="handleDownloadEnd"
           v-hasPermi="['system:engineering:download']"
-          >下载</el-button
+        >下载
+        </el-button
         >
       </el-col>
       <right-toolbar
@@ -107,11 +114,11 @@
       :data="engineeringList"
       @selection-change="handleSelectionChange"
     >
-      <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="编号" align="center" prop="id" />
+      <el-table-column type="selection" width="55" align="center"/>
+      <el-table-column label="编号" align="center" prop="id"/>
       <!-- <el-table-column label="工程key" align="center" prop="engineeringKey" /> -->
-      <el-table-column label="工程名称" align="center" prop="engineeringName" />
-      <el-table-column label="下载次数" align="center" prop="downloadNumber" />
+      <el-table-column label="工程名称" align="center" prop="engineeringName"/>
+      <el-table-column label="下载次数" align="center" prop="downloadNumber"/>
       <el-table-column
         label="下载时间"
         align="center"
@@ -122,7 +129,7 @@
           <span>{{ parseTime(scope.row.downloadTime, "{y}-{m}-{d}") }}</span>
         </template>
       </el-table-column>
-      <el-table-column label="更新时间" align="center" prop="updateTime" />
+      <el-table-column label="更新时间" align="center" prop="updateTime"/>
       <!-- <el-table-column label="租户编号" align="center" prop="tenantId" />
       <el-table-column label="备注" align="center" prop="remark" />
       <el-table-column label="创建者ID" align="center" prop="createById" />
@@ -145,7 +152,7 @@
                   icon="el-icon-edit"
                   @click="handleUpdate(scope.row)"
                   v-hasPermi="['system:engineering:edit']"
-                  >修改
+                >修改
                 </el-button>
               </el-dropdown-item>
               <el-dropdown-item>
@@ -155,7 +162,7 @@
                   icon="el-icon-delete"
                   @click="handleDelete(scope.row)"
                   v-hasPermi="['system:engineering:remove']"
-                  >删除
+                >删除
                 </el-button>
               </el-dropdown-item>
             </el-dropdown-menu>
@@ -201,7 +208,7 @@
           </el-date-picker>
         </el-form-item>
         <el-form-item label="更新时间" prop="updateTime">
-          <el-input v-model="form.updateTime" placeholder="请输入修改时间" />
+          <el-input v-model="form.updateTime" placeholder="请输入修改时间"/>
         </el-form-item>
         <!-- <el-form-item label="租户编号" prop="tenantId">
           <el-input v-model="form.tenantId" placeholder="请输入租户编号" />
@@ -210,7 +217,7 @@
           <el-input v-model="form.remark" placeholder="请输入备注" />
         </el-form-item> -->
         <el-form-item label="是否删除" prop="delFlag">
-          <el-input v-model="form.delFlag" placeholder="请输入是否删除" />
+          <el-input v-model="form.delFlag" placeholder="请输入是否删除"/>
         </el-form-item>
         <!--  <el-form-item label="创建者ID" prop="createById">
           <el-input v-model="form.createById" placeholder="请输入创建者ID" />
@@ -228,15 +235,15 @@
 </template>
 
 <script>
-import { Message, Loading } from "element-ui";
+import {Message, Loading} from "element-ui";
 import service from "@/utils/request";
-import { tansParams, blobValidate } from "@/utils/zkqy";
+import {tansParams, blobValidate} from "@/utils/zkqy";
 import {
   listEngineering,
   getEngineering,
   delEngineering,
   addEngineering,
-  updateEngineering,
+  updateEngineering, downloadEngineering,
 } from "@/api/system/engineering";
 
 export default {
@@ -284,6 +291,36 @@ export default {
     this.getList();
   },
   methods: {
+    handleDownloadEnd(row) {
+      this.loading = true
+      let applicationType = "application/zip"
+      var fileTheName = "123";
+
+      downloadEngineering().then(res=>{
+        if (res) {
+          const content = res;
+          const blob = new Blob([content], {type: applicationType})
+          const fileName = fileTheName;
+          if ("download" in document.createElement("a")) {
+            // 非IE下载
+            const elink = document.createElement("a");
+            elink.download = fileName;
+            elink.style.display = "none";
+            elink.href = URL.createObjectURL(blob);
+            document.body.appendChild(elink);
+            elink.click();
+            URL.revokeObjectURL(elink.href); // 释放URL 对象
+            document.body.removeChild(elink);
+            this.loading = false
+          } else {
+            // IE10+下载
+            navigator.msSaveBlob(blob, fileName);
+            this.loading = false
+          }
+        }
+      })
+
+    },
     /** 查询工程部署列表 */
     getList() {
       this.loading = true;
@@ -382,7 +419,8 @@ export default {
           this.getList();
           this.$modal.msgSuccess("删除成功");
         })
-        .catch(() => {});
+        .catch(() => {
+        });
     },
     /** 导出按钮操作 */
     handleExport() {
@@ -415,7 +453,7 @@ export default {
         .get(url, params, {
           headers: {
             "Content-Disposition": `attachment;filename="${filename}"`,
-            "Content-Type": `application/octet-stream`,
+            "Content-Type": `application/zip`,
           },
           responseType: "blob",
         })