11
WXL
2024-01-24 6301694e7740760917474044a729ffb6d4e39192
src/views/project/fund/performancedetails/index.vue
@@ -894,6 +894,7 @@
      unitforname: null,
      isIndeterminate: true,
      Performanceclass: 68,
      ICDtoken: getToken(),
      //是否是专家费的OPO审批人员
      ismanager: false,
@@ -1021,6 +1022,8 @@
        flowconclusion: null,
        fundid: null
      },
      // 网络请求头
      Networkheader: null,
      // 查询参数
      queryParams: {
@@ -2403,59 +2406,101 @@
        rbDetails[this.atpresent].invoicefilesList = this.invoicefileListto;
      }
    },
    // 获取请求头
    Getnetworkheader() {
      let string = window.location.href;
      if (string.includes("9091")) {
        const index = string.indexOf("9091");
        this.Networkheader = string.slice(0, index + 4); // 截取9091及其前部字符
      } else {
        const index = string.indexOf("8032");
        this.Networkheader = string.slice(0, index + 4); // 截取8032及其前部字符
      }
    },
    uploadSccess(response, file, fileList) {
      this.rbDetails;
      const config = {
        headers: { Authorization: "Bearer " + this.ICDtoken }
      };
      const pdfimg = this.Networkheader + "/prod-api" + response.fileName;
      //获取票据信息位置
      console.log(response);
      console.log(file);
      if (this.activeName == 1) {
        if (response.code == 200) {
          // this.form.filename = file.raw.name;
          this.previewpdf = true;
          fetch(pdfimg, config)
            .then(response => response.blob())
            .then(blob => {
              // 将获取的数据流转换为URL
              this.pdfimg = URL.createObjectURL(blob);
              this.pdfimgsrcList.push(URL.createObjectURL(blob));
              this.fileListto.push({
                name: file.name,
                url: URL.createObjectURL(blob)
              });
            })
            .catch(error => {
              console.error("Error loading image", error);
              return;
            });
          this.$modal.msgSuccess(response.msg);
          this.fileListto.push({
          console.log(this.fileListto, "新增后");
          if (!this.rbDetails[this.atpresent].annexfilesList) {
            this.rbDetails[this.atpresent].annexfilesList = [];
          }
          this.rbDetails[this.atpresent].annexfilesList.push({
            name: file.name,
            url: response.fileName
          });
          this.pdfimgsrcList.push(
            this.Networkheader + "/prod-api" + response.fileName
          );
          console.log(this.pdfimgsrcList);
          this.pdftitle = "共" + this.pdfimgsrcList.length + "项";
          this.pdfimg = this.Networkheader + "/prod-api" + response.fileName;
          this.rbDetails[this.atpresent].annexfilesList = this.fileListto;
        } else {
          console.log(response.msg);
        }
      } else {
        if (response.code == 200) {
          // this.form.filename = file.raw.name;
          this.previewpdf = true;
          fetch(pdfimg, config)
            .then(response => response.blob())
            .then(blob => {
              // 将获取的数据流转换为URL
              this.invoicepdfimg = URL.createObjectURL(blob);
              this.invoicepdfimgsrcList.push(URL.createObjectURL(blob));
              this.invoicefileListto.push({
                name: file.name,
                url: URL.createObjectURL(blob)
              });
            })
            .catch(error => {
              console.error("Error loading image", error);
              return;
            });
          this.$modal.msgSuccess(response.msg);
          this.invoicefileListto.push({
          console.log(this.invoicefileListto, "新增后");
          if (!this.rbDetails[this.atpresent].invoicefilesList) {
            this.rbDetails[this.atpresent].invoicefilesList = [];
          }
          this.rbDetails[this.atpresent].invoicefilesList.push({
            name: file.name,
            url: response.fileName
          });
          this.invoicepdfimgsrcList.push(
            this.Networkheader + "/prod-api" + response.fileName
          );
          console.log(this.invoicepdfimgsrcList);
          this.pdftitle = "共" + this.invoicepdfimgsrcList.length + "项";
          this.pdfimg = this.Networkheader + "/prod-api" + response.fileName;
          this.rbDetails[
            this.atpresent
          ].invoicefilesList = this.invoicefileListto;
          console.log(this.rbDetails[this.atpresent]);
        } else {
          console.log(response.msg);
        }
      }
    },
    // 点击票据
    Filepopup(index, rows, row) {
      const config = {
        headers: { Authorization: "Bearer " + this.ICDtoken }
      };
      this.tableDatatop = [];
      this.fileListto = [];
      this.invoicepdfimg = [];
      this.pdfimgsrcList = [];
      this.invoDatatop = [];
      this.invoicepdfimgsrcList = [];
@@ -2463,34 +2508,57 @@
      this.tableDatatop.push(row);
      this.atpresent = index;
      this.pdfVisible = true;
      console.log(this.rbDetails[index]);
      if (this.rbDetails[index].annexfilesList) {
        this.previewpdf = true;
        this.fileListto = this.rbDetails[index].annexfilesList;
        console.log(this.fileListto);
        this.pdfimg = this.Networkheader + "/prod-api" + this.fileListto[0].url;
        this.fileListto.forEach(item => {
          this.pdfimgsrcList.push(this.Networkheader + "/prod-api" + item.url);
        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;
            });
        });
        this.previewpdf = true;
      } else {
        this.fileListto = [];
        this.pdfimg = "";
        this.pdftitle = "";
      }
      // -发票文件
      //发票
      if (this.rbDetails[index].invoicefilesList) {
        this.previewpdf = true;
        this.invoicefileListto = this.rbDetails[index].invoicefilesList;
        console.log(this.invoicefileListto);
        this.invoicepdfimg =
          this.Networkheader + "/prod-api" + this.invoicefileListto[0].url;
        this.invoicefileListto.forEach(item => {
          this.invoicepdfimgsrcList.push(
            this.Networkheader + "/prod-api" + item.url
          );
        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)
              });
              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;
            });
        });
        console.log(this.invoicepdfimgsrcList);
        console.log(this.invoicepdfimg);
        this.previewpdf = true;
      } else {
        this.invoicefileListto = [];
        this.invoicepdfimg = "";
@@ -2507,7 +2575,6 @@
    // 点击已上传文件
    downFile(item) {
      if (this.activeName == 1) {
        console.log(item, "点击文件拿item");
        this.pdftitle =
          "共" + this.pdfimgsrcList.length + "项,当前选中" + item.name;
        let name = item.name.split(".");
@@ -2516,11 +2583,12 @@
          this.previewpdf = false;
          this.hintitle = "当前文件暂不支持预览";
        } else if (name[1] == "jpg" || "png") {
          console.log(item, "展示");
          this.previewpdf = true;
          if (item.url) {
            this.pdfimg = this.Networkheader + "/prod-api" + item.url;
            this.pdfimg = item.url;
          } else {
            this.pdfimg = this.Networkheader + "/prod-api" + item.response.url;
            this.pdfimg = "";
          }
        } else {
          this.hintitle = "当前文件暂不支持预览";
@@ -2528,7 +2596,6 @@
          this.previewpdf = false;
        }
      } else {
        console.log(item, "点击文件拿item");
        this.pdftitle =
          "共" + this.invoicepdfimgsrcList.length + "项,当前选中" + item.name;
        let name = item.name.split(".");
@@ -2539,12 +2606,9 @@
        } else if (name[1] == "jpg" || "png") {
          this.previewpdf = true;
          if (item.url) {
            this.invoicepdfimg = this.Networkheader + "/prod-api" + item.url;
            console.log(this.invoicepdfimg, "pdfimg");
            console.log(this.invoicepdfimgsrcList, "imglist");
            this.invoicepdfimg = item.url;
          } else {
            this.invoicepdfimg =
              this.Networkheader + "/prod-api" + item.response.url;
            this.invoicepdfimg = "";
          }
        } else {
          this.hintitle = "当前文件暂不支持预览";
@@ -2566,22 +2630,37 @@
    },
    // 点击删除
    deletedowfile(row) {
      console.log(row);
      let indexvalue = "";
      if (this.activeName == 1) {
        const indexlist = this.getIndexInArray(
          this.pdfimgsrcList,
          this.Networkheader + "/prod-api" + row.url
        );
        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;
          }
        );
        console.log(indexvalue, "删除索引");
        this.rbDetails[this.atpresent].annexfilesList.splice(indexvalue, 1);
      } else {
        const indexlist = this.getIndexInArray(
          this.invoicepdfimgsrcList,
          this.Networkheader + "/prod-api" + row.url
          row.url
        );
        this.invoicepdfimgsrcList.splice(indexlist, 1);
        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;
          }
        );
        console.log(indexvalue, "删除索引");
        this.rbDetails[this.atpresent].invoicefilesList.splice(indexvalue, 1);
      }
    },
    // 点击上移
@@ -2606,6 +2685,7 @@
  created() {
    //获取路由参数
    this.getroute();
    this.Getnetworkheader();
    this.getExternalList();
    this.getFeeUnitList();
    this.listperformance();