From 8022f7036945b75f82f2dfc43055623f81ed98f6 Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期五, 23 五月 2025 22:42:56 +0800
Subject: [PATCH] yxh

---
 src/views/project/fund/expertFeeApply/index.vue |  121 +++++++++++++++++++++++++++++++--------
 1 files changed, 95 insertions(+), 26 deletions(-)

diff --git a/src/views/project/fund/expertFeeApply/index.vue b/src/views/project/fund/expertFeeApply/index.vue
index 26bc82b..2b0ddc9 100644
--- a/src/views/project/fund/expertFeeApply/index.vue
+++ b/src/views/project/fund/expertFeeApply/index.vue
@@ -133,16 +133,17 @@
                 v-loading="loading"
                 border
                 :data="donateconsolationfundList"
+                :row-class-name="rowClassName"
               >
                 <el-table-column
                   label="鐢宠鏃ユ湡"
                   align="center"
-                  prop="createTime"
+                  prop="applyTime"
                   width="180px"
                 >
                   <template slot-scope="scope">
                     <span>{{
-                      parseTime(scope.row.createTime, "{y}-{m}-{d}")
+                      parseTime(scope.row.applyTime, "{y}-{m}-{d}")
                     }}</span>
                   </template>
                 </el-table-column>
@@ -251,9 +252,10 @@
                       "
                       size="mini"
                       type="text"
-                      icon="el-icon-delete"
                       @click="handleDelete(scope.row)"
-                      >鍒犻櫎</el-button
+                      ><span class="button-delete"
+                        ><i class="el-icon-delete"></i>鍒犻櫎</span
+                      ></el-button
                     >
                     <!-- v-hasPermi="['project:expretfund:delete']" -->
                     <!-- <el-button
@@ -264,6 +266,25 @@
                       >涓嬭浇</el-button
                                           > -->
                     <!-- v-hasPermi="['project:expretfund:download']" -->
+                  </template>
+                </el-table-column>
+                <el-table-column
+                  fixed="right"
+                  align="center"
+                  width="120"
+                  label="鍔熻兘"
+                >
+                  <template slot-scope="scope">
+                    <el-button size="mini" v-if="scope.row.uploadStates == 1"
+                      >绾夸笅宸叉姤閿�</el-button
+                    >
+                    <el-button
+                      size="mini"
+                      type="success"
+                      v-else-if="scope.row.uploadStates == 0"
+                      @click="Dooffline(scope.$index, scope.row)"
+                      >绾夸笅鎶ラ攢</el-button
+                    >
                   </template>
                 </el-table-column>
               </el-table>
@@ -291,11 +312,11 @@
       >
         <el-row style="text-align: left">
           <el-col :span="5">
-            <el-form-item label="鐢宠鏃ユ湡" prop="createTime">
+            <el-form-item label="鐢宠鏃ユ湡" prop="applyTime">
               <el-date-picker
                 clearable
                 style="width: 100%"
-                v-model="form.createTime"
+                v-model="form.applyTime"
                 type="date"
                 value-format="yyyy-MM-dd HH:mm:ss"
                 placeholder="鐢宠鏃ユ湡"
@@ -756,7 +777,9 @@
                   type="text"
                   size="small"
                 >
-                  鍒犻櫎
+                  <span class="button-delete"
+                    ><i class="el-icon-delete"></i>鍒犻櫎</span
+                  >
                 </el-button>
               </template>
             </el-table-column>
@@ -1131,7 +1154,6 @@
   updateExternalperson,
   exportExternalperson
 } from "@/api/project/externalperson";
-
 import { getUserProfile } from "@/api/system/user";
 import Li_area_select from "@/components/Address";
 import OrgSelecter from "@/views/project/components/orgselect";
@@ -1227,7 +1249,7 @@
         username: [
           { required: true, message: "璇疯緭鍏ョ敵璇蜂汉", trigger: "blur" }
         ],
-        createTime: [
+        applyTime: [
           { required: true, message: "璇疯緭鍏ョ敵璇锋棩鏈�", trigger: "blur" }
         ],
         deptmentname: [
@@ -1373,6 +1395,17 @@
       this.daterangeReporttime = [];
       this.resetForm("queryForm");
       this.handleQuery();
+    },
+    Dooffline(a, value) {
+      value.uploadStates = 1;
+      value.notes = "绾夸笅宸叉姤閿�";
+      addorupdateFund(value).then(res => {
+        if (res.code == 200) {
+          this.$modal.msgSuccess("璁板綍鎴愬姛");
+        } else {
+          this.$modal.msgError(res.msg);
+        }
+      });
     },
 
     /** 鏂板鎸夐挳鎿嶄綔 */
@@ -1586,7 +1619,18 @@
           //鍒ゆ柇鏄惁瀛樺湪涓婃姤璁板綍
           row.recordstatus = 0;
           var currenttime = new Date();
-          row.createTime = currenttime.getFullYear() + "-" + (currenttime.getMonth()+1) + "-" + currenttime.getDate() + " " + currenttime.getHours() + ":" + currenttime.getMinutes() + ":" + currenttime.getSeconds();
+          row.applyTime =
+            currenttime.getFullYear() +
+            "-" +
+            (currenttime.getMonth() + 1) +
+            "-" +
+            currenttime.getDate() +
+            " " +
+            currenttime.getHours() +
+            ":" +
+            currenttime.getMinutes() +
+            ":" +
+            currenttime.getSeconds();
 
           updateFund(row).then(response => {
             if (response.code == 200) {
@@ -2484,22 +2528,35 @@
     //涓撳璐瑰姵鍔℃墦鍗�
     dayin(id) {
       getdownloadLW(id).then(res => {
-        if (res.downloadUrl) {
-          var fileUrl = res;
-          //鑾峰彇褰撳墠缃戝潃
-          var urlBase = process.env.VUE_APP_BASE_API;
-          var curWWWPath = window.document.location.href;
-          var pos = curWWWPath.indexOf(window.document.location.pathname);
-          // 鍒涘缓a鏍囩
-          var aEle = document.createElement("a");
-          aEle.href =
-            curWWWPath.substring(0, pos) + urlBase + fileUrl["downloadUrl"];
-          aEle.click();
-          this.$alert("涓嬭浇鎴愬姛", "鎻愮ず", {
-            confirmButtonText: "纭畾",
-            type: "success"
+        var fileUrl = res;
+        //鑾峰彇褰撳墠缃戝潃
+        var urlBase = process.env.VUE_APP_BASE_API;
+        var curWWWPath = window.document.location.href;
+        var pos = curWWWPath.indexOf(window.document.location.pathname);
+        // 鍒涘缓a鏍囩
+        var aEle = document.createElement("a");
+        aEle.href =
+          curWWWPath.substring(0, pos) + urlBase + fileUrl["downloadUrl"];
+        console.log(aEle.href);
+        // 娣诲姞Authorization澶撮儴
+        fetch(aEle.href, {
+          headers: this.headers
+        })
+          .then(response => {
+            // 灏嗘枃浠朵笅杞介摼鎺ヤ綔涓篵lob瀵硅薄杩涜涓嬭浇
+            return response.blob();
+          })
+          .then(blob => {
+            const url = window.URL.createObjectURL(new Blob([blob]));
+            console.log(url);
+            const link = document.createElement("a");
+            link.href = url;
+            const name = fileUrl["downloadName"];
+            link.setAttribute("download", name); // 鏇挎崲file.pdf涓哄疄闄呯殑鏂囦欢鍚�
+            document.body.appendChild(link);
+            link.click();
+            link.parentNode.removeChild(link);
           });
-        }
       });
     },
 
@@ -2557,10 +2614,22 @@
       } else {
         console.log(response.msg);
       }
+    },
+    rowClassName({ row, column, rowIndex, columnIndex }) {
+      if (row.recordstatus == -1 && row.backflowlevel != null) {
+        return "error-row";
+      }
+      return "";
     }
   }
 };
 </script>
-<style scoped>
+<style lang="scss" scoped>
 /* @import url(); 寮曞叆鍏叡css绫� */
+.button-delete {
+  color: rgb(236, 69, 69);
+}
+::v-deep.el-table .error-row {
+  background: #fcebeb;
+}
 </style>

--
Gitblit v1.9.3