瀏覽代碼

模版导入

gangyj 3 年之前
父節點
當前提交
4d91bda695
共有 2 個文件被更改,包括 36 次插入39 次删除
  1. 8 0
      src/api/manager/wbstree.js
  2. 28 39
      src/views/manager/wbsinfo/edit.vue

+ 8 - 0
src/api/manager/wbstree.js

@@ -124,3 +124,11 @@ export const importWbsTree = (froms) => {
   })
 }
 
+export const exportTemplate = () => {
+  return request({
+    url: '/api/blade-manager/wbsTree/export-template',
+    method: 'get',
+    responseType:'arraybuffer'
+  })
+}
+

+ 28 - 39
src/views/manager/wbsinfo/edit.vue

@@ -483,10 +483,9 @@
 <script>
   import {getLazytree,getDetail,update,selectByNodeTable,getAlltree,
             saveFormAndElement,selectFormElements,removeTableById,
-            importWbsTree} from "@/api/manager/wbstree";
+            importWbsTree,exportTemplate} from "@/api/manager/wbstree";
   import {saveElement,remove as removeElement,updateBatchElements,getTemplate,
           importWbsElement} from "@/api/manager/wbsformelement";
-  import {getList as getAttchFromOriginalName} from "@/api/resource/attach";
   import {getDictionary} from "@/api/system/dict";
   import {mapGetters} from "vuex";
   export default {
@@ -900,19 +899,6 @@
       importTemplate(data){
         this.importTemplateVisible = true;
         this.curTreeData = data;
-
-        if(!this.fileUrl){
-          getAttchFromOriginalName(1, 20, {
-            originalName:'WBS划分模板.xls'
-          }).then((res)=>{
-            if(res.data.data.records.length){
-              this.fileUrl = res.data.data.records[0].link;
-            }else{
-              this.fileUrl = '';
-            }
-            
-          })
-        }
         
       },
 
@@ -946,14 +932,10 @@
       },
 
       handleDownload() {
-        if(this.fileUrl){
-          window.open(this.fileUrl);
-        }else{
-          this.$message({
-            type: "warning",
-            message: "请先在附件管理上传【WBS划分模板.xls】文件"
-          });
-        }
+        //WBS划分模板
+        exportTemplate().then((res)=>{
+          this.downloadExcel(res.data,'WBS划分模板')
+        })
       },
 
       fileClick(){
@@ -990,22 +972,7 @@
       downloadTmp(){
         getTemplate().then((res)=>{
           //console.log(res)
-          let blob = new Blob([res.data], {
-                type: 'application/vnd.ms-excel'
-            });
-            //console.log(blob)
-            let filename = Date.parse(new Date()) + '.xls';
-            if (window.navigator.msSaveOrOpenBlob) {
-                // 兼容IE10
-                window.navigator.msSaveBlob(blob, filename);
-            } else {
-                //  兼容chrome/firefox
-                let aTag = document.createElement('a');
-                aTag.download = Date.parse(new Date()) + '.xls';
-                aTag.href = window.URL.createObjectURL(blob);
-                aTag.click();
-                URL.revokeObjectURL(aTag.href);
-            }
+          this.downloadExcel(res.data,'元素模板')
         })
       },
 
@@ -1041,6 +1008,28 @@
         this.$set(data, 'moreShow', value)
       },
 
+      downloadExcel(data,filename=''){
+          let blob = new Blob([data], {
+              type: 'application/vnd.ms-excel'
+          });
+          //console.log(blob)
+          if(!filename){
+            filename = Date.parse(new Date());
+          }
+          filename = filename+ '.xls';
+          if (window.navigator.msSaveOrOpenBlob) {
+              // 兼容IE10
+              window.navigator.msSaveBlob(blob, filename);
+          } else {
+              //  兼容chrome/firefox
+              let aTag = document.createElement('a');
+              aTag.download = filename;
+              aTag.href = window.URL.createObjectURL(blob);
+              aTag.click();
+              URL.revokeObjectURL(aTag.href);
+          }
+      },
+
       getDeptCategorylist(){
         if(this.deptCategorylist.length >1){
           return;