Procházet zdrojové kódy

专利清单的摘要视图下载PDF的优化

zhuliu před 1 rokem
rodič
revize
5d1e06ab9d

+ 2 - 2
src/utils/index.js

@@ -52,10 +52,10 @@ export const downLoadBase64 = (content, fileName) => {
   aLink.click();
 }
 
-export const downLoad2 = (guid) => {
+export const downLoad2 = (guid,fileName="download") => {
   const href = commonJS.checkViewer(guid)
   const anchor = document.createElement('a');
-  const fileName = 'download';
+  // const fileName = 'download';
   if ('download' in anchor) {
     anchor.href = href;
     anchor.setAttribute("download", fileName);

+ 20 - 4
src/views/project/patentCollection/components/views/Abstract.vue

@@ -41,7 +41,7 @@
                 </div>
                 <div class="patent-abstract-pdf-button-container">
                   <el-button class="width_100" size="small"
-                    type="primary" @click="handleDownload(patent)">PDF 下载</el-button>
+                    type="primary" :loading="patent.downLoadPDF" @click="handleDownload(patent)">PDF 下载</el-button>
                 </div>
               </td>
               <!-- 专利号 -->
@@ -313,6 +313,7 @@ export default {
         this.download(patent)
         return 
       }
+      this.$set(patent,'downLoadPDF',true)
       if(this.outside){
         var params = {
           appNo: patent.appNo,
@@ -322,7 +323,10 @@ export default {
           if (response.code == 200) {
             this.$set(patent, 'pdf', response.data)
             this.download(patent)
+            this.$set(patent,'downLoadPDF',false)
           }
+        }).catch(error=>{
+          this.$set(patent,'downLoadPDF',false)
         })
       }else{
         let params = {
@@ -333,17 +337,29 @@ export default {
           if (response.code == 200) {
             this.$set(patent, 'pdf', response.data)
             this.download(patent)
+            this.$set(patent,'downLoadPDF',false)
           }
+        }).catch(error=>{
+          this.$set(patent,'downLoadPDF',false)
         })
       }
-      // this.$emit('download', patent)
     },
     download(patent){
       if(patent.pdf && patent.pdf.length>0){
-        for(var i = 0;i<patent.pdf.length;i++){
-          downLoad2(patent.pdf[i].pdfGuid)
+        // for(var i = 0;i<patent.pdf.length;i++){
+        //   downLoad2(patent.pdf[i].pdfGuid)
+        // }
+        let obj = patent.pdf.find(item => {
+          return item.type == 1
+        })
+        if(obj){
+          downLoad2(obj.pdfGuid,patent.grantNo)
+        }else{
+          downLoad2(patent.pdf[0].pdfGuid,patent.publicNo)
         }
       }
+      this.$message.warning('该专利暂无说明书!')
+      return true
     },
     // 已读未读
     handleChangeRead(patent) {