From 1fc6fb99de36cc345e23f8ca5a6cbb9bc1828c07 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期一, 04 九月 2023 13:50:23 +0800
Subject: [PATCH] 11

---
 src/views/project/fund/applyDetail/index.vue |  191 +++++++++++++++++++++++++++++++++++++----------
 1 files changed, 149 insertions(+), 42 deletions(-)

diff --git a/src/views/project/fund/applyDetail/index.vue b/src/views/project/fund/applyDetail/index.vue
index 3f8f8a1..e6ef7ec 100644
--- a/src/views/project/fund/applyDetail/index.vue
+++ b/src/views/project/fund/applyDetail/index.vue
@@ -158,6 +158,7 @@
           <el-table
             :data="rbDetails"
             v-loading="loading"
+            max-height="400"
             border
             highlight-current-row
           >
@@ -183,7 +184,7 @@
             >
               <template slot-scope="scope">
                 <el-select
-                  v-model="scope.row.applytype"
+                  v-model="scope.row.applytypename"
                   placeholder="鏈嶅姟绫诲瀷"
                   @change="verifyFeeItemType(scope.row)"
                 >
@@ -204,7 +205,7 @@
             >
               <template slot-scope="scope">
                 <el-select
-                  v-model="scope.row.itemid"
+                  v-model="scope.row.itemname"
                   placeholder="鏈嶅姟椤圭洰"
                   filterable
                   @change="verifyFeeItem(scope.row)"
@@ -620,8 +621,8 @@
           @click="submitForm"
           v-if="
             operationType == 'add' ||
-              operationType == 'update' ||              
-              ismanager == true 
+              operationType == 'update' ||
+              ismanager == true
           "
           >鎻愪氦淇濆瓨</el-button
         >
@@ -841,7 +842,14 @@
         >
       </span>
     </el-dialog>
-    <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>
@@ -850,7 +858,9 @@
               class="upload-demo"
               :action="uploadFileUrl"
               :file-list="fileListto"
+              :show-file-list="false"
               multiple
+              drag
               :limit="20"
               :headers="headers"
               :on-success="
@@ -864,13 +874,61 @@
               :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>
+              <!-- <div class="el-upload__tip" slot="tip">
+                鍙兘涓婁紶jpg/png鏂囦欢锛屼笖涓嶈秴杩�500kb
+              </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"
@@ -919,7 +977,7 @@
   listDonatebaseinfo,
   getDonatebaseinfo
 } from "@/api/project/donatebaseinfo";
-
+import debounce from "lodash/debounce";
 import {
   onelistFund,
   listFund,
@@ -1077,6 +1135,8 @@
       rowfeeblocks: [],
 
       fundflowList: [],
+      // 闅忔満鏁�
+      randomnumber: "",
 
       //涓撳/鍗曚綅閫夋嫨锛歟xpert/unit
       selectionType: "",
@@ -1608,9 +1668,24 @@
           });
         });
     },
-
+    generateRandomString(length) {
+      const characters =
+        "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
+      let randomString = "";
+      for (let i = 0; i < length; i++) {
+        randomString += characters.charAt(
+          Math.floor(Math.random() * characters.length)
+        );
+      }
+      return randomString;
+    },
     /** 鎻愪氦鎸夐挳 */
-    submitForm() {
+    submitForm: debounce(function() {
+      if (!this.randomnumber) {
+        this.randomnumber = this.generateRandomString(9);
+        this.form.randomnumber = this.randomnumber;
+      }
+      console.log(this.randomnumber);
       this.$refs["form"].validate(valid => {
         if (valid) {
           this.formData = this.form;
@@ -1846,7 +1921,7 @@
           this.$router.go(-1);
         }
       });
-    },
+    }, 500),
 
     //瀹℃壒鎻愪氦
     checksubmit() {
@@ -2229,6 +2304,10 @@
     },
     // 鎺ュ彈鎻愰啋绔嬪埢淇濆瓨
     Savenow() {
+      if (!this.randomnumber) {
+        this.randomnumber = this.generateRandomString(9);
+        this.form.randomnumber = this.randomnumber;
+      }
       this.Savereminder = false;
       this.Reminderquantity = 0;
       this.totalquantity = 0;
@@ -2513,10 +2592,10 @@
         rowfeeblocks: [],
         annexfiles: 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 {
@@ -2673,14 +2752,14 @@
     handleUploadError() {},
 
     /** 涓嬭浇鏂囦欢鎸夐挳鎿嶄綔 */
-    downFile(item) {
-      const url = process.env.VUE_APP_BASE_API + item.url;
-      var a = document.createElement("a");
-      var event = new MouseEvent("click");
-      a.download = item.name;
-      a.href = url;
-      a.dispatchEvent(event);
-    },
+    // downFile(item) {
+    //   const url = process.env.VUE_APP_BASE_API + item.url;
+    //   var a = document.createElement("a");
+    //   var event = new MouseEvent("click");
+    //   a.download = item.name;
+    //   a.href = url;
+    //   a.dispatchEvent(event);
+    // },
 
     // remove(file) {
     //   this.fileList.splice(this.fileList.indexOf(file), 1)
@@ -2714,8 +2793,10 @@
         this.form.filename = file.raw.name;
 
         this.$modal.msgSuccess(response.msg);
-        // this.fileListto.push({ name: file.name, url: response.fileName });
-        this.fileListto.push({ name: file.name, url: response.url });
+        this.fileListto.push({ name: file.name, url: response.fileName });
+        // this.fileListto.push({ name: file.name, url: response.url });
+        // this.pdfimgsrcList.push(response.url);
+
         this.rbDetails[this.atpresent].annexfilesList = this.fileListto;
       } else {
         console.log(response.msg);
@@ -2728,10 +2809,14 @@
       this.pdfVisible = true;
       if (this.rbDetails[index].annexfilesList) {
         this.fileListto = this.rbDetails[index].annexfilesList;
-        // this.pdfimg = this.Networkheader + "/prod-api" + this.fileListto[0].url;
-        this.pdfimg = this.fileListto[0].url;
+        this.pdfimg = this.Networkheader + "/prod-api" + this.fileListto[0].url;
+        // this.pdfimg = this.fileListto[0].url;
         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 = [];
@@ -2739,23 +2824,29 @@
         this.pdftitle = "";
       }
     },
+    fnrowclick(row) {
+      console.log(row);
+    },
     // 鐐瑰嚮宸蹭笂浼犳枃浠�
-    downFile(item) {
-      this.pdftitle = item.name;
-      let name = item.name.split(".");
+    downFile(row) {
+      console.log(row);
+
+      this.pdftitle = row.name;
+      let name = row.name.split(".");
       if (name[1] == "pdf") {
         this.$modal.msgWarning("褰撳墠鏂囦欢鏆備笉鏀寔棰勮");
         this.previewpdf = false;
         this.hintitle = "褰撳墠鏂囦欢鏆備笉鏀寔棰勮";
       } else if (name[1] == "jpg" || "png") {
         this.previewpdf = true;
-        if (item.url) {
-          this.pdfimg = this.Networkheader + "/prod-api" + item.url;
-          this.pdfimgsrcList = [];
-          this.pdfimgsrcList.push(this.pdfimg);
+        if (row.url) {
+          this.pdfimg = this.Networkheader + "/prod-api" + row.url;
+          // this.pdfimg = row.url;
+          // this.pdfimgsrcList = [];
+          // this.pdfimgsrcList.push(this.pdfimg);
           console.log(this.pdfimg);
         } else {
-          this.pdfimg = this.Networkheader + "/prod-api" + item.response.url;
+          this.pdfimg = this.Networkheader + "/prod-api" + row.url;
         }
       } else {
         this.hintitle = "褰撳墠鏂囦欢鏆備笉鏀寔棰勮";
@@ -2763,7 +2854,23 @@
         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鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣�
+    },
     //涓撳/鍖荤枟鏈烘瀯/璐圭敤鎶ラ攢鏈烘瀯閫夋嫨
     ShowDetailDialog(spoce, showType) {
       this.selectionType = showType;
@@ -2981,7 +3088,7 @@
   height: 600px;
 
   .box-pdf {
-    width: 200px;
+    width: 400px;
     padding-top: 20px;
     margin-right: 30px;
     border: 1px solid #dcdfe6;

--
Gitblit v1.9.3