From d9c209aecf592804ba2d119a65eddc1f73bd913c Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期三, 28 二月 2024 15:09:03 +0800
Subject: [PATCH] 11
---
src/views/project/fund/applyDetail/index.vue | 161 +++++++++++++++++++++++++++++++++--------------------
1 files changed, 99 insertions(+), 62 deletions(-)
diff --git a/src/views/project/fund/applyDetail/index.vue b/src/views/project/fund/applyDetail/index.vue
index eb26d54..9880c69 100644
--- a/src/views/project/fund/applyDetail/index.vue
+++ b/src/views/project/fund/applyDetail/index.vue
@@ -1034,7 +1034,7 @@
type="border-card"
@tab-click="handleClick"
>
- <el-tab-pane label="鏅�氶檮浠�" :name="1">
+ <el-tab-pane label="鏅�氶檮浠�" name="common">
<div class="pdfimg">
<div class="box-pdf">
<div>
@@ -1095,7 +1095,7 @@
>
<template slot-scope="scope">
<el-button
- type="primary"
+ type="danger"
size="mini"
@click.native.prevent.stop="deletedowfile(scope.row)"
>鍒犻櫎</el-button
@@ -1139,7 +1139,7 @@
<div v-else class="pdfimgmins">{{ hintitle }}</div>
</div>
</el-tab-pane>
- <el-tab-pane label="鍙戠エ鏂囦欢" :name="2">
+ <el-tab-pane label="鍙戠エ鏂囦欢" name="invoice">
<div class="pdfimg">
<div class="box-pdf">
<div>
@@ -1656,7 +1656,7 @@
invoicepdfimg: "",
invoicepdfimgsrcList: [],
invoDatatop: [],
- activeName: 1, //鏂囦欢绫诲瀷
+ activeName: "common", //鏂囦欢绫诲瀷
//涓婁紶闄勪欢璺緞
uploadFileUrl: process.env.VUE_APP_BASE_API + "/common/upload",
ICDtoken: getToken(),
@@ -3162,7 +3162,7 @@
handleUploadError() {},
remove(file, fileList) {
const rbDetails = [...this.rbDetails];
- if (this.activeName == 1) {
+ if (this.activeName == "common") {
this.fileListto.splice(this.fileListto.indexOf(file), 1);
rbDetails[this.atpresent].annexfilesList = this.fileListto;
} else {
@@ -3178,7 +3178,7 @@
};
const pdfimg = this.Networkheader + "/prod-api" + response.fileName;
//鑾峰彇绁ㄦ嵁淇℃伅浣嶇疆
- if (this.activeName == 1) {
+ if (this.activeName == "common") {
if (response.code == 200) {
this.previewpdf = true;
@@ -3262,29 +3262,54 @@
this.tableDatatop.push(row);
this.atpresent = index;
this.pdfVisible = true;
- console.log(this.fileListto, "this.fileListto");
- console.log(this.invoicefileListto, "this.invoicefileListto");
+
if (this.rbDetails[index].annexfilesList) {
- this.rbDetails[index].annexfilesList.forEach((value, indexson) => {
- const pdfimg = this.Networkheader + "/prod-api" + value.url;
- fetch(pdfimg, config)
- .then(response => response.blob())
- .then(blob => {
- // 灏嗚幏鍙栫殑鏁版嵁娴佽浆鎹负URL
- this.fileListto.push({
- name: value.name,
- url: URL.createObjectURL(blob)
+ // this.rbDetails[index].annexfilesList.forEach((value, indexson) => {
+ // const pdfimg = this.Networkheader + "/prod-api" + value.url;
+ // fetch(pdfimg, config)
+ // .then(response => response.blob())
+ // .then(blob => {
+ // // 灏嗚幏鍙栫殑鏁版嵁娴佽浆鎹负URL
+ // this.fileListto.push({
+ // name: value.name,
+ // url: URL.createObjectURL(blob)
+ // });
+ // if (this.fileListto.length == 1) {
+ // this.pdfimg = URL.createObjectURL(blob);
+ // }
+ // this.pdfimgsrcList.push(URL.createObjectURL(blob));
+ // })
+ // .catch(error => {
+ // console.error("Error loading image", error);
+ // return;
+ // });
+ // });
+
+ const fetchPromises = this.rbDetails[index].annexfilesList.map(
+ (value, indexson) => {
+ const pdfimg = this.Networkheader + "/prod-api" + value.url;
+ return fetch(pdfimg, config)
+ .then(response => response.blob())
+ .then(blob => {
+ return {
+ name: value.name,
+ url: URL.createObjectURL(blob)
+ };
+ })
+ .catch(error => {
+ console.error("Error loading image", error);
+ return null;
});
- if (this.fileListto.length == 1) {
- this.pdfimg = URL.createObjectURL(blob);
- }
- this.pdfimgsrcList.push(URL.createObjectURL(blob));
- })
- .catch(error => {
- console.error("Error loading image", error);
- return;
- });
+ }
+ );
+
+ Promise.all(fetchPromises).then(fileListto => {
+ this.fileListto = fileListto.filter(item => item !== null);
+ this.pdfimg = this.fileListto[0].url;
+ console.log(this.pdfimg, "pdfimg");
+ this.pdfimgsrcList = this.fileListto.map(item => item.url);
});
+
this.previewpdf = true;
} else {
this.fileListto = [];
@@ -3293,26 +3318,31 @@
}
//鍙戠エ
if (this.rbDetails[index].invoicefilesList) {
- this.rbDetails[index].invoicefilesList.forEach((value, indexson) => {
- const pdfimg = this.Networkheader + "/prod-api" + value.url;
- fetch(pdfimg, config)
- .then(response => response.blob())
- .then(blob => {
- // 灏嗚幏鍙栫殑鏁版嵁娴佽浆鎹负URL
- this.invoicefileListto.push({
- name: value.name,
- url: URL.createObjectURL(blob)
+ const fetchPromises = this.rbDetails[index].invoicefilesList.map(
+ (value, indexson) => {
+ const pdfimg = this.Networkheader + "/prod-api" + value.url;
+ return fetch(pdfimg, config)
+ .then(response => response.blob())
+ .then(blob => {
+ return {
+ name: value.name,
+ url: URL.createObjectURL(blob)
+ };
+ })
+ .catch(error => {
+ console.error("Error loading image", error);
+ return null;
});
- if (this.invoicefileListto.length == 1) {
- this.invoicepdfimg = URL.createObjectURL(blob);
- }
- this.invoicepdfimgsrcList.push(URL.createObjectURL(blob));
- })
- .catch(error => {
- console.error("Error loading image", error);
- return;
- });
+ }
+ );
+
+ Promise.all(fetchPromises).then(invoicefileListto => {
+ this.invoicefileListto = invoicefileListto.filter(item => item !== null);
+ this.invoicepdfimg = this.invoicefileListto[0].url;
+ console.log(this.invoicepdfimg, "invoicepdfimg");
+ this.invoicepdfimgsrcList = this.invoicefileListto.map(item => item.url);
});
+
this.previewpdf = true;
} else {
this.invoicefileListto = [];
@@ -3320,16 +3350,18 @@
this.pdftitle = "";
}
- if (this.activeName == 1) {
+ if (this.activeName == "common") {
this.pdftitle = "鍏�" + this.pdfimgsrcList.length + "椤�";
} else {
this.pdftitle = "鍏�" + this.invoicepdfimgsrcList.length + "椤�";
}
+ console.log(this.fileListto, "this.fileListto");
+ console.log(this.rbDetails[index].annexfilesList, "annexfilesList");
},
// 鐐瑰嚮宸蹭笂浼犳枃浠�
downFile(item) {
- if (this.activeName == 1) {
+ if (this.activeName == "common") {
this.pdftitle =
"鍏�" + this.pdfimgsrcList.length + "椤癸紝褰撳墠閫変腑" + item.name;
let name = item.name.split(".");
@@ -3377,7 +3409,7 @@
},
// 鍙戠エ鍒囨崲
handleClick(tab, event) {
- if (this.activeName == 1) {
+ if (this.activeName == "common") {
this.pdftitle = "鍏�" + this.pdfimgsrcList.length + "椤�";
} else {
this.pdftitle = "鍏�" + this.invoicepdfimgsrcList.length + "椤�";
@@ -3387,16 +3419,14 @@
deletedowfile(row) {
console.log(row);
let indexvalue = "";
- if (this.activeName == 1) {
+ if (this.activeName == "common") {
const indexlist = this.getIndexInArray(this.pdfimgsrcList, row.url);
this.pdfimgsrcList.splice(indexlist, 1);
const index = this.getIndexInArray(this.fileListto, row);
this.fileListto.splice(index, 1);
console.log(this.rbDetails[this.atpresent].annexfilesList);
- indexvalue = this.rbDetails[this.atpresent].annexfilesList.find(
- (item, index) => {
- return item.name == row.name;
- }
+ indexvalue = this.rbDetails[this.atpresent].annexfilesList.findIndex(
+ item => item.name == row.name
);
console.log(indexvalue, "鍒犻櫎绱㈠紩");
this.rbDetails[this.atpresent].annexfilesList.splice(indexvalue, 1);
@@ -3409,10 +3439,8 @@
const index = this.getIndexInArray(this.invoicefileListto, row);
this.invoicefileListto.splice(index, 1);
console.log(this.rbDetails[this.atpresent].invoicefilesList);
- indexvalue = this.rbDetails[this.atpresent].invoicefilesList.find(
- (item, index) => {
- return item.name == row.name;
- }
+ indexvalue = this.rbDetails[this.atpresent].invoicefilesList.findIndex(
+ item => item.name == row.name
);
console.log(indexvalue, "鍒犻櫎绱㈠紩");
this.rbDetails[this.atpresent].invoicefilesList.splice(indexvalue, 1);
@@ -3420,11 +3448,14 @@
},
// 鐐瑰嚮涓婄Щ
moveupdowfile(row) {
- if (this.activeName == 1) {
- const index = this.getIndexInArray(this.fileListto, row);
+ if (this.activeName == "common") {
+ const index = this.fileListto.findIndex(item => item.name == row.name);
const item = this.fileListto.splice(index, 1)[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓�
this.fileListto.splice(index - 1, 0, item); // 灏唅tem鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣�
- const indexann = this.rbDetails[this.atpresent].annexfilesList.findIndex(item => item.name == row.name);
+
+ const indexann = this.rbDetails[
+ this.atpresent
+ ].annexfilesList.findIndex(item => item.name == row.name);
const itemann = this.rbDetails[this.atpresent].annexfilesList.splice(
indexann,
1
@@ -3434,13 +3465,19 @@
0,
itemann
); // 灏唅temann鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣�
-
+ console.log(indexann, "indexann");
+ console.log(index, "index");
} else {
- const index = this.getIndexInArray(this.invoicefileListto, row);
+ const index = this.invoicefileListto.findIndex(
+ item => item.name == row.name
+ );
+
const item = this.invoicefileListto.splice(index, 1)[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓�
this.invoicefileListto.splice(index - 1, 0, item); // 灏唅tem鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣�
- const indexinvo = this.rbDetails[this.atpresent].invoicefilesList.findIndex(item => item.name == row.name);
+ const indexinvo = this.rbDetails[
+ this.atpresent
+ ].invoicefilesList.findIndex(item => item.name == row.name);
const iteminvo = this.rbDetails[this.atpresent].invoicefilesList.splice(
indexinvo,
1
--
Gitblit v1.9.3