From 037a98ac21771bfc0d23392266f65a7837676bc3 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期一, 04 九月 2023 16:27:02 +0800
Subject: [PATCH] 11

---
 src/views/project/travelexpenseapply/travelexpensedetail/index.vue |  162 ++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 122 insertions(+), 40 deletions(-)

diff --git a/src/views/project/travelexpenseapply/travelexpensedetail/index.vue b/src/views/project/travelexpenseapply/travelexpensedetail/index.vue
index 9670383..2a21e36 100644
--- a/src/views/project/travelexpenseapply/travelexpensedetail/index.vue
+++ b/src/views/project/travelexpenseapply/travelexpensedetail/index.vue
@@ -216,6 +216,7 @@
             :data="rbDetails"
             ref="table"
             border
+            max-height="800"
             highlight-current-row
             :summary-method="getSummaries"
             show-summary
@@ -226,7 +227,7 @@
               label="搴忓彿"
               align="center"
               fixed
-              width="65"
+              width="88"
             >
               <template slot-scope="scope">
                 <el-input v-model="scope.row.orderno" placeholder="搴忓彿" />
@@ -465,7 +466,7 @@
               prop="trafficexpense"
               label="浜ら�氳垂"
               align="center"
-              width="80"
+              width="120"
             >
               <template slot-scope="scope">
                 <el-input
@@ -483,7 +484,7 @@
               prop="cityfee"
               label="甯傚唴浜ら�氳垂"
               align="center"
-              width="100"
+              width="120"
             >
               <template slot-scope="scope">
                 <el-input
@@ -502,7 +503,7 @@
               prop="hotelexpense"
               label="浣忓璐�"
               align="center"
-              width="80"
+              width="120"
             >
               <template slot-scope="scope">
                 <el-input
@@ -521,7 +522,7 @@
               prop="foodexpenses"
               label="椁愯垂鎶ラ攢"
               align="center"
-              width="80"
+              width="120"
             >
               <template slot-scope="scope">
                 <el-input
@@ -539,7 +540,7 @@
               prop="foodallowance"
               label="浼欓琛ュ姪"
               align="center"
-              width="80"
+              width="120"
             >
               <template slot-scope="scope">
                 <el-input
@@ -557,7 +558,7 @@
               prop="otherexpense"
               label="鍏潅璐硅ˉ鍔�"
               align="center"
-              width="80"
+              width="120"
             >
               <template slot-scope="scope">
                 <el-input
@@ -576,7 +577,7 @@
               prop="otherfeeamount"
               label="鍏朵粬璐圭敤"
               align="center"
-              width="90"
+              width="120"
             >
               <template slot-scope="scope">
                 <el-input
@@ -658,6 +659,7 @@
           <el-table
             :data="rbPayees"
             border
+            max-height="400"
             highlight-current-row
             :summary-method="getSummaries"
             show-summary
@@ -916,7 +918,14 @@
       </div>
     </div>
 
-    <el-dialog :title="pdftitle" :visible.sync="pdfVisible" width="50%">
+    <el-dialog
+      v-dialogDrags
+      :modal="false"
+      :close-on-click-modal="false"
+      :title="pdftitle"
+      :visible.sync="pdfVisible"
+      width="60%"
+    >
       <div class="pdfimg">
         <div class="box-pdf">
           <div>
@@ -925,7 +934,9 @@
               class="upload-demo"
               :action="uploadFileUrl"
               :file-list="fileListto"
+              :show-file-list="false"
               multiple
+              drag
               :limit="20"
               :headers="headers"
               :on-success="
@@ -939,22 +950,59 @@
               :on-remove="remove"
               accept="image/*,.pdf"
             >
-              <el-button
-                :disabled="operationType == 'detail'"
-                size="small"
-                type="primary"
-                >涓婁紶</el-button
-              >
+              <i class="el-icon-upload"></i>
+              <div class="el-upload__text">
+                灏嗙エ鎹嫋鍒版澶勶紝鎴�
+                <em
+                  ><el-button
+                    :disabled="operationType == 'detail'"
+                    size="small"
+                    type="primary"
+                    >鐐瑰嚮涓婁紶</el-button
+                  ></em
+                >
+              </div>
             </el-upload>
+            <el-table
+              :data="fileListto"
+              @row-click="downFile"
+              style="width: 100%"
+            >
+              <el-table-column
+                prop="name"
+                :show-overflow-tooltip="true"
+                label="鍚嶇О"
+              >
+                <template slot-scope="scope">
+                  <i style="color:#409EFF" class=" el-icon-s-order" />{{
+                    scope.row.name
+                  }}
+                </template>
+              </el-table-column>
+
+              <el-table-column
+                prop="name"
+                width="180"
+                :show-overflow-tooltip="true"
+                label="鍔熻兘"
+              >
+                <template slot-scope="scope">
+                  <el-button
+                    type="primary"
+                    size="mini"
+                    @click.native.prevent="deletedowfile(scope.row)"
+                    >鍒犻櫎</el-button
+                  >
+                  <el-button
+                    type="primary"
+                    size="mini"
+                    @click.native.prevent="moveupdowfile(scope.row)"
+                    >涓婄Щ</el-button
+                  >
+                </template>
+              </el-table-column>
+            </el-table>
           </div>
-          <!-- <div
-            class="pdftit"
-            @click="pdffn(item)"
-            v-for="item in fileList"
-            :key="item.name"
-          >
-            {{ item.name }}
-          </div> -->
         </div>
 
         <div v-if="this.previewpdf" class="pdfimgmin">
@@ -1029,6 +1077,7 @@
 import { getSubsidy } from "@/api/project/travelcity";
 import { listReportname, listUser } from "@/api/project/organization";
 import { getToken } from "@/utils/auth";
+import debounce from "lodash/debounce";
 export default {
   components: {
     Treeselect,
@@ -1283,6 +1332,10 @@
           name: file.name,
           url: response.fileName
         });
+        this.pdfimgsrcList.push(
+          this.Networkheader + "/prod-api" + response.fileName
+        );
+
         // this.fileListto.push({
         //   name: file.name,
         //   url: response.url
@@ -1301,9 +1354,12 @@
         this.fileListto = this.rbDetails[index].annexfilesList;
         console.log(this.fileListto);
         this.pdfimg = this.Networkheader + "/prod-api" + this.fileListto[0].url;
-        console.log(this.pdfimg);
         this.pdfimgsrcList = [];
-        this.pdfimgsrcList.push(this.pdfimg);
+        this.fileListto.forEach(item => {
+          this.pdfimgsrcList.push(this.Networkheader + "/prod-api" + item.url);
+        });
+        console.log(this.pdfimgsrcList);
+        console.log(this.pdfimg);
       } else {
         this.fileListto = [];
         this.pdfimg = "";
@@ -1313,7 +1369,7 @@
 
     // 鐐瑰嚮宸蹭笂浼犳枃浠�
     downFile(item) {
-      console.log(item);
+      console.log(item, "鐐瑰嚮鏂囦欢鎷縤tem");
       this.pdftitle = item.name;
       let name = item.name.split(".");
       if (name[1] == "pdf") {
@@ -1324,9 +1380,14 @@
         this.previewpdf = true;
         if (item.url) {
           this.pdfimg = this.Networkheader + "/prod-api" + item.url;
-          this.pdfimgsrcList = [];
-          this.pdfimgsrcList.push(this.pdfimg);
-          console.log(this.pdfimg);
+          // this.pdfimgsrcList = [];
+          // this.pdfimgsrcList.push(this.pdfimg);
+          if (!this.pdfimgsrcList.includes(this.pdfimg)) {
+            this.pdfimgsrcList.push(this.pdfimg);
+            console.log("鍔犲叆");
+          }
+          console.log(this.pdfimg, "pdfimg");
+          console.log(this.pdfimgsrcList, "imglist");
         } else {
           this.pdfimg = this.Networkheader + "/prod-api" + item.response.url;
         }
@@ -1335,6 +1396,23 @@
         this.$modal.msgWarning("褰撳墠鏂囦欢鏆備笉鏀寔棰勮");
         this.previewpdf = false;
       }
+    },
+    getIndexInArray(arr, obj) {
+      return arr.indexOf(obj);
+    },
+    // 鐐瑰嚮鍒犻櫎
+    deletedowfile(row) {
+      console.log(this.fileListto);
+      console.log(row);
+      const index = this.getIndexInArray(this.fileListto, row);
+      this.fileList = this.fileListto.splice(index, 1);
+      console.log(index);
+    },
+    // 鐐瑰嚮涓婄Щ
+    moveupdowfile(row) {
+      const index = this.getIndexInArray(this.fileListto, row);
+      const item = this.fileListto.splice(index, 1)[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓�
+      this.fileListto.splice(index - 1, 0, item); // 灏唅tem鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣�
     },
 
     /** 鏌ヨ閮ㄩ棬涓嬫媺鏍戠粨鏋� */
@@ -1962,7 +2040,7 @@
     },
 
     /** 鎻愪氦淇濆瓨鎸夐挳 */
-    submitForm() {
+    submitForm: debounce(function(data) {
       this.$refs["form"].validate(valid => {
         if (valid) {
           // idisabled=true;
@@ -2113,7 +2191,7 @@
           }
         }
       });
-    },
+    }, 500),
 
     /** 鍒犻櫎鎸夐挳鎿嶄綔 */
     handleDelete(row) {
@@ -2284,10 +2362,10 @@
         personname: null,
         destination: null
       };
-      if (this.Reminderquantity >= 5) {
-        this.Savereminder = true;
-        return;
-      }
+      // if (this.Reminderquantity >= 5) {
+      //   this.Savereminder = true;
+      //   return;
+      // }
       if (rowIndex == undefined || rowIndex == null || rowIndex < 0) {
         this.rbDetails.push(rowData);
       } else {
@@ -2313,10 +2391,10 @@
         personname: null,
         amount: null
       };
-      if (this.Reminderquantity >= 5) {
-        this.Savereminder = true;
-        return;
-      }
+      // if (this.Reminderquantity >= 5) {
+      //   this.Savereminder = true;
+      //   return;
+      // }
       if (rowIndex == undefined || rowIndex == null || rowIndex <= 0) {
         this.rbPayees.push(rowData);
       } else {
@@ -2659,6 +2737,10 @@
           sums[index] = "鍚堣";
           return;
         }
+        if (index === 18) {
+          sums[index] = this.form.amountrequested;
+          return;
+        }
         //鍘婚櫎閮ㄥ垎瀛楁璁$畻
         if (columnnames.indexOf(column.property) > -1) {
           return;
@@ -2720,7 +2802,7 @@
   height: 600px;
 
   .box-pdf {
-    width: 200px;
+    width: 400px;
     padding-top: 20px;
     margin-right: 30px;
     border: 1px solid #dcdfe6;

--
Gitblit v1.9.3