浏览代码

【修改】bug

howie 3 年之前
父节点
当前提交
66959d3598

+ 13 - 1
src/mixin/print.js

@@ -108,6 +108,8 @@ export default {
      * @param {Array} ids
      */
     async getDateil(ids, funcType = 'getDeliverDetail') {
+      this.$startLoading()
+      let loadingLen
       // 兼容多个打印数据
       ids = ids instanceof Array ? ids : [ids]
       console.log(ids);
@@ -133,22 +135,27 @@ export default {
       }
 
       if (funcType === 'getDtailPrintDis') {
+
         const requestParams = params
         try {
           const { data } = await getDtailPrintDis(requestParams);
+          loadingLen = data.length
           for (let i = data.length; i > 0; i--) {
             setTimeout(async () => {
               const newData = data[i - 1];
               await this.mySetData(newData)
             }, 0);
+            loadingLen--
           }
         } catch (error) {
+          this.$endLoading()
           console.error('获取打印数据失败')
         }
 
       } else {
         // id 去重
         formatting = [...new Set(formatting)];
+        loadingLen = formatting.length
         for (let i = formatting.length; i > 0; i--) {
           // 延迟请求
           setTimeout(async () => {
@@ -157,12 +164,17 @@ export default {
               const { data } = await getDeliverDetail(requestParams);
               this.mySetData(data)
             } catch (error) {
+              this.$endLoading()
               console.error('获取打印数据失败')
+
             }
           }, 0);
+          loadingLen--
         }
       }
-
+      if (loadingLen ==0) {
+          return Promise.resolve()
+      }
 
     },
 

+ 4 - 2
src/views/supply/apply/components/apply_detail.vue

@@ -286,8 +286,10 @@ export default {
     toPrint() {
         this.printId = this.listItem.id;
       // this.isShowPrint = true;
-          this.getDateil(this.listItem.id,'getDeliverDetail');
-        this.$refs.preView.show(this.hiprintTemplate, this.outputData);
+          this.getDateil(this.listItem.id,'getDeliverDetail').then(res=>{
+            this.$endLoading()
+            this.$refs.preView.show(this.hiprintTemplate, this.outputData);
+          });
 
     },
 

+ 4 - 3
src/views/supply/apply/components/engin_detail.vue

@@ -334,9 +334,10 @@ export default {
     toPrint() {
       // this.initPrint()
       this.printId = this.listItem.id;
-      this.getDateil(this.listItem.id,'getDeliverDetail');
-        this.$refs.preView.show(this.hiprintTemplate, this.outputData);
-
+      this.getDateil(this.listItem.id,'getDeliverDetail').then(res=>{
+            this.$endLoading()
+            this.$refs.preView.show(this.hiprintTemplate, this.outputData);
+          });
     },
 
     backDetail() {

+ 4 - 2
src/views/supply/deliver/components/commerce_detail.vue

@@ -263,8 +263,10 @@ export default {
     // 点击打印
     toPrint() {
       this.printId = this.listItem.id;
-      this.getDateil(this.listItem.id,'getDeliverDetail');
-        this.$refs.preView.show(this.hiprintTemplate, this.outputData);
+      this.getDateil(this.listItem.id,'getDeliverDetail').then(res=>{
+            this.$endLoading()
+            this.$refs.preView.show(this.hiprintTemplate, this.outputData);
+          });
     },
 
     backDetail() {

+ 4 - 2
src/views/supply/deliver/components/deliver_detail.vue

@@ -265,9 +265,11 @@ export default {
     toPrint() {
       this.printId = this.listItem.id;
       // this.isShowPrint = true;]
-      this.getDateil(this.listItem.id,'getDeliverDetail');
-        this.$refs.preView.show(this.hiprintTemplate, this.outputData);
 
+        this.getDateil(this.listItem.id,'getDeliverDetail').then(res=>{
+            this.$endLoading()
+            this.$refs.preView.show(this.hiprintTemplate, this.outputData);
+          });
     },
 
     backDetail() {

+ 4 - 2
src/views/supply/deliver/components/home_detail.vue

@@ -262,8 +262,10 @@ export default {
     // 点击打印
     toPrint() {
       this.printId = this.listItem.id;
-      this.getDateil(this.listItem.id,'getDeliverDetail');
-        this.$refs.preView.show(this.hiprintTemplate, this.outputData);
+      this.getDateil(this.listItem.id,'getDeliverDetail').then(res=>{
+            this.$endLoading()
+            this.$refs.preView.show(this.hiprintTemplate, this.outputData);
+          });
     },
 
     backDetail() {

+ 10 - 4
src/views/supply/deliver/sum_list.vue

@@ -1124,8 +1124,10 @@ export default {
       this.queryItem = this.tableSelection;
       if (!this.tableSelection[0].printNum) {
         this.queryItem = this.tableSelection;
-        this.getDateil(this.tableSelection, "getDeliverDetail");
-        this.$refs.preView.show(this.hiprintTemplate, this.outputData);
+        this.getDateil(this.tableSelection, "getDeliverDetail").then(res=>{
+          this.$endLoading()
+          this.$refs.preView.show(this.hiprintTemplate, this.outputData);
+        });
       } else {
         this.queryItem = this.tableSelection;
         this.dialogForm.createMan = JSON.parse(
@@ -1151,9 +1153,13 @@ export default {
             password: this.dialogForm.password,
           };
           checkPassword(params).then((res) => {
+            this.getDateil(this.tableSelection, "getDeliverDetail").then(res=>{
+          this.$endLoading()
+          this.$refs.preView.show(this.hiprintTemplate, this.outputData);
+
+        });
             this.cancelDialogForm();
-            this.getDateil(this.tableSelection, "getDeliverDetail");
-            this.$refs.preView.show(this.hiprintTemplate, this.outputData);
+
           });
         }
       });

+ 10 - 4
src/views/supply/pickup/check.vue

@@ -743,8 +743,10 @@ export default {
           }
         });
       } else {
-        this.getDateil(this.tableSelection, "getDtailPrintDis");
-        this.$refs.preView.show(this.hiprintTemplate, this.outputData);
+        this.getDateil(this.tableSelection, "getDtailPrintDis").then(res=>{
+          this.$endLoading()
+          this.$refs.preView.show(this.hiprintTemplate, this.outputData);
+        });
       }
     },
 
@@ -763,10 +765,14 @@ export default {
             password: this.dialogForm.password,
           };
           checkPassword(params).then((res) => {
+            this.getDateil(this.tableSelection, "getDtailPrintDis").then(res=>{
+              this.$endLoading()
+              this.$refs.preView.show(this.hiprintTemplate, this.outputData);
+
+        });
             this.cancelDialogForm();
           });
-          this.getDateil(this.tableSelection, "getDtailPrintDis");
-          this.$refs.preView.show(this.hiprintTemplate, this.outputData);
+
         }
       });
     },