From 0ac2d43fce4d74f6eea5a51a2e16af4e6a536c7c Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期三, 14 八月 2024 14:19:24 +0800
Subject: [PATCH] 11

---
 src/views/project/fund/ethicalExpertFeeApply/index.vue | 1779 +++++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 1,185 insertions(+), 594 deletions(-)

diff --git a/src/views/project/fund/ethicalExpertFeeApply/index.vue b/src/views/project/fund/ethicalExpertFeeApply/index.vue
index c3f7c95..e88de4b 100644
--- a/src/views/project/fund/ethicalExpertFeeApply/index.vue
+++ b/src/views/project/fund/ethicalExpertFeeApply/index.vue
@@ -1,25 +1,63 @@
 <!--  -->
 <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>
@@ -33,31 +71,44 @@
               </el-row>
             </el-col>
           </el-row>
-          <el-table v-loading="loading" border highlight-current-row :data="donatebaseinfoList"
-            @row-click="selectDonotor">
+          <el-table
+            v-loading="loading"
+            border
+            highlight-current-row
+            :data="donatebaseinfoList"
+            @row-click="selectDonotor"
+          >
             <!-- <el-table-column label="鎹愮尞缂栧彿" align="center" prop="donorno" /> -->
             <el-table-column label="鎹愮尞杩涘害" align="center" prop="recordstate">
               <template slot-scope="scope">
-                <dict-tag :options="dict.type.sys_DonationStatus" :value="scope.row.recordstate" />
+                <dict-tag
+                  :options="dict.type.sys_DonationStatus"
+                  :value="scope.row.recordstate"
+                />
               </template>
             </el-table-column>
             <el-table-column label="濮撳悕" align="center" prop="name" />
           </el-table>
-          <pagination v-show="total > 0" :total="total" small :page.sync="queryParams.pageNum"
-            :limit.sync="queryParams.pageSize" @pagination="getBaseInfoList" />
+          <pagination
+            v-show="total > 0"
+            :total="total"
+            small
+            :page.sync="queryParams.pageNum"
+            :limit.sync="queryParams.pageSize"
+            @pagination="getBaseInfoList"
+          />
         </el-card>
       </el-col>
       <el-col :span="18">
         <el-card shadow="naver">
           <el-form ref="infoform" label-width="100px">
             <el-row :gutter="4" align="right" class="mb8">
-              <el-col :span="1.5">
-                <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
-                  v-hasPermi="['project:ethicalfund:add']">浼︾悊瀹℃煡涓撳璐圭敵璇�</el-button>
-              </el-col>
               <el-col :span="9">
                 <el-form-item label="鎹愮尞缂栧彿">
-                  <el-input v-model="curCase.donorno" :disabled="true"></el-input>
+                  <el-input
+                    v-model="curCase.donorno"
+                    :disabled="true"
+                  ></el-input>
                 </el-form-item>
               </el-col>
               <el-col :span="9">
@@ -65,47 +116,151 @@
                   <el-input v-model="curCase.name" :disabled="true"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col> </el-col>
+            </el-row>
+            <el-row :gutter="10" class="mb8">
+              <el-col :span="1.5">
+                <el-button
+                  type="primary"
+                  plain
+                  icon="el-icon-plus"
+                  size="mini"
+                  @click="handleAdd"
+                  v-hasPermi="['project:ethicalfund:add']"
+                  >鏂板鐢宠鍗�</el-button
+                >
+              </el-col>
             </el-row>
             <el-row>
-              <el-table v-loading="loading" border :data="donateconsolationfundList">
-                <el-table-column label="鐢宠鏃ユ湡" align="center" prop="createTime" width="150px">
+              <el-table
+                v-loading="loading"
+                border
+                :data="donateconsolationfundList"
+                :row-class-name="rowClassName"
+              >
+                <el-table-column
+                  label="鐢宠鏃ユ湡"
+                  align="center"
+                  prop="applyTime"
+                  width="150px"
+                >
                   <template slot-scope="scope">
                     <span>{{
-                      parseTime(scope.row.createTime, "{y}-{m}-{d}")
+                      parseTime(scope.row.applyTime, "{y}-{m}-{d}")
                     }}</span>
                   </template>
                 </el-table-column>
-                <el-table-column label="鐢宠浜�" align="center" prop="username" width="120px" />
-                <el-table-column label="鐢宠閲戦" align="center" prop="pretaxcost" width="200px" />
-                <el-table-column label="鎵�灞炵粍鍒�" align="center" prop="deptmentname" width="200px" />
-                <el-table-column label="缁勯暱" align="center" prop="managername" width="150px" />
-                <el-table-column label="瀹℃牳鐘舵��" align="center" prop="recordstatus">
+                <el-table-column
+                  label="鐢宠浜�"
+                  align="center"
+                  prop="username"
+                  width="120px"
+                />
+                <el-table-column
+                  label="鐢宠閲戦"
+                  align="center"
+                  prop="pretaxcost"
+                  width="200px"
+                />
+                <el-table-column
+                  label="鎵�灞炵粍鍒�"
+                  align="center"
+                  prop="deptmentname"
+                  width="200px"
+                />
+                <el-table-column
+                  label="缁勯暱"
+                  align="center"
+                  prop="managername"
+                  width="150px"
+                />
+                <el-table-column
+                  label="瀹℃牳鐘舵��"
+                  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>
                 <!--
                 <el-table-column label="鑱旂郴鐢佃瘽" align="center" prop="phone" width="150px" />
                 <el-table-column label="宸ヤ綔鍗曚綅" align="center" prop="unitname" width="220px" />
                 -->
-                <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:ethicalfund: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:ethicalfund:delete']">鍒犻櫎</el-button>
-                    <el-button size="mini" type="text" icon="el-icon-download" @click="mixExport(scope.row.id)"
-                      v-hasPermi="['project:ethicalfund: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:ethicalfund: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:ethicalfund: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:ethicalfund:download']"
+                      >涓嬭浇</el-button
+                    >
                   </template>
                 </el-table-column>
               </el-table>
@@ -116,72 +271,134 @@
     </el-row>
 
     <!-- 娣诲姞鎴栦慨鏀硅垂鐢ㄧ敵璇峰崟 -->
-    <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="2">浼︾悊瀹℃煡涓撳璐圭敵璇�</el-radio>
-            </el-form-item>
-          </el-col><el-col :span="10">
+              <el-radio v-model="form.applytype" label="2"
+                >浼︾悊瀹℃煡涓撳璐圭敵璇�</el-radio
+              >
+            </el-form-item> </el-col
+          ><el-col :span="10">
             <el-form-item label="鐢宠璇存槑" prop="remark">
               <el-input v-model="form.remark" placeholder="鐢宠璇存槑" />
             </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-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">
+          </el-col>
+          <el-col :span="5">
             <el-form-item label="绋庡墠閲戦" prop="pretaxcost">
-              <el-input v-model="form.pretaxcost" placeholder="绋庡墠閲戦鍚堣" :disabled="true" />
+              <el-input
+                v-model="form.pretaxcost"
+                placeholder="绋庡墠閲戦鍚堣"
+                :disabled="true"
+              />
             </el-form-item>
           </el-col>
           <el-col :span="5">
             <el-form-item label="绋庡悗閲戦" prop="pretaxcost">
-              <el-input v-model="form.taxedcost" placeholder="绋庡悗閲戦鍚堣" :disabled="true" />
+              <el-input
+                v-model="form.taxedcost"
+                placeholder="绋庡悗閲戦鍚堣"
+                :disabled="true"
+              />
             </el-form-item>
           </el-col>
           <el-col :span="5">
             <el-form-item label="瀹℃牳鐘舵��" prop="recordstatus">
               <!-- <el-input v-model="form.recordstatus" placeholder="瀹℃牳鎰忚" /> -->
-              <el-select v-model="form.recordstatus" placeholder="璇烽�夋嫨瀹℃牳鐘舵��" clearable size="small" :disabled="true">
-                <el-option v-for="dict in dict.type.sys_recordstatus" :key="dict.value" :label="dict.label"
-                  :value="dict.value" />
+              <el-select
+                v-model="form.recordstatus"
+                placeholder="璇烽�夋嫨瀹℃牳鐘舵��"
+                clearable
+                size="small"
+                :disabled="true"
+              >
+                <el-option
+                  v-for="dict in dict.type.sys_recordstatus"
+                  :key="dict.value"
+                  :label="dict.label"
+                  :value="dict.value"
+                />
               </el-select>
             </el-form-item>
           </el-col>
@@ -200,131 +417,297 @@
         </el-row>
         <el-row style="margin-bottom: 10px">
           <el-col :span="4">
-            <el-button @click.native.prevent="addAlls" type="primary" size="small">
+            <el-button
+              @click.native.prevent="addAlls"
+              type="primary"
+              size="small"
+            >
               瀵煎叆鏈嶅姟椤圭洰
             </el-button>
           </el-col>
         </el-row>
         <el-row style="margin-top: 5px; margin-bottom: 5px">
           <el-table :data="fundDetailArr" 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="鏈嶅姟椤圭洰" @change="select(scope.row)" clearable filterable
-                  allow-create :filter-method="(val) => SearchItem(val, scope)">
-                  <el-option v-for="dict in scope.row.itemArr" :key="dict.index" :label="dict.itemName"
-                    :value="dict.id"></el-option>
+                <el-select
+                  v-model="scope.row.itemid"
+                  placeholder="鏈嶅姟椤圭洰"
+                  @change="select(scope.row)"
+                  clearable
+                  filterable
+                  allow-create
+                  :filter-method="val => SearchItem(val, scope)"
+                >
+                  <el-option
+                    v-for="dict in scope.row.itemArr"
+                    :key="dict.index"
+                    :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 != 3">
+            <el-table-column
+              prop="beneficiaryno"
+              align="center"
+              label="濮撳悕"
+              width="120"
+              v-if="form.applytype != 3"
+            >
               <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
+                >
                 <!-- <el-input
                   v-model="scope.row.beneficiaryname"
                   placeholder="濮撳悕"
                           /> -->
               </template>
             </el-table-column>
-            <el-table-column prop="servicesscopename" align="center" label="璐圭敤璇存槑" width="180">
+            <el-table-column
+              prop="servicesscopename"
+              align="center"
+              label="璐圭敤璇存槑"
+              width="180"
+            >
               <template slot-scope="scope">
-                <el-select v-model="scope.row.servicesscopename" placeholder="璐圭敤璇存槑" clearable allow-create filterable
-                  @change="selectremark(scope.row)">
-                  <el-option v-for="dict in fundblock" :key="dict.expensedescribe" :label="dict.expensedescribe"
-                    :value="dict.expensedescribe"></el-option>
+                <el-select
+                  v-model="scope.row.servicesscopename"
+                  placeholder="璐圭敤璇存槑"
+                  clearable
+                  allow-create
+                  filterable
+                  @change="selectremark(scope.row)"
+                >
+                  <el-option
+                    v-for="dict in fundblock"
+                    :key="dict.expensedescribe"
+                    :label="dict.expensedescribe"
+                    :value="dict.expensedescribe"
+                  ></el-option>
                 </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-input v-model="scope.row.amount" placeholder="绋庡墠閲戦" @blur="(val) => {
-                  sumTotalFee();
-                }
-                  " />
+                <el-input
+                  v-model="scope.row.amount"
+                  placeholder="绋庡墠閲戦"
+                  @blur="
+                    val => {
+                      sumTotalFee();
+                    }
+                  "
+                />
               </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="绋庡悗閲戦" @blur="(val) => {
-                  sumTotalFee();
-                }
-                  " />
+                <el-input
+                  v-model="scope.row.taxedamount"
+                  placeholder="绋庡悗閲戦"
+                  @blur="
+                    val => {
+                      sumTotalFee();
+                    }
+                  "
+                />
               </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="quantity" align="center" label="鏁伴噺" width="120" v-if="form.applytype == '3'">
+            <el-table-column
+              prop="quantity"
+              align="center"
+              label="鏁伴噺"
+              width="120"
+              v-if="form.applytype == '3'"
+            >
               <template slot-scope="scope">
-                <el-input v-model="scope.row.quantity" placeholder="鏁伴噺" @blur="(val) => {
-                  sumTotalFee();
-                }
-                  " />
+                <el-input
+                  v-model="scope.row.quantity"
+                  placeholder="鏁伴噺"
+                  @blur="
+                    val => {
+                      sumTotalFee();
+                    }
+                  "
+                />
               </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();
-                }
-                  " />
+                <el-input
+                  v-model="scope.row.price"
+                  placeholder="浠锋牸"
+                  @blur="
+                    val => {
+                      sumTotalFee();
+                    }
+                  "
+                />
               </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, fundDetailArr)
-                  " 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, fundDetailArr)
+                  "
+                  type="text"
+                  size="small"
+                >
+                  <span class="button-delete"
+                    ><i class="el-icon-delete"></i>鍒犻櫎</span
+                  >
                 </el-button>
               </template>
             </el-table-column>
@@ -373,55 +756,139 @@
         <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="remove" accept="image/*,.pdf">
-                <el-button :disabled='dialogType == "detail"' size="small" type="primary">涓婁紶</el-button>
+              <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="remove"
+                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="(spec, index) in unitList" :key="index" :label="spec.organizationname"
-                  :value="spec.organizationid"></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="(spec, index) in unitList"
+                  :key="index"
+                  :label="spec.organizationname"
+                  :value="spec.organizationid"
+                ></el-option>
               </el-select>
             </el-form-item>
           </el-col>
@@ -429,7 +896,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>
@@ -453,7 +922,7 @@
   getdownloadBX,
   addorupdateFund,
   getdownloadLL,
-  getdetailsByItemId,
+  getdetailsByItemId
 } from "@/api/project/fund";
 import {
   onelistFunds,
@@ -468,13 +937,13 @@
   getItemNames,
   getFundType,
   getFundTypeAll,
-  listcountItem,
+  listcountItem
 } from "@/api/project/funddetail";
 import {
   listOrganization,
   getOrganization,
   listReportname,
-  listUser,
+  listUser
 } from "@/api/project/organization";
 import {
   listExternalperson,
@@ -483,11 +952,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";
@@ -499,7 +968,7 @@
   //import寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢�
   components: {
     Li_area_select,
-    OrgSelecter,
+    OrgSelecter
   },
   name: "fundApply",
   dicts: [
@@ -514,6 +983,7 @@
     "sys_finsubject",
     "sys_financeitemtype",
     "sys_expensetype",
+    "sys_stage_type"
   ],
   data() {
     //杩欓噷瀛樻斁鏁版嵁
@@ -540,28 +1010,28 @@
         treatmenthospitalname: null,
         donorno: null,
         reportername: null,
-        reporttime: null,
+        reporttime: null
       },
       fundQueryParam: {
         pageNum: 1,
         pageSize: 100,
         infoid: null,
         applytype: "2",
-        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" }
+        ]
       },
       //鎹愮尞妗堜緥鍒楄〃鏁版嵁
       // donationCaseTableData:[],
@@ -600,7 +1070,7 @@
         beneficiaryno: null,
         unitno: null,
         unitname: null,
-        index: null,
+        index: null
       },
       //闄勪欢鍒楄〃
       fileList: [],
@@ -608,110 +1078,24 @@
       uploadFileUrl: process.env.VUE_APP_BASE_API + "/common/upload",
 
       headers: {
-        Authorization: "Bearer " + getToken(),
-      },
+        Authorization: "Bearer " + getToken()
+      }
     };
   },
+
   //鐩戝惉灞炴�� 绫讳技浜巇ata姒傚康
   computed: {},
   //鐩戞帶data涓殑鏁版嵁鍙樺寲
   watch: {},
+
   //鏂规硶闆嗗悎
   methods: {
-    ShowDetailDialog(spoce, showType) {
-      this.funddetailForm.index = spoce.$index;
-      this.funddetailForm.beneficiaryno = spoce.row.beneficiaryno;
-      this.funddetailForm.beneficiaryname = spoce.row.beneficiaryname;
-      this.funddetailForm.unitno = spoce.row.unitno;
-      this.funddetailForm.unitname = spoce.row.unitname;
-      this.detailInfoDialogShow = true;
-      this.detailInfoDialogShowType = showType;
-    },
-    ConfirmDetailDialog() {
-      let tempIndex = this.funddetailForm.index;
-      let tempName = this.funddetailForm.beneficiaryname;
-      let tempUnitname = this.funddetailForm.unitname;
-      let singleDetail = this.fundDetailArr[tempIndex];
-      if (this.detailInfoDialogShowType == "name") {
-        this.personlist.map((res) => {
-          if (tempName == res.username) {
-            singleDetail.beneficiaryno = res.userno;
-            singleDetail.beneficiaryname = res.username;
-            singleDetail.bankcardno = res.bankcardno;
-            singleDetail.branchbankname = res.branchbankname;
-            singleDetail.depositbank = res.depositbank;
-            singleDetail.idcardno = res.idcardno;
-            singleDetail.phone = res.telephone;
-            singleDetail.title = res.title;
-            singleDetail.unitname = res.unitname;
-            singleDetail.unitno = parseInt(res.unitno);
-          } else {
-            singleDetail.beneficiaryname = tempName;
-            singleDetail.beneficiaryno = tempName;
-          }
-        });
-      } else if (this.detailInfoDialogShowType == "unit") {
-        singleDetail.unitno = this.funddetailForm.unitno;
-        try {
-          let unitIndex = this.unitList.findIndex(
-            (item) => singleDetail.unitno == item.organizationid
-          );
-          if (unitIndex > -1) {
-            singleDetail.unitname = this.unitList[unitIndex].organizationname;
-          } else {
-            singleDetail.unitname = singleDetail.unitno;
-          }
-        } catch {
-          singleDetail.unitname = singleDetail.unitno;
-        }
-      }
-      this.fundDetailArr[tempIndex] = singleDetail;
-      this.detailInfoDialogShow = false;
-    },
-    handleup(row) {
-      this.$confirm("鏄惁纭灏嗙櫥璁拌褰曚笂鎶ワ紵", "鎻愮ず", {
-        confirmButtonText: "纭畾",
-        cancelButtonText: "鍙栨秷",
-        type: "warning",
-      })
-        .then(() => {
-          //鏌ユ壘鏄惁瀛樺湪鐧昏瀹屾垚璁板綍
-          //鍒ゆ柇鏄惁瀛樺湪涓婃姤璁板綍
-          row.recordstatus = "0";
-
-          updateFund(row).then((response) => {
-            if (response.code == 200) {
-              this.$message({
-                type: "success",
-                message: "鐢宠鎴愬姛",
-              });
-            } else {
-              this.$message({
-                type: "error",
-                message: "鐢宠澶辫触",
-              });
-            }
-            this.loading = false;
-          });
-        })
-        .catch(() => {
-          this.$message({
-            type: "info",
-            message: "宸插彇娑堢敵璇�",
-          });
-        });
-    },
-    getUsermsg() {
-      getUserProfile().then((response) => {
-        this.defaultperson = response.data;
-        this.standardlevel = response.data.standardlevel;
-      });
-    },
     /** 鎼滅储鎸夐挳鎿嶄綔 */
     handleQuery() {
       this.queryParams.pageNum = 1;
       this.getList();
     },
+
     /** 閲嶇疆鎸夐挳鎿嶄綔 */
     resetQuery() {
       this.daterangeReporttime = [];
@@ -719,34 +1103,28 @@
       this.resetForm("queryForm");
       this.handleQuery();
     },
-    /** 鏌ヨ鎹愮尞浜洪亾鎱伴棶閲戝垪琛� */
-    getList() {
-      this.loading = true;
-      this.queryParams.params = {};
-      if (null != this.daterangeReporttime && "" != this.daterangeReporttime) {
-        this.queryParams.params["beginReporttime"] =
-          this.daterangeReporttime[0];
-        this.queryParams.params["endReporttime"] = this.daterangeReporttime[1];
-      }
-      // this.queryParams.residencetown = this.$refs.areaSelect.getQu();
-      listDonatebaseinfo(this.queryParams).then((response) => {
-        this.donatebaseinfoList = response.rows;
-        this.total = response.total;
-        this.loading = false;
-      });
-    },
-
-    getBaseInfoList() {
-      this.loading = true;
-      listDonatebaseinfo(this.queryParams).then((response) => {
-        this.donatebaseinfoList = response.rows;
-        this.total = response.total;
-        this.loading = false;
-      });
-    },
-
     /** 鏂板鎸夐挳鎿嶄綔 */
     handleAdd() {
+      if (this.curCase.id) {
+        this.$router.push({
+          path: "/finance/applyDetail/",
+          query: {
+            id: 0,
+            businessType: "2",
+            operationType: "add",
+            curCase: this.curCase
+          }
+        });
+      } else {
+        const h = this.$createElement;
+        this.$message({
+          message: h("p", null, [
+            h("span", null, "璇峰湪宸﹁竟鐨勬崘鐚渚嬭〃閫夋嫨闇�瑕佹搷浣滅殑妗堜緥锛�")
+          ])
+        });
+      }
+      return;
+
       if (this.curCase.id) {
         this.istrue += 2;
         this.reset();
@@ -773,183 +1151,192 @@
       } else {
         const h = this.$createElement;
         this.$message({
-          message: h("p", null, [h("span", null, "璇峰厛閫夋嫨宸︽柟鎹愮尞妗堜緥 ")]),
+          message: h("p", null, [h("span", null, "璇峰厛閫夋嫨宸︽柟鎹愮尞妗堜緥 ")])
         });
       }
     },
-    //鐐瑰嚮鎹愮尞妗堜緥鍒楄〃瑙﹀彂鏂规硶
-    selectDonotor(row, column, event) {
-      this.curCase = row;
-      this.getfundList();
-    },
-    getfundList() {
-      this.loading = true;
+    /** 淇敼鎸夐挳鎿嶄綔 */
+    handleUpdate(row) {
+      this.$router.push({
+        path: "/finance/applyDetail/",
+        query: {
+          id: row.id,
+          businessType: "2",
+          operationType: "update",
+          curCase: this.curCase
+        }
+      });
+      return;
+
+      this.isopen = 0;
       this.reset();
-      this.fundQueryParam.infoid = this.curCase.id;
-      listFund(this.fundQueryParam).then((response) => {
-        this.loading = false;
-        this.donateconsolationfundList = response.rows;
+      this.queryParams.params = {};
+      this.dialogOpen = true;
+      this.title = "淇敼璐圭敤鐢宠";
+      this.dialogType = "edit";
+
+      const id = row.id || this.ids;
+      getFund(id).then(response => {
+        this.form = response.data;
+        //闄勪欢澶勭悊
+        this.fileList = this.form.annexbankcard
+          ? this.form.annexbankcard
+              .split(",")
+              .map(item => ({ url: item, name: item }))
+          : [];
+
+        getownFundDetail(id).then(async res => {
+          this.fundDetailArr = res.data;
+          for (let m = 0; m < this.fundDetailArr.length; m++) {
+            this.fundDetailArr[m].itemArr = [];
+            this.getItemArr(m, this.fundDetailArr[m]);
+          }
+        });
       });
     },
 
-    select(row) {
-      row.itemArr.map((res) => {
-        if (row.itemid === res.id) {
-          row.remark = res.itemDescribe;
-          row.itemcode = res.itemCode;
+    /** 鏌ョ湅鎸夐挳鎿嶄綔 */
+    handleDetail(row) {
+      this.$router.push({
+        path: "/finance/applyDetail/",
+        query: {
+          id: row.id,
+          businessType: "2",
+          operationType: "detail",
+          curCase: this.curCase
         }
       });
-      var repeatNum = 0;
-      this.fundDetailArr.map((res) => {
-        if (res.applytype === row.applytype && res.itemid == row.itemid) {
-          repeatNum++;
-        }
-      });
-      if (repeatNum > 1) {
-        this.$modal.msgWarning("鎮ㄥ凡缁忔彁浜よ繃鏈嶅姟椤圭洰");
-      }
+      return;
 
-      getdetailsByItemId(row.itemid).then((res) => {
-        let fundmsg = res.data;
-        let fundblock = [];
-        fundmsg.forEach((item) => {
-          fundblock.push({
-            expense: item.expense,
-            expensedescribe: item.expensedescribe,
-            remark: item.expensedescribe,
-            servicesscope: item.id,
+      this.isopen = 0;
+      this.reset();
+      this.queryParams.params = {};
+      this.dialogOpen = true;
+      this.title = "鏌ョ湅璐圭敤鐢宠";
+      this.dialogType = "detail";
+      const id = row.id || this.ids;
+
+      getFund(id).then(response => {
+        this.form = response.data;
+        let listFundflowparams = {
+          fundid: row.id,
+          fundtype: 2
+        };
+        //闄勪欢澶勭悊
+        this.fileList = this.form.annexbankcard
+          ? this.form.annexbankcard
+              .split(",")
+              .map(item => ({ url: item, name: item }))
+          : [];
+
+        listFundflow(listFundflowparams).then(res => {
+          this.fundflowList = res.rows;
+        });
+        getownFundDetail(id).then(res => {
+          this.fundDetailArr = res.data;
+          for (let m = 0; m < this.fundDetailArr.length; m++) {
+            this.fundDetailArr[m].itemArr = [];
+            this.getItemArr(m, this.fundDetailArr[m]);
+            this.fundDetailArr[m].fundblock = [];
+            this.fundDetailArr[m].fundblock.push({
+              expense: this.fundDetailArr[m].expense,
+              expensedescribe: this.fundDetailArr[m].servicesscopename,
+              remark: this.fundDetailArr[m].servicesscope,
+              servicesscope: this.fundDetailArr[m].servicesscope
+            });
+          }
+        });
+      });
+    },
+
+    /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+    handleDelete(row) {
+      const ids = row.id || this.ids;
+      this.$modal
+        .confirm("鏄惁纭鍒犻櫎璇ヨ褰曪紵")
+        .then(function() {
+          return delFund(ids);
+        })
+        .then(() => {
+          getownFundDetail(ids).then(res => {
+            let listdetails = res.data;
+            for (let i = 0; i < listdetails.length; i++) {
+              delFunddetail(listdetails[i].id);
+            }
+          });
+          // this.getList();
+          this.getfundList();
+          this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+        })
+        .catch(() => {});
+    },
+    /** 涓婃姤鎸夐挳鎿嶄綔 */
+    handleup(row) {
+      this.$confirm("鏄惁纭灏嗙櫥璁拌褰曚笂鎶ワ紵", "鎻愮ず", {
+        confirmButtonText: "纭畾",
+        cancelButtonText: "鍙栨秷",
+        type: "warning"
+      })
+        .then(() => {
+          //鏌ユ壘鏄惁瀛樺湪鐧昏瀹屾垚璁板綍
+          //鍒ゆ柇鏄惁瀛樺湪涓婃姤璁板綍
+          row.recordstatus = "0";
+          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: "鐢宠鎴愬姛"
+              });
+            } else {
+              this.$message({
+                type: "error",
+                message: "鐢宠澶辫触"
+              });
+            }
+            this.loading = false;
+          });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "宸插彇娑堢敵璇�"
           });
         });
-
-        row.fundblock = fundblock;
-        row.servicesscope = null;
-        row.servicesscopename = "";
-      });
-    },
-    // 鍙栨秷鎸夐挳
-    cancel() {
-      this.dialogOpen = false;
-      this.reset();
     },
 
-    // 琛ㄥ崟閲嶇疆
-    reset() {
-      this.form = {
-        id: null,
-        recordstatus: "-1",
-        username: null,
-        userno: null,
-        infoid: null,
-        donorno: null,
-        delFlag: null,
-        createBy: null,
-        createTime: null,
-        updateBy: null,
-        updateTime: null,
-        familyrelations: null,
-        name: null,
-        doname: null,
-        unitname: null,
-        unitno: null,
-        sex: null,
-        idcardtype: null,
-        idcardno: null,
-        phone: null,
-        donorname: null,
-        depositbank: null,
-        bankprovince: null,
-        bankprovincename: null,
-        bankcity: null,
-        bankcityname: null,
-        banktown: null,
-        banktownname: null,
-        branchbankname: null,
-        bankcardno: null,
-        annexbankcard: null,
-        annexregistform: null,
-        consolationmoney: null,
-        applytype: "2",
-        servicetypename: null,
-        servicesscopename: null,
-        pretaxcost: null,
-        taxedcost: null,
-      };
-      this.resetForm("form");
-      //娓呯┖闄勪欢
-      this.fileList = []
-    },
-
-    //鏂板涓�琛�
-    addRow(rowIndex) {
-      let rowData = {
-        orderno: null,
-        id: null,
-        fundid: null,
-        beneficiaryname: "鐐瑰嚮閫夋嫨",
-        beneficiaryno: null,
-        unitname: "鐐瑰嚮閫夋嫨",
-        unitno: null,
-        uintuserno: null,
-        title: null,
-        idcardtype: null,
-        idcardno: null,
-        sex: null,
-        familyrelations: null,
-        phone: null,
-        depositbank: null,
-        bankcardno: null,
-        branchbankname: null,
-        annexbankcard: null,
-        annexregistform: null,
-        applytype: null,
-        itemid: null,
-        itemname: null,
-        itemtype: null,
-        amount: null,
-        prepaidamount: null,
-        taxamount: null,
-        invoicecount: null,
-        taxedamount: null,
-        attachcount: null,
-        remark: null,
-        recordstatus: "-1",
-        delFlag: null,
-        createBy: null,
-        createTime: null,
-        updateBy: null,
-        updateTime: null,
-        uploadflag: null,
-        uploadtime: null,
-        itemArr: [],
-      };
-      if (rowIndex == undefined || rowIndex == null || rowIndex < 0) {
-        this.fundDetailArr.push(rowData);
-      } else {
-        this.fundDetailArr.splice(rowIndex + 1, 0, rowData);
-      }
-      for (let i = 0; i < this.fundDetailArr.length; i++) {
-        this.fundDetailArr[i].orderno = i + 1;
-      }
-    },
-
-    //鍔犺浇鏈嶅姟椤圭洰
-    LoadItemTypeArr(row) {
-      let list = this.fundtypeArrAll.filter((r) => r.itemType == row.applytype);
-      row.itemArr = list[0].itemDetails;
-      row.itemid = null;
-      this.$forceUpdate();
-      //this.loading = true;
-      // getItemNames(row.applytype).then((res) => {
-      //   this.loading = false;
-      //   row.itemid = null;
-      //   row.itemArr = res.data;
-      //   this.$forceUpdate();
-      // });
+    /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+    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(() => {});
     },
 
     /** 鎻愪氦鎸夐挳 */
     submitForm() {
-      this.$refs["form"].validate((valid) => {
+      this.$refs["form"].validate(valid => {
         if (valid) {
           let formData = this.form;
           let totalPreTaxAmount = 0.0;
@@ -1002,9 +1389,9 @@
           if (list.length > 0) {
             this.form.annexbankcard = list.map(item => item.url).join(",");
           }
-          
+
           if (this.form.id != null) {
-            updateFund(this.form).then((response) => {
+            updateFund(this.form).then(response => {
               this.getfundList();
               this.dialogOpen = false;
               this.getList();
@@ -1017,16 +1404,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 => {});
                 }
               }
             });
@@ -1037,7 +1424,7 @@
               let tempUtemArr = tempData.itemArr;
               //鑾峰彇鏈嶅姟椤圭洰鏄庣粏
               let itemIndex = tempUtemArr.findIndex(
-                (item) => tempData.itemid == item.id
+                item => tempData.itemid == item.id
               );
               if (itemIndex > -1) {
                 tempData.itemname = tempUtemArr[itemIndex].itemName;
@@ -1045,7 +1432,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;
@@ -1054,7 +1441,7 @@
             }
 
             this.form.serviceFunddetails = this.fundDetailArr;
-            addorupdateFund(this.form).then((response) => {
+            addorupdateFund(this.form).then(response => {
               if (response.code === 200) {
                 this.$modal.msgSuccess("鏂板鎴愬姛");
                 this.loading = false;
@@ -1069,6 +1456,215 @@
         }
       });
     },
+    /** 鍙栨秷鎸夐挳 */
+    cancel() {
+      this.dialogOpen = false;
+      this.reset();
+    },
+
+    //鑾峰彇鎵�鏈夌敤鎴峰垪琛�
+    getUsermsg() {
+      getUserProfile().then(response => {
+        this.defaultperson = response.data;
+        this.standardlevel = response.data.standardlevel;
+      });
+    },
+
+    /** 鏌ヨ鎹愮尞浜洪亾鎱伴棶閲戝垪琛� */
+    getList() {
+      this.loading = true;
+      this.queryParams.params = {};
+      if (null != this.daterangeReporttime && "" != this.daterangeReporttime) {
+        this.queryParams.params[
+          "beginReporttime"
+        ] = this.daterangeReporttime[0];
+        this.queryParams.params["endReporttime"] = this.daterangeReporttime[1];
+      }
+      // this.queryParams.residencetown = this.$refs.areaSelect.getQu();
+      listDonatebaseinfo(this.queryParams).then(response => {
+        this.donatebaseinfoList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+
+    //鑾峰彇鎹愮尞妗堜緥鍒楄〃
+    getBaseInfoList() {
+      this.loading = true;
+      listDonatebaseinfo(this.queryParams).then(response => {
+        this.donatebaseinfoList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+
+    //鐐瑰嚮鎹愮尞妗堜緥鍒楄〃瑙﹀彂鏂规硶
+    selectDonotor(row, column, event) {
+      this.curCase = row;
+      this.getfundList();
+    },
+
+    //鑾峰彇妗堜緥涓撳璐圭敤鐢宠鍗�
+    getfundList() {
+      this.loading = true;
+      this.reset();
+      this.fundQueryParam.infoid = this.curCase.id;
+      listFund(this.fundQueryParam).then(response => {
+        this.loading = false;
+        this.donateconsolationfundList = response.rows;
+      });
+    },
+
+    select(row) {
+      row.itemArr.map(res => {
+        if (row.itemid === res.id) {
+          row.remark = res.itemDescribe;
+          row.itemcode = res.itemCode;
+        }
+      });
+      var repeatNum = 0;
+      this.fundDetailArr.map(res => {
+        if (res.applytype === row.applytype && res.itemid == row.itemid) {
+          repeatNum++;
+        }
+      });
+      if (repeatNum > 1) {
+        this.$modal.msgWarning("鎮ㄥ凡缁忔彁浜よ繃鏈嶅姟椤圭洰");
+      }
+
+      getdetailsByItemId(row.itemid).then(res => {
+        let fundmsg = res.data;
+        let fundblock = [];
+        fundmsg.forEach(item => {
+          fundblock.push({
+            expense: item.expense,
+            expensedescribe: item.expensedescribe,
+            remark: item.expensedescribe,
+            servicesscope: item.id
+          });
+        });
+
+        row.fundblock = fundblock;
+        row.servicesscope = null;
+        row.servicesscopename = "";
+      });
+    },
+
+    // 琛ㄥ崟閲嶇疆
+    reset() {
+      this.form = {
+        id: null,
+        recordstatus: "-1",
+        username: null,
+        userno: null,
+        infoid: null,
+        donorno: null,
+        delFlag: null,
+        createBy: null,
+        createTime: null,
+        updateBy: null,
+        updateTime: null,
+        familyrelations: null,
+        name: null,
+        doname: null,
+        unitname: null,
+        unitno: null,
+        sex: null,
+        idcardtype: null,
+        idcardno: null,
+        phone: null,
+        donorname: null,
+        depositbank: null,
+        bankprovince: null,
+        bankprovincename: null,
+        bankcity: null,
+        bankcityname: null,
+        banktown: null,
+        banktownname: null,
+        branchbankname: null,
+        bankcardno: null,
+        annexbankcard: null,
+        annexregistform: null,
+        consolationmoney: null,
+        applytype: "2",
+        servicetypename: null,
+        servicesscopename: null,
+        pretaxcost: null,
+        taxedcost: null
+      };
+      this.resetForm("form");
+      //娓呯┖闄勪欢
+      this.fileList = [];
+    },
+
+    //鏂板涓�琛�
+    addRow(rowIndex) {
+      let rowData = {
+        orderno: null,
+        id: null,
+        fundid: null,
+        beneficiaryname: "鐐瑰嚮閫夋嫨",
+        beneficiaryno: null,
+        unitname: "鐐瑰嚮閫夋嫨",
+        unitno: null,
+        uintuserno: null,
+        title: null,
+        idcardtype: null,
+        idcardno: null,
+        sex: null,
+        familyrelations: null,
+        phone: null,
+        depositbank: null,
+        bankcardno: null,
+        branchbankname: null,
+        annexbankcard: null,
+        annexregistform: null,
+        applytype: null,
+        itemid: null,
+        itemname: null,
+        itemtype: null,
+        amount: null,
+        prepaidamount: null,
+        taxamount: null,
+        invoicecount: null,
+        taxedamount: null,
+        attachcount: null,
+        remark: null,
+        recordstatus: "-1",
+        delFlag: null,
+        createBy: null,
+        createTime: null,
+        updateBy: null,
+        updateTime: null,
+        uploadflag: null,
+        uploadtime: null,
+        itemArr: []
+      };
+      if (rowIndex == undefined || rowIndex == null || rowIndex < 0) {
+        this.fundDetailArr.push(rowData);
+      } else {
+        this.fundDetailArr.splice(rowIndex + 1, 0, rowData);
+      }
+      for (let i = 0; i < this.fundDetailArr.length; i++) {
+        this.fundDetailArr[i].orderno = i + 1;
+      }
+    },
+
+    //鍔犺浇鏈嶅姟椤圭洰
+    LoadItemTypeArr(row) {
+      let list = this.fundtypeArrAll.filter(r => r.itemType == row.applytype);
+      row.itemArr = list[0].itemDetails;
+      row.itemid = null;
+      this.$forceUpdate();
+      //this.loading = true;
+      // getItemNames(row.applytype).then((res) => {
+      //   this.loading = false;
+      //   row.itemid = null;
+      //   row.itemArr = res.data;
+      //   this.$forceUpdate();
+      // });
+    },
+
     selectremark(row) {
       this.fundblock.forEach((item, i) => {
         if (item.expensedescribe === row.servicesscopename) {
@@ -1078,7 +1674,7 @@
           // row.taxedamount = row.amount - row.taxamount;
           // this.form.amountrequested = item.expense;
           this.form.serviceFunddetails = 0;
-          this.fundDetailArr.map((item) => {
+          this.fundDetailArr.map(item => {
             this.form.serviceFunddetails += item.amount;
           });
           // row.remark
@@ -1100,113 +1696,28 @@
     // },
 
     getlistUser() {
-      listUser().then((res) => {
+      listUser().then(res => {
         this.userlist = res.data;
       });
-    },
-
-    /** 淇敼鎸夐挳鎿嶄綔 */
-    handleUpdate(row) {
-      this.isopen = 0;
-      this.reset();
-      this.queryParams.params = {};
-      this.dialogOpen = true;
-      this.title = "淇敼璐圭敤鐢宠";
-      this.dialogType = "edit";
-
-      const id = row.id || this.ids;
-      getFund(id).then((response) => {
-        this.form = response.data;
-        //闄勪欢澶勭悊
-        this.fileList = this.form.annexbankcard ? this.form.annexbankcard.split(",").map(item => ({ url: item, name: item })) : []
-
-        getownFundDetail(id).then(async (res) => {
-          this.fundDetailArr = res.data;
-          for (let m = 0; m < this.fundDetailArr.length; m++) {
-            this.fundDetailArr[m].itemArr = [];
-            this.getItemArr(m, this.fundDetailArr[m]);
-          }
-        });
-      });
-    },
-
-    /** 鏌ョ湅鎸夐挳鎿嶄綔 */
-    handleDetail(row) {
-      this.isopen = 0;
-      this.reset();
-      this.queryParams.params = {};
-      this.dialogOpen = true;
-      this.title = "鏌ョ湅璐圭敤鐢宠";
-      this.dialogType = "detail";
-      const id = row.id || this.ids;
-
-      getFund(id).then((response) => {
-        this.form = response.data;
-        let listFundflowparams = {
-          fundid: row.id,
-          fundtype: 2,
-        };
-        //闄勪欢澶勭悊
-        this.fileList = this.form.annexbankcard ? this.form.annexbankcard.split(",").map(item => ({ url: item, name: item })) : []
-
-        listFundflow(listFundflowparams).then((res) => {
-          this.fundflowList = res.rows;
-        });
-        getownFundDetail(id).then((res) => {
-          this.fundDetailArr = res.data;
-          for (let m = 0; m < this.fundDetailArr.length; m++) {
-            this.fundDetailArr[m].itemArr = [];
-            this.getItemArr(m, this.fundDetailArr[m]);
-            this.fundDetailArr[m].fundblock = [];
-            this.fundDetailArr[m].fundblock.push({
-              expense: this.fundDetailArr[m].expense,
-              expensedescribe: this.fundDetailArr[m].servicesscopename,
-              remark: this.fundDetailArr[m].servicesscope,
-              servicesscope: this.fundDetailArr[m].servicesscope,
-            });
-          }
-        });
-      });
-    },
-
-    handleDelete(row) {
-      const ids = row.id || this.ids;
-      this.$modal
-        .confirm("鏄惁纭鍒犻櫎璇ヨ褰曪紵")
-        .then(function () {
-          return delFund(ids);
-        })
-        .then(() => {
-          getownFundDetail(ids).then((res) => {
-            let listdetails = res.data;
-            for (let i = 0; i < listdetails.length; i++) {
-              delFunddetail(listdetails[i].id);
-            }
-          });
-          // this.getList();
-          this.getfundList();
-          this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
-        })
-        .catch(() => { });
     },
 
     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.fundDetailArr, res.data);
                     this.sumTotalFee();
                     // this.fundDetailArr = res.data
@@ -1276,21 +1787,21 @@
 
     //鑾峰彇璐圭敤绫诲瀷
     getCurFundType() {
-      getFundTypeAll(this.currentApplyType).then((res) => {
+      getFundTypeAll(this.currentApplyType).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.fundDetailArr, rowindex, row);
       //this.loading = true;
@@ -1307,7 +1818,43 @@
 
     //涓撳璐瑰姵鍔℃墦鍗�
     dayin(id) {
-      getdownloadLL(id).then((res) => {
+      getdownloadLL(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 => {
         if (res.downloadUrl) {
           var fileUrl = res;
           //鑾峰彇褰撳墠缃戝潃
@@ -1321,54 +1868,33 @@
           aEle.click();
           this.$alert("涓嬭浇鎴愬姛", "鎻愮ず", {
             confirmButtonText: "纭畾",
-            type: "success",
+            type: "success"
           });
         }
       });
     },
 
-    //姹囨�绘墦鍗�
-    totaldayin(e) {
-      // const id =this.row.id
-      getdownloadBX(e).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",
-          });
-        }
-      });
-    },
     selectReporters() {
       //涓撳浜哄憳鍒楄〃
       let arr = ["zzry"];
       let arrreportlist = [];
       for (let i = 0; i < arr.length; i++) {
         this.arrr2 = [];
-        listReportname(arr[i]).then((res) => {
+        listReportname(arr[i]).then(res => {
           this.arrr2 = res.data;
           this.arrr3 = this.arrr3.concat(this.arrr2);
         });
       }
     },
+
     getlistExternalperson() {
-      listExternalperson().then((res) => {
+      listExternalperson().then(res => {
         this.personlist = res.rows;
       });
     },
 
     selectpersonmsg(row, rowindex) {
-      this.personlist.map((res) => {
+      this.personlist.map(res => {
         if (row.beneficiaryno === res.userno) {
           row.beneficiaryname = res.username;
           row.bankcardno = res.bankcardno;
@@ -1383,6 +1909,18 @@
         }
       });
     },
+
+    getUnitList() {
+      listOrganization(3).then(response => {
+        for (let i = 0; i < response.rows.length; i++) {
+          this.unitList.push({
+            organizationid: response.rows[i].organizationid,
+            organizationname: response.rows[i].organizationname
+          });
+        }
+      });
+    },
+
     SearchItem(val, scope) {
       let result = [];
       if (val != "") {
@@ -1397,35 +1935,24 @@
         }
         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.fundDetailArr, rowindex, row);
         });
       }
     },
 
-    getUnitList() {
-      listOrganization(3).then((response) => {
-        for (let i = 0; i < response.rows.length; i++) {
-          this.unitList.push({
-            organizationid: response.rows[i].organizationid,
-            organizationname: response.rows[i].organizationname,
-          });
-        }
-      });
-    },
-
     addAlls() {
       this.loading = true;
       this.fundDetailArr = this.fundDetailArr.filter(
-        (r) => r.applytype != "" && r.applytype != null
+        r => r.applytype != "" && r.applytype != null
       );
       let listAdd = [];
       //let listAdd = this.fundDetailArr;
       for (let i = 0; i < this.fundtypeArrAll.length; i++) {
         for (let j = 0; j < this.fundtypeArrAll[i].itemDetails.length; j++) {
           let list = this.fundDetailArr.filter(
-            (r) =>
+            r =>
               r.applytype == this.fundtypeArrAll[i].itemType &&
               r.itemid == this.fundtypeArrAll[i].itemDetails[j].id
           );
@@ -1439,7 +1966,7 @@
               recordstatus: "-1",
               itemArr: this.fundtypeArrAll[i].itemDetails,
               beneficiaryname: "鐐瑰嚮閫夋嫨",
-              unitname: "鐐瑰嚮閫夋嫨",
+              unitname: "鐐瑰嚮閫夋嫨"
             };
             listAdd.push(rowData);
           }
@@ -1450,9 +1977,9 @@
     },
 
     //鏂囦欢涓婁紶
-    handleUploadError() { },
+    handleUploadError() {},
     remove(file) {
-      this.fileList.splice(this.fileList.indexOf(file), 1)
+      this.fileList.splice(this.fileList.indexOf(file), 1);
     },
     handleExceed() {
       this.$message.error(`涓婁紶鏂囦欢鏁伴噺涓嶈兘瓒呰繃 ${5} 涓�!`);
@@ -1471,14 +1998,72 @@
 
     // 涓嬭浇鏂囦欢
     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);
     },
+
+    ShowDetailDialog(spoce, showType) {
+      this.funddetailForm.index = spoce.$index;
+      this.funddetailForm.beneficiaryno = spoce.row.beneficiaryno;
+      this.funddetailForm.beneficiaryname = spoce.row.beneficiaryname;
+      this.funddetailForm.unitno = spoce.row.unitno;
+      this.funddetailForm.unitname = spoce.row.unitname;
+      this.detailInfoDialogShow = true;
+      this.detailInfoDialogShowType = showType;
+    },
+    ConfirmDetailDialog() {
+      let tempIndex = this.funddetailForm.index;
+      let tempName = this.funddetailForm.beneficiaryname;
+      let tempUnitname = this.funddetailForm.unitname;
+      let singleDetail = this.fundDetailArr[tempIndex];
+      if (this.detailInfoDialogShowType == "name") {
+        this.personlist.map(res => {
+          if (tempName == res.username) {
+            singleDetail.beneficiaryno = res.userno;
+            singleDetail.beneficiaryname = res.username;
+            singleDetail.bankcardno = res.bankcardno;
+            singleDetail.branchbankname = res.branchbankname;
+            singleDetail.depositbank = res.depositbank;
+            singleDetail.idcardno = res.idcardno;
+            singleDetail.phone = res.telephone;
+            singleDetail.title = res.title;
+            singleDetail.unitname = res.unitname;
+            singleDetail.unitno = parseInt(res.unitno);
+          } else {
+            singleDetail.beneficiaryname = tempName;
+            singleDetail.beneficiaryno = tempName;
+          }
+        });
+      } else if (this.detailInfoDialogShowType == "unit") {
+        singleDetail.unitno = this.funddetailForm.unitno;
+        try {
+          let unitIndex = this.unitList.findIndex(
+            item => singleDetail.unitno == item.organizationid
+          );
+          if (unitIndex > -1) {
+            singleDetail.unitname = this.unitList[unitIndex].organizationname;
+          } else {
+            singleDetail.unitname = singleDetail.unitno;
+          }
+        } catch {
+          singleDetail.unitname = singleDetail.unitno;
+        }
+      }
+      this.fundDetailArr[tempIndex] = singleDetail;
+      this.detailInfoDialogShow = false;
+    },
+    rowClassName({ row, column, rowIndex, columnIndex }) {
+      if (row.recordstatus == -1 && row.backflowlevel != null) {
+        return "error-row";
+      }
+      return "";
+    }
   },
+
   //鐢熷懡鍛ㄦ湡 - 鍒涘缓瀹屾垚锛堝彲浠ヨ闂綋鍓峵his瀹炰緥锛�
   created() {
     this.getUnitList();
@@ -1493,15 +2078,21 @@
     this.getUsermsg();
     this.getlistExternalperson();
   },
-  beforeCreate() { }, //鐢熷懡鍛ㄦ湡 - 鍒涘缓涔嬪墠
-  beforeMount() { }, //鐢熷懡鍛ㄦ湡 - 鎸傝浇涔嬪墠
-  beforeUpdate() { }, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠
-  updated() { }, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪悗
-  beforeDestroy() { }, //鐢熷懡鍛ㄦ湡 - 閿�姣佷箣鍓�
-  destroyed() { }, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴�
-  activated() { }, //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂
+  beforeCreate() {}, //鐢熷懡鍛ㄦ湡 - 鍒涘缓涔嬪墠
+  beforeMount() {}, //鐢熷懡鍛ㄦ湡 - 鎸傝浇涔嬪墠
+  beforeUpdate() {}, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠
+  updated() {}, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪悗
+  beforeDestroy() {}, //鐢熷懡鍛ㄦ湡 - 閿�姣佷箣鍓�
+  destroyed() {}, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴�
+  activated() {} //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂
 };
 </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