From 4fc9abfa57e81e83b74bdbd2e2f6d71d3500ef66 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期二, 19 九月 2023 11:26:07 +0800
Subject: [PATCH] 11

---
 src/views/project/travelexpenseapply/travelexpensedetail/index.vue |  141 +++++++++++++++++++++++++++++++++++++----------
 1 files changed, 111 insertions(+), 30 deletions(-)

diff --git a/src/views/project/travelexpenseapply/travelexpensedetail/index.vue b/src/views/project/travelexpenseapply/travelexpensedetail/index.vue
index 00431e3..b2a3e5a 100644
--- a/src/views/project/travelexpenseapply/travelexpensedetail/index.vue
+++ b/src/views/project/travelexpenseapply/travelexpensedetail/index.vue
@@ -941,6 +941,36 @@
       :visible.sync="pdfVisible"
       width="60%"
     >
+      <div>
+        <el-table :data="tableDatatop" style="width: 100%">
+          <el-table-column prop="orderno" label="搴忓彿"> </el-table-column>
+          <el-table-column prop="personname" label="璐圭敤浜哄憳">
+          </el-table-column>
+          <el-table-column prop="createTime" label="寮�濮嬫棩鏈�">
+          </el-table-column>
+          <el-table-column prop="endtime" label="缁撴潫鏃ユ湡"> </el-table-column>
+          <el-table-column prop="departure" label="鍑哄彂鍦�"> </el-table-column>
+          <el-table-column prop="destination" label="鍒拌揪鍦�"> </el-table-column>
+          <el-table-column prop="days" label="澶╂暟"> </el-table-column>
+        </el-table>
+        <el-table :data="tableDatatop" style="width: 100%">
+          <el-table-column prop="traffictype" label="鍑哄彂浜ら�氬伐鍏�">
+          </el-table-column>
+          <el-table-column prop="traffictype2" label="杩斿洖浜ら�氬伐鍏�">
+          </el-table-column>
+          <el-table-column prop="trafficexpense" label="浜ら�氳垂">
+          </el-table-column>
+          <el-table-column prop="cityfee" label="甯傚唴浜ら�氳垂"> </el-table-column>
+          <el-table-column prop="hotelexpense" label="浣忓璐�">
+          </el-table-column>
+          <el-table-column prop="foodallowance" label="浼欓琛ュ姪">
+          </el-table-column>
+          <el-table-column prop="otherexpense" label="鍏潅璐硅ˉ鍔�">
+          </el-table-column>
+          <el-table-column prop="otherfeeamount" label="鍏朵粬璐圭敤">
+          </el-table-column>
+        </el-table>
+      </div>
       <div class="pdfimg">
         <div class="box-pdf">
           <div>
@@ -1019,7 +1049,7 @@
           </div>
         </div>
 
-        <div v-if="this.previewpdf" class="pdfimgmin">
+        <div v-if="this.previewpdf && pdfimgsrcList.length" class="pdfimgmin">
           <!-- <img :src="pdfimg" /> -->
           <el-image
             style="width: 95%; height: 90%"
@@ -1060,7 +1090,8 @@
 import {
   listReimbursementpayee,
   addReimbursementpayee,
-  updateReimbursementpayee
+  updateReimbursementpayee,
+  delReimbursementpayee
 } from "@/api/project/reimbursementpayee";
 import {
   listReimbursement,
@@ -1185,6 +1216,13 @@
         starttime: null,
         endtime: null
       },
+      tableDatatop: [
+        {
+          date: "2016-05-02",
+          name: "鐜嬪皬铏�",
+          address: "涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�"
+        }
+      ],
       //鏌ヨ浠樻
       queryParamsPayee: {
         rbid: null
@@ -1289,6 +1327,8 @@
   },
 
   mounted() {
+    window.addEventListener("beforeunload", e => this.beforeunloadHandler(e));
+
     //閫夋嫨涓氬姟绫诲瀷:1銆佹柊澧烇紱2銆佷慨鏀癸紱3銆佹煡鐪�
     let curId = this.$route.query.id;
     let pos = this.$route.query.pos;
@@ -1310,6 +1350,24 @@
   },
 
   methods: {
+    // 娴忚鍣ㄩ〉闈㈠叧闂垨鍒锋柊鎻愮ず
+    beforeunloadHandler(e) {
+      if (
+        (JSON.stringify(this.form) == sessionStorage.getItem("apiform") &&
+          JSON.stringify(this.rbDetails) ==
+            sessionStorage.getItem("apifunddetail")) ||
+        !sessionStorage.getItem("apifunddetail")
+      ) {
+      } else {
+        this._beforeUnload_time = new Date().getTime();
+        e = e || window.event;
+        if (e) {
+          e.returnValue = "鍏抽棴鎻愮ず";
+        }
+        return "鍏抽棴鎻愮ず";
+      }
+    },
+
     handleUploadError() {},
     // 鑾峰彇璇锋眰澶�
     Getnetworkheader() {
@@ -1350,8 +1408,9 @@
         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);
@@ -1359,6 +1418,10 @@
     },
     // 鐐瑰嚮绁ㄦ嵁
     Filepopup(index, rows, row) {
+      this.tableDatatop = [];
+      this.pdfimgsrcList = [];
+      this.tableDatatop.push(row);
+      // console.log(row);
       this.atpresent = index;
       this.pdfVisible = true;
       console.log(this.rbDetails[index]);
@@ -1367,12 +1430,12 @@
         this.fileListto = this.rbDetails[index].annexfilesList;
         console.log(this.fileListto);
         this.pdfimg = this.Networkheader + "/prod-api" + this.fileListto[0].url;
-        this.pdfimgsrcList = [];
         this.fileListto.forEach(item => {
           this.pdfimgsrcList.push(this.Networkheader + "/prod-api" + item.url);
         });
         console.log(this.pdfimgsrcList);
         console.log(this.pdfimg);
+        this.pdftitle = "鍏�" + this.pdfimgsrcList.length + "椤�";
       } else {
         this.fileListto = [];
         this.pdfimg = "";
@@ -1383,7 +1446,8 @@
     // 鐐瑰嚮宸蹭笂浼犳枃浠�
     downFile(item) {
       console.log(item, "鐐瑰嚮鏂囦欢鎷縤tem");
-      this.pdftitle = item.name;
+      this.pdftitle =
+        "鍏�" + this.pdfimgsrcList.length + "椤癸紝褰撳墠閫変腑" + item.name;
       let name = item.name.split(".");
       if (name[1] == "pdf") {
         this.$modal.msgWarning("褰撳墠鏂囦欢鏆備笉鏀寔棰勮");
@@ -1856,12 +1920,15 @@
       //鑾峰彇鎶ラ攢涓讳俊鎭�
       getReimbursement(curId).then(response => {
         this.form = response.data;
+
         this.fileListto = this.form.annexfiles
           ? this.form.annexfiles
               .split(",")
               .map(item => ({ url: item, name: item }))
           : [];
         this.form.recordstatus = response.data.recordstatus + "";
+        sessionStorage.removeItem("apiform");
+        sessionStorage.setItem("apiform", JSON.stringify(this.form));
 
         //鑾峰彇鎶ラ攢鏄庣粏淇℃伅
         getReimbursementdetaillist(curId).then(res => {
@@ -1870,20 +1937,16 @@
           if (this.rbDetails.length == 0) {
             this.addDetailRow(0);
           }
-
           //瀹炴椂鍚堣閲戦
           //this.sumTotalFee();
           for (let i = 0; i < this.rbDetails.length; i++) {
             this.sumRowFee(this.rbDetails[i]);
-            //瑙f瀽鍑哄樊鍦板潃
-            /*
-              this.rbDetails[i].index = i;
-              this.rbDetails[i].searchAddress = {
-                sheng: this.rbDetails[i].travelprovincename,
-                shi: this.rbDetails[i].travelcityname,
-                qu: this.rbDetails[i].traveltownname,
-              }; */
           }
+          sessionStorage.removeItem("apifunddetail");
+          sessionStorage.setItem(
+            "apifunddetail",
+            JSON.stringify(this.rbDetails)
+          );
         });
 
         //鑾峰彇鎶ラ攢鎵撴淇℃伅
@@ -1965,6 +2028,8 @@
             this.addPayeeRow(0);
           }
         });
+        sessionStorage.removeItem("apiform");
+        sessionStorage.setItem("apiform", JSON.stringify(this.form));
       });
     },
 
@@ -1980,6 +2045,7 @@
 
       getReimbursement(id).then(response => {
         this.form = response.data;
+
         //绁ㄦ嵁
         this.fileListto = this.form.annexfiles
           ? this.form.annexfiles
@@ -2029,6 +2095,8 @@
             this.addPayeeRow(0);
           }
         });
+        sessionStorage.removeItem("apiform");
+        sessionStorage.setItem("apiform", JSON.stringify(this.form));
       });
     },
 
@@ -2121,17 +2189,15 @@
           */
 
           //绁ㄦ嵁鏂囦欢澶勭悊
+          const addnumber = this.rbPayees.reduce(
+            (amount, item) => amount + Number(item.amount),
+            0
+          );
           let list = this.fileListto;
           console.log(list);
 
           //鏍¢獙璇锋閲戦鍚堣鏄惁绛変簬鎶ラ攢鍗曢噾棰�
-          if (
-            this.form.amountrequested !=
-            this.rbPayees.reduce(
-              (amount, item) => amount + Number(item.amount),
-              0.0
-            )
-          ) {
+          if (this.form.amountrequested != addnumber) {
             this.$message({
               message:
                 "鎶ラ攢璇锋琛ㄤ腑鍚堣閲戦涓嶇瓑浜庢姤閿�鍗曠殑鎶ラ攢閲戦锛岃鏇存鍚庡啀淇濆瓨锛�",
@@ -2197,6 +2263,11 @@
                   rbPayees[i].rbid = response.data;
                   addReimbursementpayee(rbPayees[i]);
                 }
+                sessionStorage.setItem(
+                  "apifunddetail",
+                  JSON.stringify(this.rbDetails)
+                );
+                sessionStorage.setItem("apiform", JSON.stringify(this.form));
 
                 this.$modal.msgSuccess("鏂板鎶ラ攢鍗曚繚瀛樻垚鍔�!");
                 this.open = false;
@@ -2255,6 +2326,11 @@
       this.Savereminder = false;
       this.Reminderquantity = 0;
       this.totalquantity = 0;
+      const addnumber = this.rbPayees.reduce(
+        (amount, item) => amount + Number(item.amount),
+        0
+      );
+      console.log(addnumber, "addnumber");
       this.$refs["form"].validate(valid => {
         if (valid) {
           //绁ㄦ嵁鏂囦欢澶勭悊
@@ -2262,13 +2338,7 @@
           console.log(list);
 
           //鏍¢獙璇锋閲戦鍚堣鏄惁绛変簬鎶ラ攢鍗曢噾棰�
-          if (
-            this.form.amountrequested !=
-            this.rbPayees.reduce(
-              (amount, item) => amount + Number(item.amount),
-              0.0
-            )
-          ) {
+          if (this.form.amountrequested != addnumber) {
             this.$message({
               message:
                 "鎶ラ攢璇锋琛ㄤ腑鍚堣閲戦涓嶇瓑浜庢姤閿�鍗曠殑鎶ラ攢閲戦锛岃鏇存鍚庡啀淇濆瓨锛�",
@@ -2342,6 +2412,8 @@
 
     //鏂板涓�琛�
     addDetailRow(rowIndex) {
+      console.log(rowIndex);
+
       let rowData = {
         //index: this.rbDetails.length,
         searchAddress: {
@@ -2356,6 +2428,8 @@
         endtime: null,
         destination: null,
         days: null,
+        persontype: null,
+        personname: null,
         trafficexpense: 0,
         traffictype: null,
         traffictype2: null,
@@ -2379,9 +2453,14 @@
         total: 0,
         orderno: null,
         personname2: null,
-        personname: null,
         destination: null
       };
+      if (this.rbDetails.length) {
+        console.log(this.rbDetails[rowIndex].persontype);
+        console.log(this.rbDetails[rowIndex].personname);
+        rowData.persontype = this.rbDetails[rowIndex].persontype;
+        rowData.personname = this.rbDetails[rowIndex].personname;
+      }
       // if (this.Reminderquantity >= 5) {
       //   this.Savereminder = true;
       //   return;
@@ -2462,8 +2541,10 @@
       })
         .then(() => {
           console.log(row);
+          let arrow=[];
+          arrow.push(row.id);
           if (row.id !== null) {
-            delReimbursementdetail(row.id).then(res => {
+            delReimbursementpayee(arrow).then(res => {
               this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
               rows.splice(index, 1);
               this.recountOrderNo2();

--
Gitblit v1.9.3