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/officeExpenseApply/index.vue | 1036 +++++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 774 insertions(+), 262 deletions(-)

diff --git a/src/views/project/fund/officeExpenseApply/index.vue b/src/views/project/fund/officeExpenseApply/index.vue
index 6afd8ef..e29e217 100644
--- a/src/views/project/fund/officeExpenseApply/index.vue
+++ b/src/views/project/fund/officeExpenseApply/index.vue
@@ -1,55 +1,156 @@
 <!--  -->
 <template>
   <div class="app-container">
-    <el-form :model="queryParams" ref="queryForm" :inline="true" label-width="70px">
+    <el-form
+      :model="queryParams"
+      ref="queryForm"
+      :inline="true"
+      label-width="70px"
+    >
       <el-row align="left">
         <el-col :span="6">
           <el-form-item label="缁忓姙浜�" prop="name">
-            <el-input v-model="queryParams.name" placeholder="璇疯緭鍏ョ粡鍔炰汉" clearable size="small"
-              @keyup.enter.native="handleQuery" />
+            <el-input
+              v-model="queryParams.name"
+              placeholder="璇疯緭鍏ョ粡鍔炰汉"
+              clearable
+              size="small"
+              @keyup.enter.native="handleQuery"
+            />
           </el-form-item>
         </el-col>
         <el-col :span="6">
           <el-form-item label="鎹愮尞杩涘害" prop="recordstate">
-            <el-select v-model="queryParams.recordstate" placeholder="璇烽�夋嫨璁板綍鐘舵��" clearable size="small">
-              <el-option v-for="dict in dict.type.sys_DonationStatus" :key="dict.value" :label="dict.label"
-                :value="dict.value" />
+            <el-select
+              v-model="queryParams.recordstate"
+              placeholder="璇烽�夋嫨璁板綍鐘舵��"
+              clearable
+              size="small"
+            >
+              <el-option
+                v-for="dict in dict.type.sys_DonationStatus"
+                :key="dict.value"
+                :label="dict.label"
+                :value="dict.value"
+              />
             </el-select>
           </el-form-item>
         </el-col>
         <el-col :span="6">
-          <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
-          <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+          <el-form-item label="鎹愮尞鑰�" prop="name">
+            <el-input
+              v-model="queryParams.donorname"
+              placeholder="璇疯緭鍏ユ崘鐚�呭鍚�"
+              clearable
+              size="small"
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+        </el-col>
+        <el-col :span="6">
+          <el-button
+            type="primary"
+            icon="el-icon-search"
+            size="mini"
+            @click="handleQuery"
+            >鎼滅储</el-button
+          >
+          <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
+            >閲嶇疆</el-button
+          >
         </el-col>
       </el-row>
     </el-form>
     <el-row :gutter="10" class="mb8">
       <el-col :span="1.5">
-        <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd">鏂板</el-button>
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-plus"
+          size="mini"
+          @click="handleAdd"
+          >鏂板</el-button
+        >
         <!-- v-hasPermi="['project:medicalfund:add']" -->
       </el-col>
       <el-col :span="1.5">
-        <el-button type="warning" plain icon="el-icon-download" size="mini" :loading="exportLoading"
-          @click="handleExport">瀵煎嚭</el-button>
+        <el-button
+          type="warning"
+          plain
+          icon="el-icon-download"
+          size="mini"
+          :loading="exportLoading"
+          @click="handleExport"
+          >瀵煎嚭</el-button
+        >
       </el-col>
       <!-- v-hasPermi="['project:medicalfund:export']" -->
-      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+      <!-- <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> -->
     </el-row>
-    <el-table v-loading="loading" border :data="donateconsolationfundList">
-      <el-table-column label="鐢宠鏃ユ湡" align="center" prop="createTime" width="180px">
+    <el-table
+      v-loading="loading"
+      border
+      :data="donateconsolationfundList"
+      :row-class-name="rowClassName"
+    >
+      <el-table-column
+        label="鐢宠鏃ユ湡"
+        align="center"
+        prop="applyTime"
+        width="180px"
+      >
         <template slot-scope="scope">
-          <span>{{
-            parseTime(scope.row.createTime, "{y}-{m}-{d}")
-          }}</span>
+          <span>{{ parseTime(scope.row.applyTime, "{y}-{m}-{d}") }}</span>
         </template>
       </el-table-column>
-      <el-table-column label="鐢宠浜�" align="center" prop="username" width="150px" />
-      <el-table-column label="鐢宠閲戦" align="center" prop="pretaxcost" width="150px" />
-      <el-table-column label="鎵�灞炵粍鍒�" align="center" prop="deptmentname" width="200px" />
-      <el-table-column label="缁勯暱" align="center" prop="managername" width="150px" />
-      <el-table-column label="瀹℃牳鐘舵��" width="150" align="center" prop="recordstatus">
+      <el-table-column
+        label="鐢宠浜�"
+        align="center"
+        prop="username"
+        width="150px"
+      />
+      <el-table-column
+        label="鐢宠閲戦"
+        align="center"
+        prop="pretaxcost"
+        width="150px"
+      />
+      <el-table-column
+        label="鎵�灞炵粍鍒�"
+        align="center"
+        prop="deptmentname"
+        width="200px"
+      />
+      <el-table-column
+        label="缁勯暱"
+        align="center"
+        prop="managername"
+        width="150px"
+      />
+      <el-table-column
+        label="瀹℃牳鐘舵��"
+        width="150"
+        align="center"
+        prop="recordstatus"
+      >
         <template slot-scope="scope">
-          <dict-tag :options="dict.type.sys_recordstatus" :value="scope.row.recordstatus" />
+          <dict-tag
+            :options="dict.type.sys_recordstatus"
+            :value="scope.row.recordstatus"
+          />
+        </template>
+      </el-table-column>
+      <el-table-column
+        label="鐢宠鏉愭枡鐘舵��"
+        width="140"
+        align="center"
+        prop="checkstatus"
+      >
+        <template slot-scope="scope">
+          <dict-tag
+            :options="dict.type.sys_stage_type"
+            :value="scope.row.checkstatus"
+          />
         </template>
       </el-table-column>
       <!--
@@ -57,60 +158,127 @@
                 <el-table-column label="宸ヤ綔鍗曚綅" align="center" prop="unitname" width="150px" />
                 -->
       <el-table-column label="澶囨敞" align="center" prop="remark" />
-      <el-table-column label="鎿嶄綔" fixed="right" align="center" class-name="small-padding fixed-width" width="280px">
+      <el-table-column
+        label="鎿嶄綔"
+        fixed="right"
+        align="center"
+        class-name="small-padding fixed-width"
+        width="280px"
+      >
         <template slot-scope="scope">
-          <el-button v-if="scope.row.recordstatus == -1 ||
-            scope.row.recordstatus == 1
-            " size="mini" type="text" icon="el-icon-edit" @click="handleup(scope.row)">涓婃姤</el-button>
-          <el-button v-if="scope.row.recordstatus == -1 ||
-            scope.row.recordstatus == 1
-            " size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
-            v-hasPermi="['project:medicalfund:edit']">淇敼</el-button>
-          <el-button size="mini" type="text" icon="el-icon-edit" @click="handleDetail(scope.row)">鏌ョ湅</el-button>
-          <el-button v-if="scope.row.recordstatus == -1 ||
-            scope.row.recordstatus == 1
-            " size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
-            v-hasPermi="['project:medicalfund:delete']">鍒犻櫎</el-button>
-          <el-button size="mini" type="text" icon="el-icon-download" @click="mixExport(scope.row.id)"
-            v-hasPermi="['project:medicalfund:download']">涓嬭浇</el-button>
+          <el-button
+            v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1"
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="handleup(scope.row)"
+            >涓婃姤</el-button
+          >
+          <el-button
+            v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1"
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="handleUpdate(scope.row)"
+            v-hasPermi="['project:medicalfund:edit']"
+            >淇敼</el-button
+          >
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-view"
+            @click="handleDetail(scope.row)"
+            >鏌ョ湅</el-button
+          >
+          <el-button
+            v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1"
+            size="mini"
+            type="text"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['project:medicalfund:delete']"
+            ><span class="button-delete"
+              ><i class="el-icon-delete"></i>鍒犻櫎</span
+            ></el-button
+          >
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-download"
+            @click="mixExport(scope.row.id)"
+            v-hasPermi="['project:medicalfund:download']"
+            >涓嬭浇</el-button
+          >
         </template>
       </el-table-column>
     </el-table>
     <!-- 娣诲姞鎴栦慨鏀硅垂鐢ㄧ敵璇峰崟 -->
-    <el-dialog :visible.sync="dialogOpen" :close-on-click-modal="false" width="1400px" :title="title"
-      style="text-align: center" v-loading="loading">
+    <el-dialog
+      :visible.sync="dialogOpen"
+      :close-on-click-modal="false"
+      width="1400px"
+      :title="title"
+      style="text-align: center"
+      v-loading="loading"
+    >
       <el-form ref="form" :model="form" label-width="120px" :rules="rules">
         <el-row style="text-align: left">
           <el-col :span="5">
-            <el-form-item label="鐢宠鏃ユ湡" prop="createTime">
-              <el-date-picker clearable style="width: 100%" v-model="form.createTime" type="date"
-                value-format="yyyy-MM-dd HH:mm:ss" placeholder="鐢宠鏃ユ湡">
+            <el-form-item label="鐢宠鏃ユ湡" prop="applyTime">
+              <el-date-picker
+                clearable
+                style="width: 100%"
+                v-model="form.applyTime"
+                type="date"
+                value-format="yyyy-MM-dd HH:mm:ss"
+                placeholder="鐢宠鏃ユ湡"
+              >
               </el-date-picker>
             </el-form-item>
           </el-col>
           <el-col :span="5">
             <el-form-item label="缁忓姙浜�" prop="username">
-              <el-select v-model="form.username" placeholder="鐢宠浜�" clearable filterable allow-create style="width: 100%">
-                <el-option v-for="dict in userlist" :key="dict.index" :label="dict.nickname"
-                  :value="dict.nickname"></el-option>
+              <el-select
+                v-model="form.username"
+                placeholder="鐢宠浜�"
+                clearable
+                filterable
+                allow-create
+                style="width: 100%"
+              >
+                <el-option
+                  v-for="dict in userlist"
+                  :key="dict.index"
+                  :label="dict.nickname"
+                  :value="dict.nickname"
+                ></el-option>
               </el-select>
             </el-form-item>
           </el-col>
           <el-col :span="5">
             <el-form-item label="鎵�灞炵粍鍒�" prop="deptmentname">
-              <el-input v-model="form.deptmentname" placeholder="璇疯緭鍏ユ墍灞炵粍鍒�" clearable />
+              <el-input
+                v-model="form.deptmentname"
+                placeholder="璇疯緭鍏ユ墍灞炵粍鍒�"
+                clearable
+              />
             </el-form-item>
           </el-col>
           <el-col :span="5">
             <el-form-item label="缁勯暱" prop="managername">
-              <el-input v-model="form.managername" placeholder="璇疯緭鍏ョ粍闀�" clearable />
+              <el-input
+                v-model="form.managername"
+                placeholder="璇疯緭鍏ョ粍闀�"
+                clearable
+              />
             </el-form-item>
           </el-col>
         </el-row>
         <el-row style="text-align: left">
           <el-col :span="5">
             <el-form-item label="鐢宠绫诲瀷">
-              <el-radio v-model="form.applytype" label="4">鏉傞」璐圭敤鐢宠</el-radio>
+              <el-radio v-model="form.applytype" label="4"
+                >鏉傞」璐圭敤鐢宠</el-radio
+              >
             </el-form-item>
           </el-col>
           <el-col :span="10">
@@ -119,15 +287,24 @@
             </el-form-item>
           </el-col>
           <el-col :span="5">
-            <el-form-item label="鎹愮尞鑰�" prop="name">
-              <el-input :disabled="true" v-model="form.name" placeholder="璇疯緭鍏ユ崘鐚�呭鍚�" clearable />
+            <el-form-item label="鎹愮尞鑰�" prop="donorname">
+              <el-input
+                :disabled="true"
+                v-model="form.donorname"
+                placeholder="璇疯緭鍏ユ崘鐚�呭鍚�"
+                clearable
+              />
             </el-form-item>
           </el-col>
         </el-row>
         <el-row style="text-align: left">
           <el-col :span="5">
             <el-form-item label="鐢宠閲戦" prop="amountrequested">
-              <el-input v-model="form.amountrequested" placeholder="鐢宠閲戦" :disabled="true" />
+              <el-input
+                v-model="form.amountrequested"
+                placeholder="鐢宠閲戦"
+                :disabled="true"
+              />
             </el-form-item>
           </el-col>
           <!--<el-col :span="5">
@@ -165,34 +342,77 @@
         </el-row>
         <el-row style="margin-top: 5px; margin-bottom: 5px">
           <el-table :data="fundDetails" border highlight-current-row>
-            <el-table-column prop="orderno" align="center" label="鎺掑簭" width="80">
+            <el-table-column
+              prop="orderno"
+              align="center"
+              label="鎺掑簭"
+              width="80"
+            >
               <template slot-scope="scope">
                 <el-input v-model="scope.row.orderno" placeholder="鎺掑簭" />
               </template>
             </el-table-column>
-            <el-table-column prop="itemtype" align="center" label="璐圭敤绫诲瀷" width="220">
+            <el-table-column
+              prop="itemtype"
+              align="center"
+              label="璐圭敤绫诲瀷"
+              width="220"
+            >
               <template slot-scope="scope">
-                <el-select v-model="scope.row.applytype" placeholder="璐圭敤绫诲瀷" @change="LoadItemTypeArr(scope.row)">
-                  <el-option v-for="dict in fundtypeArr" :key="dict.value" :label="dict.label"
-                    :value="dict.value"></el-option>
+                <el-select
+                  v-model="scope.row.applytype"
+                  placeholder="璐圭敤绫诲瀷"
+                  @change="LoadItemTypeArr(scope.row)"
+                >
+                  <el-option
+                    v-for="dict in fundtypeArr"
+                    :key="dict.value"
+                    :label="dict.label"
+                    :value="dict.value"
+                  ></el-option>
                 </el-select>
               </template>
             </el-table-column>
-            <el-table-column prop="itemtype" align="center" label="鏈嶅姟椤圭洰" width="260">
+            <el-table-column
+              prop="itemtype"
+              align="center"
+              label="鏈嶅姟椤圭洰"
+              width="260"
+            >
               <template slot-scope="scope">
-                <el-select v-model="scope.row.itemid" placeholder="鏈嶅姟椤圭洰" clearable filterable allow-create
-                  @change="select(scope.row)" :filter-method="(val) => SearchItem(val, scope)">
-                  <el-option v-for="dict in scope.row.itemArr" :key="dict.id" :label="dict.itemName"
-                    :value="dict.id"></el-option>
+                <el-select
+                  v-model="scope.row.itemid"
+                  placeholder="鏈嶅姟椤圭洰"
+                  clearable
+                  filterable
+                  allow-create
+                  @change="select(scope.row)"
+                  :filter-method="val => SearchItem(val, scope)"
+                >
+                  <el-option
+                    v-for="dict in scope.row.itemArr"
+                    :key="dict.id"
+                    :label="dict.itemName"
+                    :value="dict.id"
+                  ></el-option>
                 </el-select>
               </template>
             </el-table-column>
 
-            <el-table-column prop="beneficiaryno" align="center" label="濮撳悕" width="120"
-              v-if="form.applytype == '1' || form.applytype == '2'">
+            <el-table-column
+              prop="beneficiaryno"
+              align="center"
+              label="濮撳悕"
+              width="120"
+              v-if="form.applytype == '1' || form.applytype == '2'"
+            >
               <template slot-scope="scope">
-                <el-button type="primary" plain @click="ShowDetailDialog(scope, 'name')">{{ scope.row.beneficiaryname
-                }}</el-button>
+                <el-button
+                  type="primary"
+                  plain
+                  @click="ShowDetailDialog(scope, 'name')"
+                  >{{ scope.row.beneficiaryname }}</el-button
+                >
               </template>
             </el-table-column>
             <!-- <el-table-column
@@ -219,12 +439,28 @@
                 </el-select>
               </template>
                               </el-table-column> -->
-            <el-table-column prop="amount" align="center" label="绋庡墠閲戦" width="120" v-if="form.applytype != 3">
+            <el-table-column
+              prop="amount"
+              align="center"
+              label="绋庡墠閲戦"
+              width="120"
+              v-if="form.applytype != 3"
+            >
               <template slot-scope="scope">
-                <el-select v-model="scope.row.amount" placeholder="绋庡墠閲戦" clearable filterable allow-create
-                  @change="selectamount(scope.row)">
-                  <el-option v-for="dict in fundblock" :key="dict.expensedescribe" :label="dict.expense"
-                    :value="dict.expense"></el-option>
+                <el-select
+                  v-model="scope.row.amount"
+                  placeholder="绋庡墠閲戦"
+                  clearable
+                  filterable
+                  allow-create
+                  @change="selectamount(scope.row)"
+                >
+                  <el-option
+                    v-for="dict in fundblock"
+                    :key="dict.expensedescribe"
+                    :label="dict.expense"
+                    :value="dict.expense"
+                  ></el-option>
                 </el-select>
                 <!--
                 <el-input
@@ -239,96 +475,228 @@
                     -->
               </template>
             </el-table-column>
-            <el-table-column prop="taxamount" align="center" label="鎵g◣" width="120" v-if="form.applytype != '3'">
+            <el-table-column
+              prop="taxamount"
+              align="center"
+              label="鎵g◣"
+              width="120"
+              v-if="form.applytype != '3'"
+            >
               <template slot-scope="scope">
-                <el-input v-model="scope.row.taxamount" placeholder="鎵g◣" @blur="(val) => {
-                  sumTotalFee(scope.row);
-                }
-                  " />
+                <el-input
+                  v-model="scope.row.taxamount"
+                  placeholder="鎵g◣"
+                  @blur="
+                    val => {
+                      sumTotalFee(scope.row);
+                    }
+                  "
+                />
               </template>
             </el-table-column>
-            <el-table-column prop="taxedamount" align="center" label="绋庡悗閲戦" width="120" v-if="form.applytype != '3'">
+            <el-table-column
+              prop="taxedamount"
+              align="center"
+              label="绋庡悗閲戦"
+              width="120"
+              v-if="form.applytype != '3'"
+            >
               <template slot-scope="scope">
-                <el-input v-model="scope.row.taxedamount" placeholder="绋庡悗閲戦" />
+                <el-input
+                  v-model="scope.row.taxedamount"
+                  placeholder="绋庡悗閲戦"
+                />
               </template>
             </el-table-column>
-            <el-table-column prop="price" align="center" label="浠锋牸" width="120" v-if="form.applytype == '3'">
+            <el-table-column
+              prop="price"
+              align="center"
+              label="浠锋牸"
+              width="120"
+              v-if="form.applytype == '3'"
+            >
               <template slot-scope="scope">
-                <el-input v-model="scope.row.price" placeholder="浠锋牸" @blur="(val) => {
-                  sumTotalFee(scope.row);
-                }
-                  " />
+                <el-input
+                  v-model="scope.row.price"
+                  placeholder="浠锋牸"
+                  @blur="
+                    val => {
+                      sumTotalFee(scope.row);
+                    }
+                  "
+                />
               </template>
             </el-table-column>
-            <el-table-column prop="quantity" align="center" label="鏁伴噺" width="80" v-if="form.applytype == '3'">
+            <el-table-column
+              prop="quantity"
+              align="center"
+              label="鏁伴噺"
+              width="80"
+              v-if="form.applytype == '3'"
+            >
               <template slot-scope="scope">
-                <el-input v-model="scope.row.quantity" placeholder="鏁伴噺" @blur="(val) => {
-                  sumTotalFee(scope.row);
-                }
-                  " />
+                <el-input
+                  v-model="scope.row.quantity"
+                  placeholder="鏁伴噺"
+                  @blur="
+                    val => {
+                      sumTotalFee(scope.row);
+                    }
+                  "
+                />
               </template>
             </el-table-column>
 
-            <el-table-column prop="amount" align="center" label="閲戦" width="120" v-if="form.applytype == '3'">
+            <el-table-column
+              prop="amount"
+              align="center"
+              label="閲戦"
+              width="120"
+              v-if="form.applytype == '3'"
+            >
               <template slot-scope="scope">
-                <el-input v-model="scope.row.amount" placeholder="浠锋牸" @blur="(val) => {
-                  sumTotalFee(scope.row);
-                }
-                  " />
+                <el-input
+                  v-model="scope.row.amount"
+                  placeholder="浠锋牸"
+                  @blur="
+                    val => {
+                      sumTotalFee(scope.row);
+                    }
+                  "
+                />
               </template>
             </el-table-column>
-            <el-table-column prop="unitno" align="center" label="璐圭敤鍗曚綅鍚嶇О" width="220">
+            <el-table-column
+              prop="unitno"
+              align="center"
+              label="璐圭敤鍗曚綅鍚嶇О"
+              width="220"
+            >
               <template slot-scope="scope">
-                <el-button type="primary" plain @click="ShowDetailDialog(scope, 'unit')">{{ scope.row.unitname
-                }}</el-button>
+                <el-button
+                  type="primary"
+                  plain
+                  @click="ShowDetailDialog(scope, 'unit')"
+                  >{{ scope.row.unitname }}</el-button
+                >
               </template>
             </el-table-column>
-            <el-table-column prop="depositbank" align="center" label="寮�鎴烽摱琛�" width="200">
+            <el-table-column
+              prop="depositbank"
+              align="center"
+              label="寮�鎴烽摱琛�"
+              width="200"
+            >
               <template slot-scope="scope">
-                <el-input v-model="scope.row.depositbank" placeholder="寮�鎴烽摱琛�" />
+                <el-input
+                  v-model="scope.row.depositbank"
+                  placeholder="寮�鎴烽摱琛�"
+                />
               </template>
             </el-table-column>
-            <el-table-column prop="bankcardno" align="center" label="閾惰鍗″彿" width="210">
+            <el-table-column
+              prop="bankcardno"
+              align="center"
+              label="閾惰鍗″彿"
+              width="210"
+            >
               <template slot-scope="scope">
-                <el-input v-model="scope.row.bankcardno" placeholder="閾惰鍗″彿" />
+                <el-input
+                  v-model="scope.row.bankcardno"
+                  placeholder="閾惰鍗″彿"
+                />
               </template>
             </el-table-column>
-            <el-table-column prop="remark" align="center" label="澶囨敞" width="210" v-if="form.applytype == '3'">
+            <el-table-column
+              prop="remark"
+              align="center"
+              label="澶囨敞"
+              width="210"
+              v-if="form.applytype == '3'"
+            >
               <template slot-scope="scope">
                 <el-input v-model="scope.row.remark" placeholder="澶囨敞" />
               </template>
             </el-table-column>
-            <el-table-column prop="title" align="center" label="鑱岀О" width="120" v-if="form.applytype != '3'">
+            <el-table-column
+              prop="title"
+              align="center"
+              label="鑱岀О"
+              width="120"
+              v-if="form.applytype != '3'"
+            >
               <template slot-scope="scope">
                 <el-input v-model="scope.row.title" placeholder="鑱岀О" />
               </template>
             </el-table-column>
-            <el-table-column prop="idcardno" align="center" label="韬唤璇佸彿" width="200" v-if="form.applytype != '3'">
+            <el-table-column
+              prop="idcardno"
+              align="center"
+              label="韬唤璇佸彿"
+              width="200"
+              v-if="form.applytype != '3'"
+            >
               <template slot-scope="scope">
                 <el-input v-model="scope.row.idcardno" placeholder="韬唤璇佸彿" />
               </template>
             </el-table-column>
-            <el-table-column prop="depositbank" align="center" label="寮�鎴烽摱琛�" width="200" v-if="form.applytype != '3'">
+            <el-table-column
+              prop="depositbank"
+              align="center"
+              label="寮�鎴烽摱琛�"
+              width="200"
+              v-if="form.applytype != '3'"
+            >
               <template slot-scope="scope">
-                <el-input v-model="scope.row.depositbank" placeholder="寮�鎴烽摱琛�" />
+                <el-input
+                  v-model="scope.row.depositbank"
+                  placeholder="寮�鎴烽摱琛�"
+                />
               </template>
             </el-table-column>
-            <el-table-column prop="bankcardno" align="center" label="閾惰鍗″彿" width="210" v-if="form.applytype != '3'">
+            <el-table-column
+              prop="bankcardno"
+              align="center"
+              label="閾惰鍗″彿"
+              width="210"
+              v-if="form.applytype != '3'"
+            >
               <template slot-scope="scope">
-                <el-input v-model="scope.row.bankcardno" placeholder="閾惰鍗″彿" />
+                <el-input
+                  v-model="scope.row.bankcardno"
+                  placeholder="閾惰鍗″彿"
+                />
               </template>
             </el-table-column>
-            <el-table-column fixed="right" align="center" label="鎿嶄綔" width="120" v-if="dialogType == 'edit'">
+            <el-table-column
+              fixed="right"
+              align="center"
+              label="鎿嶄綔"
+              width="120"
+              v-if="dialogType == 'edit'"
+            >
               <template slot-scope="scope">
-                <el-button type="text" size="mini" @click="addRow(scope.$index)">鏂板</el-button>
-                <el-button @click.native.prevent="
-                  deleteRows(scope.row, scope.$index, fundDetails)
-                  " type="text" size="small">
-                  鍒犻櫎
+                <el-button type="text" size="mini" @click="addRow(scope.$index)"
+                  >鏂板</el-button
+                >
+                <el-button
+                  @click.native.prevent="
+                    deleteRows(scope.row, scope.$index, fundDetails)
+                  "
+                  type="text"
+                  size="small"
+                >
+                  <span class="button-delete"
+                    ><i class="el-icon-delete"></i>鍒犻櫎</span
+                  >
                 </el-button>
-                <el-button @click.native.prevent="
-                  Filepopup(scope.$index, fundDetails, scope.row)
-                  " type="text" size="small">
+                <el-button
+                  @click.native.prevent="
+                    Filepopup(scope.$index, fundDetails, scope.row)
+                  "
+                  type="text"
+                  size="small"
+                >
                   绁ㄦ嵁
                 </el-button>
               </template>
@@ -386,55 +754,143 @@
         </el-row> -->
         <el-row>
           <el-col :span="24">
-            <el-form-item label="璐圭敤鐢宠闄勪欢锛�" align="left" prop="annexbankcard">
-              <el-upload size="mini" class="upload-demo" :action="uploadFileUrl" :file-list="fileList" multiple
-                :limit="20" :headers="headers" :on-success="(response, file, fileList) =>
-                  uploadSccess(response, file, fileList)
-                  " :on-preview="downFile" :disabled='dialogType == "detail"' :on-error="handleUploadError"
-                :on-exceed="handleExceed" :on-remove="handleremove" accept="image/*,.pdf">
-                <el-button :disabled='dialogType == "detail"' size="small" type="primary">涓婁紶</el-button>
+            <el-form-item
+              label="璐圭敤鐢宠闄勪欢锛�"
+              align="left"
+              prop="annexbankcard"
+            >
+              <el-upload
+                size="mini"
+                class="upload-demo"
+                :action="uploadFileUrl"
+                :file-list="fileList"
+                multiple
+                :limit="20"
+                :headers="headers"
+                :on-success="
+                  (response, file, fileList) =>
+                    uploadSccess(response, file, fileList)
+                "
+                :on-preview="downFile"
+                :disabled="dialogType == 'detail'"
+                :on-error="handleUploadError"
+                :on-exceed="handleExceed"
+                :on-remove="handleremove"
+                accept="image/*,.pdf"
+              >
+                <el-button
+                  :disabled="dialogType == 'detail'"
+                  size="small"
+                  type="primary"
+                  >涓婁紶</el-button
+                >
               </el-upload>
             </el-form-item>
           </el-col>
         </el-row>
         <el-row v-if="dialogType == 'detail'">
           <el-table :data="fundflowList" border>
-            <el-table-column label="瀹℃牳浜�" align="center" width="120" prop="checkusername" />
-            <el-table-column label="瀹℃牳鏃ユ湡" align="center" width="160" prop="createTime" />
-            <el-table-column label="瀹℃牳缁撴灉" align="center" width="200" prop="flowconclusion"><template
-                slot-scope="scope"><span v-if="scope.row.flowconclusion == 1">閫氳繃</span><span
-                  v-if="scope.row.flowconclusion == 2">涓嶉�氳繃</span></template>
+            <el-table-column
+              label="瀹℃牳浜�"
+              align="center"
+              width="120"
+              prop="checkusername"
+            />
+            <el-table-column
+              label="瀹℃牳鏃ユ湡"
+              align="center"
+              width="160"
+              prop="createTime"
+            />
+            <el-table-column
+              label="瀹℃牳缁撴灉"
+              align="center"
+              width="200"
+              prop="flowconclusion"
+              ><template slot-scope="scope"
+                ><span v-if="scope.row.flowconclusion == 1">閫氳繃</span
+                ><span v-if="scope.row.flowconclusion == 2"
+                  >涓嶉�氳繃</span
+                ></template
+              >
             </el-table-column>
-            <el-table-column label="瀹℃牳澶囨敞" align="center" prop="flowcontent" />
+            <el-table-column
+              label="瀹℃牳澶囨敞"
+              align="center"
+              prop="flowcontent"
+            />
           </el-table>
         </el-row>
       </el-form>
       <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="submitForm" v-if="dialogType == 'edit'">淇� 瀛�</el-button>
+        <el-button
+          type="primary"
+          @click="submitForm"
+          v-if="dialogType == 'edit'"
+          >淇� 瀛�</el-button
+        >
         <!-- <el-button type="success" @click="print">鎵� 鍗�</el-button> -->
         <el-button @click="cancel">鍙� 娑�</el-button>
       </div>
     </el-dialog>
 
-    <el-dialog :visible.sync="detailInfoDialogShow" :close-on-click-modal="false" :title="'璐圭敤鍗曚綅閫夋嫨'"
-      style="text-align: center" v-loading="loading" width="500px">
+    <el-dialog
+      :visible.sync="detailInfoDialogShow"
+      :close-on-click-modal="false"
+      :title="'璐圭敤鍗曚綅閫夋嫨'"
+      style="text-align: center"
+      v-loading="loading"
+      width="500px"
+    >
       <el-form ref="funddetailForm" :model="funddetailForm" label-width="120px">
         <el-row>
           <el-col :span="24" v-if="detailInfoDialogShowType == 'name'">
-            <el-form-item align="left" label="濮撳悕" prop="beneficiaryname" label-width="80px">
-              <el-select filterable allow-create ref="beneficiaryname" default-first-option
-                v-model="funddetailForm.beneficiaryname" placeholder="璇烽�夋嫨" style="width: 100%">
-                <el-option v-for="item in arrr3" :key="item.reportNo" :label="item.reportName" :value="item.reportName">
+            <el-form-item
+              align="left"
+              label="濮撳悕"
+              prop="beneficiaryname"
+              label-width="80px"
+            >
+              <el-select
+                filterable
+                allow-create
+                ref="beneficiaryname"
+                default-first-option
+                v-model="funddetailForm.beneficiaryname"
+                placeholder="璇烽�夋嫨"
+                style="width: 100%"
+              >
+                <el-option
+                  v-for="item in arrr3"
+                  :key="item.reportNo"
+                  :label="item.reportName"
+                  :value="item.reportName"
+                >
                 </el-option>
               </el-select>
             </el-form-item>
           </el-col>
           <el-col :span="24" v-if="detailInfoDialogShowType == 'unit'">
-            <el-form-item align="left" label="鍗曚綅鍚嶇О" prop="unitno" label-width="80px">
-              <el-select v-model="funddetailForm.unitno" placeholder="璇烽�夋嫨鍗曚綅" clearable filterable allow-create
-                style="width: 100%">
-                <el-option v-for="(item, index) in bankaccountlist" :key="index" :label="item.reportName"
-                  :value="item.reportNo"></el-option>
+            <el-form-item
+              align="left"
+              label="鍗曚綅鍚嶇О"
+              prop="unitno"
+              label-width="80px"
+            >
+              <el-select
+                v-model="funddetailForm.unitno"
+                placeholder="璇烽�夋嫨鍗曚綅"
+                clearable
+                filterable
+                allow-create
+                style="width: 100%"
+              >
+                <el-option
+                  v-for="(item, index) in bankaccountlist"
+                  :key="index"
+                  :label="item.reportName"
+                  :value="item.reportNo"
+                ></el-option>
               </el-select>
             </el-form-item>
           </el-col>
@@ -442,7 +898,9 @@
       </el-form>
       <span slot="footer" class="dialog-footer">
         <el-button @click="detailInfoDialogShow = false">鍙� 娑�</el-button>
-        <el-button type="primary" @click="ConfirmDetailDialog()">纭� 瀹�</el-button>
+        <el-button type="primary" @click="ConfirmDetailDialog()"
+          >纭� 瀹�</el-button
+        >
       </span>
     </el-dialog>
   </div>
@@ -465,7 +923,7 @@
   getdownloadYX,
   getdownloadBX,
   addorupdateFund,
-  getdetailsByItemId,
+  getdetailsByItemId
 } from "@/api/project/fund";
 import {
   onelistFunds,
@@ -480,13 +938,13 @@
   getItemNames,
   getFundType,
   getFundTypeAll,
-  listcountItem,
+  listcountItem
 } from "@/api/project/funddetail";
 import {
   listOrganization,
   getOrganization,
   listReportname,
-  listUser,
+  listUser
 } from "@/api/project/organization";
 import {
   listExternalperson,
@@ -495,11 +953,11 @@
   delExternalperson,
   addExternalperson,
   updateExternalperson,
-  exportExternalperson,
+  exportExternalperson
 } from "@/api/project/externalperson";
 import {
   listDonatebaseinfo,
-  getDonatebaseinfo,
+  getDonatebaseinfo
 } from "@/api/project/donatebaseinfo";
 import Li_area_select from "@/components/Address";
 import OrgSelecter from "@/views/project/components/orgselect";
@@ -511,7 +969,7 @@
   //import寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢�
   components: {
     Li_area_select,
-    OrgSelecter,
+    OrgSelecter
   },
   name: "fundApply",
   dicts: [
@@ -526,6 +984,7 @@
     "sys_finsubject",
     "sys_financeitemtype",
     "sys_expensetype",
+    "sys_stage_type"
   ],
   data() {
     //杩欓噷瀛樻斁鏁版嵁
@@ -550,7 +1009,7 @@
         treatmenthospitalname: null,
         donorno: null,
         reportername: null,
-        reporttime: null,
+        reporttime: null
       },
 
       fundQueryParam: {
@@ -558,21 +1017,21 @@
         pageSize: 100,
         infoid: null,
         applytype: "4",
-        createBy: null,
+        createBy: null
       },
       // 琛ㄥ崟鍙傛暟
       form: {},
       // 琛ㄥ崟鏍¢獙
       rules: {
         username: [
-          { required: true, message: "璇疯緭鍏ョ敵璇蜂汉", trigger: "blur" },
+          { required: true, message: "璇疯緭鍏ョ敵璇蜂汉", trigger: "blur" }
         ],
-        createTime: [
-          { required: true, message: "璇疯緭鍏ョ敵璇锋棩鏈�", trigger: "blur" },
+        applyTime: [
+          { required: true, message: "璇疯緭鍏ョ敵璇锋棩鏈�", trigger: "blur" }
         ],
         deptmentname: [
-          { required: true, message: "璇疯緭鍏ユ墍灞炰笟鍔$粍", trigger: "blur" },
-        ],
+          { required: true, message: "璇疯緭鍏ユ墍灞炰笟鍔$粍", trigger: "blur" }
+        ]
       },
 
       //鎹愮尞妗堜緥鍒楄〃鏁版嵁
@@ -612,7 +1071,7 @@
         beneficiaryno: null,
         unitno: null,
         unitname: null,
-        index: null,
+        index: null
       },
 
       //闄勪欢鍒楄〃
@@ -620,9 +1079,8 @@
       //涓婁紶闄勪欢璺緞
       uploadFileUrl: process.env.VUE_APP_BASE_API + "/common/upload",
       headers: {
-        Authorization: "Bearer " + getToken(),
-      },
-
+        Authorization: "Bearer " + getToken()
+      }
     };
   },
   //鐩戝惉灞炴�� 绫讳技浜巇ata姒傚康
@@ -647,7 +1105,7 @@
       let tempUnitname = this.funddetailForm.unitname;
       let singleDetail = this.fundDetails[tempIndex];
       if (this.detailInfoDialogShowType == "name") {
-        this.personlist.map((res) => {
+        this.personlist.map(res => {
           if (tempName == res.username) {
             singleDetail.beneficiaryno = res.userno;
             singleDetail.beneficiaryname = res.username;
@@ -666,17 +1124,19 @@
         });
       } else if (this.detailInfoDialogShowType == "unit") {
         singleDetail.unitno = this.funddetailForm.unitno;
-        console.log("this.funddetailForm", this.funddetailForm);
         try {
           let unitIndex = this.bankaccountlist.findIndex(
-            (item) => singleDetail.unitno == item.reportNo
+            item => singleDetail.unitno == item.reportNo
           );
 
-          console.log("this.bankaccountlist[unitIndex]", this.bankaccountlist[unitIndex]);
           if (unitIndex > -1) {
             singleDetail.unitname = this.bankaccountlist[unitIndex].reportName;
-            singleDetail.depositbank = this.bankaccountlist[unitIndex].depositbank;
-            singleDetail.bankcardno = this.bankaccountlist[unitIndex].bankcardno;
+            singleDetail.depositbank = this.bankaccountlist[
+              unitIndex
+            ].depositbank;
+            singleDetail.bankcardno = this.bankaccountlist[
+              unitIndex
+            ].bankcardno;
           } else {
             singleDetail.unitname = singleDetail.unitno;
           }
@@ -684,7 +1144,7 @@
           singleDetail.unitname = singleDetail.unitno;
         }
       }
-      console.log("singleDetail", singleDetail);
+
       this.fundDetails[tempIndex] = singleDetail;
       this.detailInfoDialogShow = false;
     },
@@ -694,7 +1154,7 @@
           row.servivesscope = item.servivesscope;
           row.amount = item.expense;
           this.form.serviceFunddetails = 0;
-          this.fundDetails.map((item) => {
+          this.fundDetails.map(item => {
             this.form.serviceFunddetails += item.amount;
           });
           // row.remark
@@ -702,26 +1162,39 @@
       });
     },
     handleup(row) {
+      console.log(row);
       this.$confirm("鏄惁纭灏嗙櫥璁拌褰曚笂鎶ワ紵", "鎻愮ず", {
         confirmButtonText: "纭畾",
         cancelButtonText: "鍙栨秷",
-        type: "warning",
+        type: "warning"
       })
         .then(() => {
           //鏌ユ壘鏄惁瀛樺湪鐧昏瀹屾垚璁板綍
           //鍒ゆ柇鏄惁瀛樺湪涓婃姤璁板綍
           row.recordstatus = 0;
-
-          updateFund(row).then((response) => {
+          var currenttime = new Date();
+          row.applyTime =
+            currenttime.getFullYear() +
+            "-" +
+            (currenttime.getMonth() + 1) +
+            "-" +
+            currenttime.getDate() +
+            " " +
+            currenttime.getHours() +
+            ":" +
+            currenttime.getMinutes() +
+            ":" +
+            currenttime.getSeconds();
+          updateFund(row).then(response => {
             if (response.code == 200) {
               this.$message({
                 type: "success",
-                message: "鐢宠鎴愬姛",
+                message: "鐢宠鎴愬姛"
               });
             } else {
               this.$message({
                 type: "error",
-                message: "鐢宠澶辫触",
+                message: "鐢宠澶辫触"
               });
             }
             this.loading = false;
@@ -730,19 +1203,19 @@
         .catch(() => {
           this.$message({
             type: "info",
-            message: "宸插彇娑堢敵璇�",
+            message: "宸插彇娑堢敵璇�"
           });
         });
     },
     select(row) {
-      row.itemArr.map((res) => {
+      row.itemArr.map(res => {
         if (row.itemid === res.id) {
           row.remark = res.itemDescribe;
           row.itemcode = res.itemCode;
         }
       });
       var repeatNum = 0;
-      this.fundDetails.map((res) => {
+      this.fundDetails.map(res => {
         if (res.applytype === row.applytype && res.itemid == row.itemid) {
           repeatNum++;
         }
@@ -751,15 +1224,15 @@
         this.$modal.msgWarning("鎮ㄥ凡缁忔彁浜よ繃鏈嶅姟椤圭洰");
       }
 
-      getdetailsByItemId(row.itemid).then((res) => {
+      getdetailsByItemId(row.itemid).then(res => {
         let fundmsg = res.data;
         let fundblock = [];
-        fundmsg.forEach((item) => {
+        fundmsg.forEach(item => {
           fundblock.push({
             expense: item.expense,
             expensedescribe: item.expensedescribe,
             remark: item.expensedescribe,
-            servicesscope: item.id,
+            servicesscope: item.id
           });
         });
         row.fundblock = fundblock;
@@ -775,7 +1248,7 @@
       });
     },
     getUsermsg() {
-      getUserProfile().then((response) => {
+      getUserProfile().then(response => {
         this.defaultperson = response.data;
         this.standardlevel = response.data.standardlevel;
       });
@@ -809,7 +1282,7 @@
       this.form.deptmentno = this.defaultperson.dept.deptId;
       this.form.managername = this.defaultperson.dept.leader;
 
-      // this.form.createTime = nowdate;
+      // this.form.applyTime = nowdate;
       //this.open = true;
       //this.initFundApplyForm();
       this.fundDetails = [];
@@ -832,14 +1305,17 @@
       this.dialogOpen = true;
       this.title = "淇敼璐圭敤鐢宠";
 
-
       const id = row.id || this.ids;
-      getFund(id).then((response) => {
+      getFund(id).then(response => {
         this.form = response.data;
         //闄勪欢澶勭悊
-        this.fileList = this.form.annexbankcard ? this.form.annexbankcard.split(",").map(item => ({ url: item, name: item })) : []
+        this.fileList = this.form.annexbankcard
+          ? this.form.annexbankcard
+              .split(",")
+              .map(item => ({ url: item, name: item }))
+          : [];
 
-        getownFundDetail(id).then(async (res) => {
+        getownFundDetail(id).then(async res => {
           this.fundDetails = res.data;
           for (let m = 0; m < this.fundDetails.length; m++) {
             this.fundDetails[m].itemArr = [];
@@ -864,19 +1340,23 @@
       this.dialogType = "detail";
       const id = row.id || this.ids;
 
-      getFund(id).then((response) => {
+      getFund(id).then(response => {
         this.form = response.data;
         let listFundflowparams = {
           fundid: row.id,
-          fundtype: 4,
+          fundtype: 4
         };
         //闄勪欢澶勭悊
-        this.fileList = this.form.annexbankcard ? this.form.annexbankcard.split(",").map(item => ({ url: item, name: item })) : []
+        this.fileList = this.form.annexbankcard
+          ? this.form.annexbankcard
+              .split(",")
+              .map(item => ({ url: item, name: item }))
+          : [];
 
-        listFundflow(listFundflowparams).then((res) => {
+        listFundflow(listFundflowparams).then(res => {
           this.fundflowList = res.rows;
         });
-        getownFundDetail(id).then((res) => {
+        getownFundDetail(id).then(res => {
           this.fundDetails = res.data;
           for (let m = 0; m < this.fundDetails.length; m++) {
             this.fundDetails[m].itemArr = [];
@@ -886,22 +1366,38 @@
               expense: this.fundDetails[m].expense,
               expensedescribe: this.fundDetails[m].servicesscopename,
               remark: this.fundDetails[m].servicesscope,
-              servicesscope: this.fundDetails[m].servicesscope,
+              servicesscope: this.fundDetails[m].servicesscope
             });
           }
         });
       });
     },
 
+    /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+    handleExport() {
+      const queryParams = this.queryParams;
+      this.$modal
+        .confirm("鏄惁纭瀵煎嚭鎵�鏈夋姤閿�鐢宠鏁版嵁椤癸紵")
+        .then(() => {
+          this.exportLoading = true;
+          return exportReimbursement(queryParams);
+        })
+        .then(response => {
+          this.$download.name(response.msg);
+          this.exportLoading = false;
+        })
+        .catch(() => {});
+    },
+
     handleDelete(row) {
       const ids = row.id || this.ids;
       this.$modal
         .confirm("鏄惁纭鍒犻櫎璇ヨ褰曪紵")
-        .then(function () {
+        .then(function() {
           return delFund(ids);
         })
         .then(() => {
-          getownFundDetail(ids).then((res) => {
+          getownFundDetail(ids).then(res => {
             let listdetails = res.data;
             for (let i = 0; i < listdetails.length; i++) {
               delFunddetail(listdetails[i].id);
@@ -910,12 +1406,12 @@
           this.getList();
           this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
         })
-        .catch(() => { });
+        .catch(() => {});
     },
 
     /** 鎻愪氦鎸夐挳 */
     submitForm() {
-      this.$refs["form"].validate((valid) => {
+      this.$refs["form"].validate(valid => {
         if (valid) {
           let formData = this.form;
           for (let k = 0; k < this.fundDetails.length; k++) {
@@ -958,7 +1454,7 @@
           );
 
           if (this.form.id != null) {
-            updateFund(this.form).then((response) => {
+            updateFund(this.form).then(response => {
               this.dialogOpen = false;
               this.getList();
               this.$modal.msgSuccess("淇敼鎴愬姛");
@@ -969,16 +1465,16 @@
                 tempData.fundid = formData.id;
                 //鑾峰彇鏈嶅姟椤圭洰鏄庣粏
                 let itemIndex = tempItemArr.findIndex(
-                  (item) => tempData.itemid == item.id
+                  item => tempData.itemid == item.id
                 );
                 if (itemIndex > -1) {
                   tempData.itemname = tempItemArr[itemIndex].itemName;
                   tempData.itemid = tempItemArr[itemIndex].id;
                 }
                 if (tempData.id > 0) {
-                  updateFunddetail(tempData).then((response2) => { });
+                  updateFunddetail(tempData).then(response2 => {});
                 } else {
-                  addFunddetail(tempData).then((response2) => { });
+                  addFunddetail(tempData).then(response2 => {});
                 }
               }
             });
@@ -990,7 +1486,7 @@
 
               //鑾峰彇鏈嶅姟椤圭洰鏄庣粏
               let itemIndex = tempUtemArr.findIndex(
-                (item) => tempData.itemid == item.id
+                item => tempData.itemid == item.id
               );
               if (itemIndex > -1) {
                 tempData.itemname = tempUtemArr[itemIndex].itemName;
@@ -998,7 +1494,7 @@
               }
               //鑾峰彇applytypename
               let applytypeIndex = this.fundtypeArr.findIndex(
-                (item) => tempData.applytype == item.value
+                item => tempData.applytype == item.value
               );
               if (applytypeIndex > -1) {
                 tempData.applytypename = this.fundtypeArr[applytypeIndex].label;
@@ -1007,7 +1503,7 @@
             }
 
             this.form.serviceFunddetails = this.fundDetails;
-            addorupdateFund(this.form).then((response) => {
+            addorupdateFund(this.form).then(response => {
               if (response.code === 200) {
                 this.$modal.msgSuccess("鏂板鎴愬姛");
                 this.loading = false;
@@ -1030,7 +1526,7 @@
       this.loading = true;
       this.queryParams.params = {};
       this.reset();
-      listFund(this.fundQueryParam).then((response) => {
+      listFund(this.fundQueryParam).then(response => {
         this.loading = false;
         this.donateconsolationfundList = response.rows;
       });
@@ -1038,7 +1534,7 @@
 
     getBaseInfoList() {
       this.loading = true;
-      listDonatebaseinfo(this.queryParams).then((response) => {
+      listDonatebaseinfo(this.queryParams).then(response => {
         this.donatebaseinfoList = response.rows;
         this.total = response.total;
         this.loading = false;
@@ -1092,12 +1588,12 @@
         servicetypename: null,
         servicesscopename: null,
         dialogType: "edit",
-        fundflowList: [],
+        fundflowList: []
       };
       this.resetForm("form");
 
       //娓呯┖闄勪欢
-      this.fileList = []
+      this.fileList = [];
     },
 
     //鏂板涓�琛�
@@ -1142,7 +1638,7 @@
         uploadflag: null,
         uploadtime: null,
         itemArr: [],
-        servivesscope: null,
+        servivesscope: null
       };
       if (rowIndex == undefined || rowIndex == null || rowIndex < 0) {
         this.fundDetails.push(rowData);
@@ -1156,7 +1652,7 @@
 
     //鍔犺浇鏈嶅姟椤圭洰
     LoadItemTypeArr(row) {
-      let list = this.fundtypeArrAll.filter((r) => r.itemType == row.applytype);
+      let list = this.fundtypeArrAll.filter(r => r.itemType == row.applytype);
       row.itemArr = list[0].itemDetails;
       row.itemid = null;
       this.$forceUpdate();
@@ -1169,39 +1665,36 @@
       // });
     },
 
-
     getBankAccount() {
       //鑾峰彇閾惰璐﹀彿鍒楄〃锛岀被鍨嬫槸鏈烘瀯
-      listReportname("org").then((res) => {
+      listReportname("org").then(res => {
         this.bankaccountlist = res.data;
-        console.log("this.bankaccountlist", this.bankaccountlist);
       });
     },
 
     getlistUser() {
-      listUser().then((res) => {
+      listUser().then(res => {
         this.userlist = res.data;
       });
     },
-
 
     deleteRows(row, index, rows) {
       this.$confirm("鏄惁纭鍒犻櫎?", "鎻愮ず", {
         confirmButtonText: "纭畾",
         cancelButtonText: "鍙栨秷",
-        type: "success",
+        type: "success"
       })
         .then(() => {
           if (row.id !== null) {
-            delFunddetail(row.id).then((res) => {
+            delFunddetail(row.id).then(res => {
               if (res.code === 200) {
                 this.$confirm("鍒犻櫎鎴愬姛", "鎻愮ず", {
                   confirmButtonText: "纭畾",
                   cancelButtonText: "鍙栨秷",
-                  type: "success",
+                  type: "success"
                 }).then(() => {
                   this.$set(rows, rows.splice(index, 1));
-                  getownFundDetail(this.form.id).then((res) => {
+                  getownFundDetail(this.form.id).then(res => {
                     this.$set(this.fundDetails, res.data);
                     this.sumTotalFee(row);
                     // this.fundDetails = res.data
@@ -1259,21 +1752,21 @@
 
     //鑾峰彇璐圭敤绫诲瀷
     getCurFundType() {
-      getFundTypeAll(this.businesstype).then((res) => {
+      getFundTypeAll(this.businesstype).then(res => {
         let dataList = res.data;
         this.fundtypeArrAll = dataList;
         this.fundtypeArr = [];
         for (let m = 0; m < dataList.length; m++) {
           this.fundtypeArr.push({
             value: dataList[m].itemType,
-            label: dataList[m].itemTypeName,
+            label: dataList[m].itemTypeName
           });
         }
       });
     },
 
     getItemArr(rowindex, row) {
-      let list = this.fundtypeArrAll.filter((r) => r.itemType == row.applytype);
+      let list = this.fundtypeArrAll.filter(r => r.itemType == row.applytype);
       row.itemArr = list[0].itemDetails;
       this.$set(this.fundDetails, rowindex, row);
       //this.loading = true;
@@ -1287,14 +1780,14 @@
     addAlls() {
       this.loading = true;
       this.fundDetails = this.fundDetails.filter(
-        (r) => r.applytype != "" && r.applytype != null
+        r => r.applytype != "" && r.applytype != null
       );
       let listAdd = [];
       //let listAdd = this.fundDetails;
       for (let i = 0; i < this.fundtypeArrAll.length; i++) {
         for (let j = 0; j < this.fundtypeArrAll[i].itemDetails.length; j++) {
           let list = this.fundDetails.filter(
-            (r) =>
+            r =>
               r.applytype == this.fundtypeArrAll[i].itemType &&
               r.itemid == this.fundtypeArrAll[i].itemDetails[j].id
           );
@@ -1308,7 +1801,7 @@
               recordstatus: "-1",
               itemArr: this.fundtypeArrAll[i].itemDetails,
               beneficiaryname: "鐐瑰嚮閫夋嫨",
-              unitname: "鐐瑰嚮閫夋嫨",
+              unitname: "鐐瑰嚮閫夋嫨"
             };
             listAdd.push(rowData);
           }
@@ -1329,14 +1822,13 @@
     },
 
     getUnitList() {
-      listOrganization(3).then((res) => {
-        console.log("listOrganization", res);
+      listOrganization(3).then(res => {
         for (let i = 0; i < res.rows.length; i++) {
           this.unitList.push({
             organizationid: res.rows[i].organizationid,
             organizationname: res.rows[i].organizationname,
             bankname: res.rows[i].bankname,
-            bankaccount: res.rows[i].bankaccount,
+            bankaccount: res.rows[i].bankaccount
           });
         }
       });
@@ -1344,30 +1836,43 @@
 
     // 鎹愮尞鑰呭尰瀛︾粺璁℃墦鍗�
     dayin2(id) {
-      getdownloadYX(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",
+      getdownloadYX(id).then(res => {
+        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);
           });
-        }
       });
     },
 
     //姹囨�绘墦鍗�
     totaldayin(e) {
       // const id =this.row.id
-      getdownloadBX(e).then((res) => {
+      getdownloadBX(e).then(res => {
         if (res.downloadUrl) {
           var fileUrl = res;
           //鑾峰彇褰撳墠缃戝潃
@@ -1381,7 +1886,7 @@
           aEle.click();
           this.$alert("涓嬭浇鎴愬姛", "鎻愮ず", {
             confirmButtonText: "纭畾",
-            type: "success",
+            type: "success"
           });
         }
       });
@@ -1406,7 +1911,7 @@
         }
         scope.row.itemArr = result;
       } else {
-        getItemNames(scope.row.applytype).then((res) => {
+        getItemNames(scope.row.applytype).then(res => {
           scope.row.itemArr = res.data;
           //this.$set(this.fundDetails, rowindex, row);
         });
@@ -1414,43 +1919,44 @@
     },
 
     //鏂囦欢涓婁紶
-    handleUploadError() { },
+    handleUploadError() {},
     handleremove(file) {
-      this.fileList.splice(this.fileList.indexOf(file), 1)
+      this.fileList.splice(this.fileList.indexOf(file), 1);
     },
     handleExceed() {
       this.$message.error(`涓婁紶鏂囦欢鏁伴噺涓嶈兘瓒呰繃 ${5} 涓�!`);
     },
     //鏂囦欢涓婁紶鎴愬姛鍥炶皟
     uploadSccess(response, file, fileList) {
-      console.log("response", response);
-      console.log("file", file);
-      console.log("fileList", fileList);
       //鑾峰彇闄勪欢淇℃伅浣嶇疆
       if (response.code == 200) {
         this.form.filename = file.raw.name;
         this.$modal.msgSuccess(response.msg);
         this.fileList.push({ name: response.fileName, url: response.fileName });
       } else {
-        console.log(response.msg);;
+        console.log(response.msg);
       }
     },
     // 涓嬭浇鏂囦欢
     downFile(item) {
-      const url = process.env.VUE_APP_BASE_API + item.url
-      var a = document.createElement('a');
-      var event = new MouseEvent('click');
+      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);
     },
+    rowClassName({ row, column, rowIndex, columnIndex }) {
+      //姝ゅ垽鏂负鏈�鍚庝笁琛�
+      if (row.recordstatus == -1 && row.backflowlevel != null) {
+        return "error-row";
+      }
+    }
   },
 
   // 鐐瑰嚮鏂囦欢
   Filepopup(index, rows, row) {
-    console.log(index, rows, row);
     this.atpresent = index;
-    console.log(this.atpresent);
     this.pdfVisible = true;
     if (this.fundDetails[index].annexfilesList) {
       this.fileListto = this.rbDetails[index].annexfilesList;
@@ -1476,15 +1982,21 @@
     this.getUsermsg();
   },
 
-  beforeCreate() { }, //鐢熷懡鍛ㄦ湡 - 鍒涘缓涔嬪墠
-  beforeMount() { }, //鐢熷懡鍛ㄦ湡 - 鎸傝浇涔嬪墠
-  beforeUpdate() { }, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠
-  updated() { }, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪悗
-  beforeDestroy() { }, //鐢熷懡鍛ㄦ湡 - 閿�姣佷箣鍓�
-  destroyed() { }, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴�
-  activated() { }, //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂
+  beforeCreate() {}, //鐢熷懡鍛ㄦ湡 - 鍒涘缓涔嬪墠
+  beforeMount() {}, //鐢熷懡鍛ㄦ湡 - 鎸傝浇涔嬪墠
+  beforeUpdate() {}, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠
+  updated() {}, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪悗
+  beforeDestroy() {}, //鐢熷懡鍛ㄦ湡 - 閿�姣佷箣鍓�
+  destroyed() {}, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴�
+  activated() {} //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂
 };
 </script>
 <style scoped>
 /* @import url(); 寮曞叆鍏叡css绫� */
+.button-delete {
+  color: rgb(236, 69, 69);
+}
+::v-deep.el-table .error-row {
+  background: #fcebeb;
+}
 </style>

--
Gitblit v1.9.3