From 21fe2968337eb8eab97adc88750b71c4057e98f8 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期三, 17 七月 2024 15:39:46 +0800
Subject: [PATCH] 11

---
 src/views/project/funddetail/index.vue | 2109 ++++++++-------------------------------------------------
 1 files changed, 316 insertions(+), 1,793 deletions(-)

diff --git a/src/views/project/funddetail/index.vue b/src/views/project/funddetail/index.vue
index 734cebc..5c18378 100644
--- a/src/views/project/funddetail/index.vue
+++ b/src/views/project/funddetail/index.vue
@@ -1,1549 +1,301 @@
-<!--  -->
 <template>
   <div class="app-container">
-    <!-- 娣诲姞鎴栦慨鏀硅垂鐢ㄧ敵璇峰崟 -->
-    <el-form style="height: 550px; overflow-y: auto; overflow-x: hidden" 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-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>
-          </el-form-item>
-        </el-col>
-        <el-col :span="5">
-          <el-form-item label="鎵�灞炵粍鍒�" prop="deptmentname">
-            <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-form-item>
-        </el-col>
-      </el-row>
-      <el-row style="text-align: left">
-        <!--
-          <el-col :span="7">
-            <el-form-item label="鑱旂郴鐢佃瘽" prop="phone">
-              <el-input v-model="form.phone" placeholder="璇疯緭鍏ョ敵璇疯�呯殑鑱旂郴鏂瑰紡" clearable />
-            </el-form-item>
-          </el-col>
-          <el-col :span="7">
-            <el-form-item label="宸ヤ綔鍗曚綅" prop="unitno">
-              <org-selecter ref="orgSelecter" :org-type="'3'" v-model="form.unitno" />
-            </el-form-item>
-          </el-col>
-          -->
-        <el-col :span="5">
-          <el-form-item label="璐圭敤绫诲瀷">
-            <el-radio v-model="form.applytype" label="1">鏉傞」璐圭敤鐢宠</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="phone">
-            <el-input v-model="form.phone" placeholder="璇疯緭鍏ヨ仈绯荤數璇�" />
-          </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-form-item>
-          </el-col>
-          -->
-        <el-col :span="5">
-          <el-form-item label="鐢宠閲戦" prop="pretaxcost">
-            <el-input v-model="form.pretaxcost" placeholder="绋庡墠閲戦鍚堣" :disabled="true" />
-          </el-form-item>
-        </el-col>
-        <el-col :span="5">
-          <el-form-item label="搴旂即绋�" prop="taxcost">
-            <el-input v-model="form.taxcost" 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-form-item>
-          </el-col>-->
-        <el-col :span="5">
-          <el-form-item label="鎹愮尞鑰�" prop="name">
-            <el-input :disabled="true" v-model="form.name" placeholder="璇疯緭鍏ユ崘鐚�呭鍚�" />
-          </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>
-          </el-form-item>
-        </el-col>
-      </el-row>
-      <el-row style="margin-top: 5px; margin-bottom: 5px">
-        <el-row style="margin-bottom: 10px">
-          <el-col :span="4">
-            <el-button @click.native.prevent="addAllItems" type="primary" size="small">
-              瀵煎叆鏈嶅姟椤圭洰
-            </el-button>
-          </el-col>
-        </el-row>
-        <el-table :data="fundDetails" v-loading="loading" border highlight-current-row>
-          <el-table-column prop="orderno" align="center" label="搴忓彿" width="65">
-            <template slot-scope="scope">
-              <el-input v-model="scope.row.orderno" placeholder="搴忓彿" />
-            </template>
-          </el-table-column>
-          <el-table-column prop="applytype" align="center" label="鏈嶅姟璐圭敤绫诲瀷" width="200">
-            <template slot-scope="scope">
-              <el-select v-model="scope.row.applytype" placeholder="鏈嶅姟璐圭敤绫诲瀷" @change="loadItemType(scope.row)">
-                <el-option v-for="dict in rowfeeItemTypes" :key="dict.index" :label="dict.label"
-                  :value="dict.value"></el-option>
-              </el-select>
-            </template>
-          </el-table-column>
-          <el-table-column prop="itemid" align="center" label="鏈嶅姟椤圭洰鍚嶇О" width="260">
-            <template slot-scope="scope">
-              <el-select v-model="scope.row.itemid" placeholder="鏈嶅姟椤圭洰鍚嶇О" filterable @change="verifyFeeItem(scope.row)"
-                :filter-method="(val) => searchItemType(val, scope)">
-                <el-option v-for="dict in scope.row.itemlist" :key="dict.index" :label="dict.itemName"
-                  :value="dict.id"></el-option>
-              </el-select>
-            </template>
-          </el-table-column>
-          <el-table-column prop="itemcode" align="center" label="椤圭洰缂栧彿" show-overflow-tooltip="" v-if="false">
-          </el-table-column>
-          <el-table-column prop="servicesscope" align="center" label="璐圭敤璇存槑" width="180">
-            <template slot-scope="scope">
-              <el-select v-model="scope.row.servicesscope" placeholder="璐圭敤璇存槑" clearable allow-create filterable
-                @change="selectedRemark(scope.row)">
-                <el-option v-for="dict in scope.row.rowfeeblocks" :key="dict.servicesscope" :label="dict.remark"
-                  :value="dict.servicesscope"></el-option>
-              </el-select>
-            </template>
-          </el-table-column>
-          <el-table-column v-if="this.ismanager == true" prop="amount" align="center" label="绋庡墠閲戦" width="120">
-            <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 scope.row.rowfeeblocks" :key="dict.expensedescribe" :label="dict.expense"
-                  :value="dict.expense"></el-option>
-              </el-select>
-            </template>
-          </el-table-column>
-          <el-table-column prop="taxedamount" align="center" label="绋庡悗閲戦" width="120" v-if="this.ismanager == true">
-            <!-- v-if="form.applytype != '3'"涓婂悓 -->
-            <template slot-scope="scope">
-              <el-input v-model="scope.row.taxedamount" placeholder="绋庡悗閲戦" />
-            </template>
-          </el-table-column>
-          <el-table-column prop="beneficiaryname" align="center" label="濮撳悕" width="100" v-if="form.applytype != 3">
-            <template slot-scope="scope">
-              <el-button type="primary" plain @click="ShowDetailDialog(scope, 'name')">{{ scope.row.beneficiaryname
-              }}</el-button>
-              <!-- <el-select
-                  filterable
-                  allow-create
-                  ref="getReportname"
-                  default-first-option
-                  @change="selectpersonmsg(scope.row)"
-                  v-model="scope.row.beneficiaryname"
-                  placeholder="璇烽�夋嫨"
-                >
-                  <el-option
-                    v-for="item in expertlist"
-                    :key="item.reportNo"
-                    :label="item.reportName"
-                    :value="item.reportName"
-                  >
-                  </el-option>
-                                      </el-select> -->
-            </template>
-          </el-table-column>
-          <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-select
-                  v-model="scope.row.unitno"
-                  placeholder="鍗曚綅"
-                  clearable
-                  filterable
-                  allow-create
-                >
-                  <el-option
-                    v-for="(spec, index) in unitList"
-                    :key="index"
-                    :label="spec.organizationname"
-                    :value="spec.organizationid"
-                  ></el-option>
-                                      </el-select> -->
-            </template>
-          </el-table-column>
-          <el-table-column prop="quantity" align="center" label="鏁伴噺" width="120" v-if="form.applytype == '4'">
-            <template slot-scope="scope">
-              <el-input v-model="scope.row.quantity" placeholder="鏁伴噺" @blur="(val) => {
-                sumTotalFee(scope.row);
-              }
-                " />
-            </template>
-          </el-table-column>
-          <el-table-column prop="price" align="center" label="浠锋牸" width="120" v-if="form.applytype == '4'">
-            <template slot-scope="scope">
-              <el-input v-model="scope.row.price" placeholder="浠锋牸" @blur="(val) => {
-                sumTotalFee(scope.row);
-              }
-                " />
-            </template>
-          </el-table-column>
-          <el-table-column prop="remark" align="center" label="澶囨敞" width="210" v-if="form.applytype == '4'">
-            <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'">
-            <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'">
-            <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'">
-            <template slot-scope="scope">
-              <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'">
-            <template slot-scope="scope">
-              <el-input v-model="scope.row.bankcardno" placeholder="閾惰鍗″彿" />
-            </template>
-          </el-table-column>
-          <el-table-column fixed="right" align="center" label="鎿嶄綔" width="180" v-if="operationtype == '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>
-            </template>
-          </el-table-column>
-        </el-table>
-      </el-row>
-      <!--
-        <el-row>   
-          <el-col :span="7">
-            <el-form-item label="棰勬敮閲戦" prop="prepaidamount">
-              <el-input v-model="form.prepaidamount" placeholder="鐢宠閲戦" />
-            </el-form-item>
-          </el-col>          
-        </el-row>       
-        <el-row>          
-          <el-col :span="7">
-            <el-form-item label="OPO涓績绛惧瓧" prop="opochecker">
-              <el-input v-model="form.opochecker" placeholder="opo涓績绛惧瓧" />
-            </el-form-item>
-          </el-col>
-          <el-col :span="8">
-            <el-form-item label="璐㈠姟鍓櫌闀�" prop="finvicepresident">
-              <el-input v-model="form.finvicepresident" placeholder="璐㈠姟鍓櫌闀�" />
-            </el-form-item>
-          </el-col>
-          <el-col :span="7">
-            <el-form-item label="涓氬姟鍓櫌闀�" prop="busvicepresident">
-              <el-input v-model="form.busvicepresident" placeholder="涓氬姟鍓櫌闀�" />
-            </el-form-item>
-          </el-col>
-          <el-col :span="7">
-            <el-form-item label="鍔炲叕瀹や富浠�" prop="officedirector">
-              <el-input v-model="form.officedirector" placeholder="璇疯緭鍏ュ姙鍏涓讳换" />
-            </el-form-item>
-          </el-col>
-          <el-col :span="8">
-            <el-form-item label="璐㈠姟閮ㄨ礋璐d汉" prop="financedirector">
-              <el-input v-model="form.financedirector" placeholder="璇疯緭鍏ヨ储鍔¢儴璐熻矗浜�" />
-            </el-form-item>
-          </el-col>
-          <el-col :span="7">
-            <el-form-item label="璐㈠姟瀹℃牳" prop="financechecher">
-              <el-input v-model="form.financechecher" placeholder="璇疯緭鍏ヨ储鍔″鏍�" />
-            </el-form-item>
-          </el-col>
-        </el-row>
-              -->
-      <el-row>
-        <el-col :span="12">
-          <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='operationtype == "detail"' :on-error="handleUploadError"
-              :on-exceed="handleExceed" :on-remove="remove" accept="image/*,.pdf">
-              <el-button :disabled='operationtype == "detail"' size="small" type="primary">涓婁紶</el-button>
-            </el-upload>
-          </el-form-item>
-        </el-col>
-      </el-row>
-      <el-row v-if="operationtype == '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>
-          <el-table-column label="瀹℃牳澶囨敞" align="center" prop="flowcontent" />
-        </el-table>
-      </el-row>
+    <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="涓撳濮撳悕" prop="beneficiaryname">
+        <el-input v-model="queryParams.beneficiaryname" placeholder="璇疯緭鍏ヤ笓瀹跺鍚�" clearable size="small"
+          @keyup.enter.native="handleQuery" />
+      </el-form-item>
+      <el-form-item label="宸ヤ綔鍗曚綅" prop="uintname">
+        <el-input v-model="queryParams.uintname" placeholder="璇疯緭鍏ュ伐浣滃崟浣�" clearable size="small"
+          @keyup.enter.native="handleQuery" />
+      </el-form-item>
+      <el-form-item label="璐圭敤绫诲埆" prop="applytype">
+        <el-select v-model="queryParams.applytype" placeholder="璇烽�夋嫨璐圭敤绫诲埆" clearable size="small">
+          <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" />
+        </el-select>
+      </el-form-item>
+      <el-form-item label="椤圭洰鍚嶇О" prop="itemname">
+        <el-input v-model="queryParams.itemname" placeholder="璇疯緭鍏ラ」鐩悕绉�" clearable size="small"
+          @keyup.enter.native="handleQuery" />
+      </el-form-item>
+      <el-form-item label="椤圭洰绫诲埆" prop="itemtype">
+        <el-select v-model="queryParams.itemtype" placeholder="璇烽�夋嫨椤圭洰绫诲埆" clearable size="small">
+          <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" />
+        </el-select>
+      </el-form-item>
+      <el-form-item label="璁板綍鐘舵��" prop="recordstatus">
+        <el-select v-model="queryParams.recordstatus" placeholder="璇烽�夋嫨璁板綍鐘舵��" clearable size="small">
+          <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" />
+        </el-select>
+      </el-form-item>
+      <el-form-item label="缁忓姙浜�" prop="createBy">
+        <el-input v-model="queryParams.createBy" placeholder="璇疯緭鍏ュ垱寤轰汉" clearable size="small"
+          @keyup.enter.native="handleQuery" />
+      </el-form-item>
+      <el-form-item label="鐢宠鏃ユ湡" prop="createTime">
+        <el-date-picker clearable size="small" v-model="queryParams.createTime" type="date" value-format="yyyy-MM-dd"
+          placeholder="閫夋嫨鍒涘缓鏃ユ湡">
+        </el-date-picker>
+      </el-form-item>
+      <el-form-item>
+        <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>
     </el-form>
-    <div slot="footer" class="dialog-footer">
-      <el-button type="primary" @click="submitForm" v-if="operationtype == 'edit'">淇� 瀛�</el-button>
-      <!-- <el-button type="success" @click="print">鎵� 鍗�</el-button> -->
-      <el-button @click="cancel">鍙� 娑�</el-button>
-    </div>
 
-    <el-dialog :visible.sync="showDetailInfoDialog" :close-on-click-modal="false" :title="'瀵煎叆淇℃伅'" width="500px"
-      style="text-align: center" v-loading="loading">
-      <el-form ref="funddetailForm" :model="funddetailForm">
-        <el-row>
-          <el-col :span="24" v-if="showDetailInfoDialogType == 'name'">
-            <el-form-item label="璇烽�夋嫨涓撳淇℃伅锛�" prop="expertfrom">
-              <el-radio-group v-model="expertfrom" style="margin-bottom: 0">
-                <el-radio label="1">涓撳搴�</el-radio>
-                <el-radio label="2">鏂板涓撳</el-radio>
-              </el-radio-group>
-            </el-form-item>
-          </el-col>
-          <el-col :span="24" v-if="showDetailInfoDialogType == 'name' && expertfrom == '1'">
-            <el-form-item 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 expertlist" :key="item.reportNo" :label="item.reportName"
-                  :value="item.reportName">
-                </el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-          <el-col :span="24" v-if="showDetailInfoDialogType == 'unit'">
-            <el-form-item 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>
-        </el-row>
-        <el-row>
-          <el-col :span="12" v-if="expertfrom == '2'">
-            <el-form-item label="涓撳濮撳悕" prop="expertname" label-width="80px">
-              <el-input v-model="funddetailForm.expertname" placeholder="蹇呭~椤�" />
-            </el-form-item>
-          </el-col>
-          <el-col :span="12" v-if="expertfrom == '2'">
-            <el-form-item label="鑱�    绉�" prop="experttitle" label-width="80px">
-              <el-select v-model="funddetailForm.experttitle" placeholder="蹇呭~椤�">
-                <el-option v-for="dict in dict.type.sys_professionaltitle" :key="dict.value" :label="dict.label"
-                  :value="dict.label"></el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="24" v-if="expertfrom == '2'">
-            <el-form-item label="韬唤璇佸彿" prop="expertidcardno" label-width="80px">
-              <el-input v-model="funddetailForm.expertidcardno" placeholder="蹇呭~椤�" />
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <!--
-        <el-row>
-          <el-col :span="12" v-if="expertfrom == '2'">
-            <el-form-item label="浜哄憳绫诲埆" prop="usertype" label-width="80px">
-              <el-select v-model="funddetailForm.usertype" placeholder="蹇呭~椤�">
-                <el-option v-for="dict in dict.type.sys_UserType" :key="dict.value" :label="dict.label"
-                  :value="dict.value"></el-option>
-              </el-select>
-            </el-form-item>
-          </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:funddetail:add']">鏂板</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate"
+          v-hasPermi="['project:funddetail:edit']">淇敼</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete"
+          v-hasPermi="['project:funddetail:remove']">鍒犻櫎</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button type="warning" plain icon="el-icon-download" size="mini" :loading="exportLoading" @click="handleExport"
+          v-hasPermi="['project:funddetail:export']">瀵煎嚭</el-button>
+      </el-col>
+      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+    </el-row>
+
+    <el-table v-loading="loading" :data="funddetailList" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center" />
+      <el-table-column label="涓撳濮撳悕" width="120" align="center" prop="beneficiaryname" />
+      <el-table-column label="璐圭敤绫诲埆" align="center" prop="applytype" />
+      <el-table-column label="椤圭洰绫诲埆" align="center" prop="itemtype" />
+      <el-table-column label="璐圭敤椤圭洰鍚嶇О" align="left" prop="itemname" />
+      <el-table-column label="璐圭敤閲戦" align="center" prop="amount" />
+      <el-table-column label="鎵g◣閲戦" align="center" prop="taxamount" />
+      <el-table-column label="绋庡悗閲戦" align="center" prop="taxedamount" />
+      <!--
+      <el-table-column label="涓撳鍗曚綅" align="center" prop="uintname" />
+      <el-table-column label="璇佷欢鍙风爜" align="center" prop="idcardno" />
+      <el-table-column label="涓撳鐢佃瘽" align="center" prop="phone" />
+      <el-table-column label="鐘舵��" align="center" prop="recordstatus" />
+      <el-table-column label="缁忓姙浜�" align="center" prop="createby" />
+      <el-table-column label="鐢宠鏃ユ湡" align="center" prop="createtime" />
       -->
+      <el-table-column label="澶囨敞" align="left" prop="remark" />
+      <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+        <template slot-scope="scope">
+          <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
+            v-hasPermi="['project:funddetail:edit']">淇敼</el-button>
+          <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
+            v-hasPermi="['project:funddetail:remove']">鍒犻櫎</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+
+    <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
+      @pagination="getList" />
+
+    <!-- 娣诲姞鎴栦慨鏀硅垂鐢ㄧ敵璇锋槑缁嗗璇濇 -->
+    <el-dialog :title="title" :visible.sync="open" width="1000px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="120px">
         <el-row>
-          <el-col :span="24" v-if="expertfrom == '2'">
-            <el-form-item label="鍗曚綅鍚嶇О" prop="expertunitno" label-width="80px">
-              <el-select v-model="funddetailForm.expertunitno" 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-col :span="5"><el-form-item label="璐圭敤鐢宠涓昏〃ID" prop="fundid">
+              <el-input v-model="form.fundid" placeholder="璇疯緭鍏ヨ垂鐢ㄧ敵璇蜂富琛↖D" />
+            </el-form-item></el-col>
+          <el-col :span="5"><el-form-item label="鏀剁泭浜哄鍚� 瀹跺睘鎴栦笓瀹�" prop="beneficiaryname">
+              <el-input v-model="form.beneficiaryname" placeholder="璇疯緭鍏ユ敹鐩婁汉濮撳悕 瀹跺睘鎴栦笓瀹�" />
+            </el-form-item></el-col>
+          <el-col :span="5"><el-form-item label="鏀剁泭浜虹紪鍙�" prop="beneficiaryno">
+              <el-input v-model="form.beneficiaryno" placeholder="璇疯緭鍏ユ敹鐩婁汉缂栧彿" />
+            </el-form-item></el-col>
+          <el-col :span="5"><el-form-item label="宸ヤ綔鍗曚綅" prop="uintname">
+              <el-input v-model="form.uintname" placeholder="璇疯緭鍏ュ伐浣滃崟浣�" />
+            </el-form-item></el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="5"><el-form-item label="宸ヤ綔鍗曚綅缂栧彿" prop="uintno">
+              <el-input v-model="form.uintno" placeholder="璇疯緭鍏ュ伐浣滃崟浣嶇紪鍙�" />
+            </el-form-item></el-col>
+          <el-col :span="5"><el-form-item label="宸ヤ綔鍗曚綅鐢ㄦ埛缂栧彿" prop="uintuserno">
+              <el-input v-model="form.uintuserno" placeholder="璇疯緭鍏ュ伐浣滃崟浣嶇敤鎴风紪鍙�" />
+            </el-form-item></el-col>
+          <el-col :span="5"><el-form-item label="璇佷欢绫诲瀷 鏍规嵁瀛楀吀sys_IDType" prop="idcardtype">
+              <el-select v-model="form.idcardtype" placeholder="璇烽�夋嫨璇佷欢绫诲瀷 鏍规嵁瀛楀吀sys_IDType">
+                <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" />
+              </el-select>
+            </el-form-item></el-col>
+          <el-col :span="5"><el-form-item label="璇佷欢鍙风爜" prop="idcardno">
+              <el-input v-model="form.idcardno" placeholder="璇疯緭鍏ヨ瘉浠跺彿鐮�" />
+            </el-form-item></el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="5"><el-form-item label="鎬у埆 鏍规嵁瀛楀吀sys_user_sex" prop="sex">
+              <el-select v-model="form.sex" placeholder="璇烽�夋嫨鎬у埆 鏍规嵁瀛楀吀sys_user_sex">
+                <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" />
+              </el-select>
+            </el-form-item></el-col>
+          <el-col :span="5"><el-form-item label="涓庢崘璧犺�呭叧绯� 鏍规嵁瀛楀吀sys_FamilyRelation" prop="familyrelations">
+              <el-input v-model="form.familyrelations" placeholder="璇疯緭鍏ヤ笌鎹愯禒鑰呭叧绯� 鏍规嵁瀛楀吀sys_FamilyRelation" />
+            </el-form-item></el-col>
+          <el-col :span="5"><el-form-item label="鑱旂郴鐢佃瘽" prop="phone">
+              <el-input v-model="form.phone" placeholder="璇疯緭鍏ヨ仈绯荤數璇�" />
+            </el-form-item></el-col>
+          <el-col :span="5"><el-form-item label="寮�鎴烽摱琛�" prop="depositbank">
+              <el-input v-model="form.depositbank" placeholder="璇疯緭鍏ュ紑鎴烽摱琛�" />
+            </el-form-item></el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="5"> <el-form-item label="鍗″彿" prop="bankcardno">
+              <el-input v-model="form.bankcardno" placeholder="璇疯緭鍏ュ崱鍙�" />
+            </el-form-item></el-col>
+          <el-col :span="5"><el-form-item label="鏀鍚嶇О" prop="branchbankname">
+              <el-input v-model="form.branchbankname" placeholder="璇疯緭鍏ユ敮琛屽悕绉�" />
+            </el-form-item></el-col>
+          <el-col :span="5"><el-form-item label="閾惰鍗$収鐗囪矾寰� 澶氫釜鐢�;鍒嗗紑" prop="annexbankcard">
+              <el-input v-model="form.annexbankcard" placeholder="璇疯緭鍏ラ摱琛屽崱鐓х墖璺緞 澶氫釜鐢�;鍒嗗紑" />
+            </el-form-item></el-col>
+          <el-col :span="5"><el-form-item label="鐧昏琛ㄧ収鐗囪矾寰� 澶氫釜鐢�;鍒嗗紑" prop="annexregistform">
+              <el-input v-model="form.annexregistform" placeholder="璇疯緭鍏ョ櫥璁拌〃鐓х墖璺緞 澶氫釜鐢�;鍒嗗紑" />
+            </el-form-item></el-col>
+        </el-row>
+
+
+        <el-row>
+          <el-col :span="5"><el-form-item label="璐圭敤绫诲埆 瑙佸瓧鍏竤ys_SubjectType" prop="applytype">
+              <el-select v-model="form.applytype" placeholder="璇烽�夋嫨璐圭敤绫诲埆 瑙佸瓧鍏竤ys_SubjectType">
+                <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" />
+              </el-select>
+            </el-form-item></el-col>
+          <el-col :span="5"><el-form-item label="椤圭洰ID" prop="itemid">
+              <el-input v-model="form.itemid" placeholder="璇疯緭鍏ラ」鐩甀D" />
+            </el-form-item></el-col>
+          <el-col :span="5"> <el-form-item label="椤圭洰鍚嶇О" prop="itemname">
+              <el-input v-model="form.itemname" placeholder="璇疯緭鍏ラ」鐩悕绉�" />
+            </el-form-item></el-col>
+          <el-col :span="5"><el-form-item label="椤圭洰绫诲埆" prop="itemtype">
+              <el-select v-model="form.itemtype" placeholder="璇烽�夋嫨椤圭洰绫诲埆">
+                <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" />
               </el-select>
             </el-form-item></el-col>
         </el-row>
         <el-row>
-          <el-col :span="24" v-if="expertfrom == '2'">
-            <el-form-item label="寮�鎴烽摱琛�" prop="expertdepositbank" label-width="80px">
-              <el-input v-model="funddetailForm.expertdepositbank" placeholder="蹇呭~椤�" />
-            </el-form-item>
-          </el-col>
-          <el-col :span="24" v-if="expertfrom == '2'">
-            <el-form-item label="閾惰鍗″彿" prop="expertbankcardno" label-width="80px">
-              <el-input v-model="funddetailForm.expertbankcardno" placeholder="蹇呭~椤�" />
-            </el-form-item>
-          </el-col>
+          <el-col :span="5"><el-form-item label="鐢宠閲戦" prop="amount">
+              <el-input v-model="form.amount" placeholder="璇疯緭鍏ョ敵璇烽噾棰�" />
+            </el-form-item></el-col>
+          <el-col :span="5"><el-form-item label="棰勬敮閲戦" prop="prepaidamount">
+              <el-input v-model="form.prepaidamount" placeholder="璇疯緭鍏ラ鏀噾棰�" />
+            </el-form-item></el-col>
+          <el-col :span="5"><el-form-item label="鍙戠エ寮犳暟" prop="invoicecount">
+              <el-input v-model="form.invoicecount" placeholder="璇疯緭鍏ュ彂绁ㄥ紶鏁�" />
+            </el-form-item></el-col>
+          <el-col :span="5"><el-form-item label="闄勪欢寮犳暟" prop="attachcount">
+              <el-input v-model="form.attachcount" placeholder="璇疯緭鍏ラ檮浠跺紶鏁�" />
+            </el-form-item></el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="5"><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="璁板綍鐘舵��">
+              <el-radio-group v-model="form.recordstatus">
+                <el-radio label="1">璇烽�夋嫨瀛楀吀鐢熸垚</el-radio>
+              </el-radio-group>
+            </el-form-item></el-col>
+          <el-col :span="5"> <el-form-item label="涓婁紶鏍囧織" prop="uploadflag">
+              <el-input v-model="form.uploadflag" placeholder="璇疯緭鍏ヤ笂浼犳爣蹇�" />
+            </el-form-item></el-col>
+          <el-col :span="5"><el-form-item label="涓婁紶鏃堕棿" prop="uploadtime">
+              <el-date-picker clearable size="small" v-model="form.uploadtime" type="date" value-format="yyyy-MM-dd"
+                placeholder="閫夋嫨涓婁紶鏃堕棿">
+              </el-date-picker>
+            </el-form-item></el-col>
         </el-row>
       </el-form>
-      <span slot="footer" class="dialog-footer">
-        <el-button @click="showDetailInfoDialog = false">鍙� 娑�</el-button>
-        <el-button type="primary" @click="ConfirmDetailDialog()">纭� 瀹�</el-button>
-      </span>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+        <el-button @click="cancel">鍙� 娑�</el-button>
+      </div>
     </el-dialog>
   </div>
 </template>
 
 <script>
-//杩欓噷鍙互瀵煎叆鍏朵粬鏂囦欢锛堟瘮濡傦細缁勪欢锛屽伐鍏穓s锛岀涓夋柟鎻掍欢js锛宩son鏂囦欢锛屽浘鐗囨枃浠剁瓑绛夛級
-//渚嬪锛歩mport 銆婄粍浠跺悕绉般�� from '銆婄粍浠惰矾寰勩��';
-import {
-  listDonatebaseinfo,
-  getDonatebaseinfo
-} from "@/api/project/donatebaseinfo";
-
-import {
-  onelistFund,
-  listFund,
-  getFund,
-  delFund,
-  addFund,
-  updateFund,
-  exportFund,
-  getdownloadLW,
-  getdownloadSH,
-  getdownloadSS,
-  getdownloadYX,
-  getdownloadBX,
-  addorupdateFund,
-  getdetailsByItemId
-} from "@/api/project/fund";
-
-import {
-  onelistFunds,
-  listFunddetails,
-  listFunddetail,
-  getFunddetail,
-  delFunddetail,
-  addFunddetail,
-  getownFundDetail,
-  updateFunddetail,
-  exportFunddetail,
-  getItemNames,
-  getFundType,
-  getFundTypeAll,
-  listcountItem,
-  getDataBybeneficiaryNo,
-  getTaxByBeneFiciaryNo,
-  getTaxBeforeByBeneFiciaryNo,
-  getTaxationByBeneFiciaryNo,
-  getTaxBeforeByAfterMoney
-} from "@/api/project/funddetail";
-
-import { listFundflow } from "@/api/project/fundflow";
-
-import {
-  listOrganization,
-  getOrganization,
-  listReportname,
-  listUser
-} from "@/api/project/organization";
-
-import {
-  listExternalperson,
-  getExternalperson,
-  getInfoBytheUserNo,
-  delExternalperson,
-  addExternalperson,
-  updateExternalperson,
-  exportExternalperson
-} from "@/api/project/externalperson";
-
-import { getUserProfile } from "@/api/system/user";
-import Li_area_select from "@/components/Address";
-import OrgSelecter from "@/views/project/components/orgselect";
-import { getToken } from "@/utils/auth";
+import { listFunddetail, getFunddetail, delFunddetail, addFunddetail, updateFunddetail, exportFunddetail } from "@/api/project/funddetail";
 
 export default {
-  //import寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢�
-  components: {
-    Li_area_select,
-    OrgSelecter,
-  },
-
-  name: "fundApply",
-
-  dicts: [
-    //"sys_consolationfundlevel",
-    //"sys_OrganizationType",
-    "sys_DonationStatus",
-    //"sys_depositbank",
-    //"sys_FamilyRelation",
-    //"sys_IDType",
-    //"sys_ConsolationType",
-    //"sys_fund_type",
-    //"sys_finsubject",
-    //"sys_financeitemtype",
-    //"sys_expensetype",
-    "sys_recordstatus",
-    "sys_professionaltitle"
-  ],
-
+  name: "Funddetail",
   data() {
-    //杩欓噷瀛樻斁鏁版嵁
     return {
       // 閬僵灞�
-      loading: false,
+      loading: true,
       // 瀵煎嚭閬僵灞�
       exportLoading: false,
-
-      //鏌ヨ鍙傛暟
+      // 閫変腑鏁扮粍
+      ids: [],
+      // 闈炲崟涓鐢�
+      single: true,
+      // 闈炲涓鐢�
+      multiple: true,
+      // 鏄剧ず鎼滅储鏉′欢
+      showSearch: true,
+      // 鎬绘潯鏁�
+      total: 0,
+      // 璐圭敤鐢宠鏄庣粏琛ㄦ牸鏁版嵁
+      funddetailList: [],
+      // 寮瑰嚭灞傛爣棰�
+      title: "",
+      // 鏄惁鏄剧ず寮瑰嚭灞�
+      open: false,
+      // 鏌ヨ鍙傛暟
       queryParams: {
-        organizationname: null,
-        organizationtype: null,
         pageNum: 1,
         pageSize: 10,
-        name: null,
-        idcardno: null,
-        residenceprovince: null,
-        residencecity: null,
-        residencetown: null,
-        recordstate: null,
-        treatmenthospitalname: null,
-        donorno: null,
-        reportername: null,
-        reporttime: null,
-      },
-
-      fundQueryParam: {
-        pageNum: 1,
-        pageSize: 100,
-        infoid: null,
-        applytype: "4",
+        beneficiaryname: null,
+        uintname: null,
+        applytype: null,
+        itemname: null,
+        itemtype: null,
+        amount: null,
+        recordstatus: null,
         createBy: null,
+        createTime: null,
+        uploadflag: null,
+        uploadtime: null
       },
-
-      expertQueryParam: {
-        pageNum: 1,
-        pageSize: 10000,
-        userno: null,
-        username: null,
-        usertype: null,
-      },
-
-      //璁$畻涓◣鍙傛暟
-      taxParam: {
-        beneficiaryNo: '',
-        money: '0',
-        startTime: '',
-      },
-
       // 琛ㄥ崟鍙傛暟
       form: {},
-
-      total: 0,
-
-      //鐢宠鍗曠被鍨�
-      businesstype: "4",
-      //鎿嶄綔绫诲瀷
-      operationtype: "edit",
-      //鎵�鏈変汉鍛樿〃
-      personlist: [],
-      //
-      amount: 0.00,
-      //涓撳鍒楄〃
-      expertlist: [],
-      //涓撳璐归�夋嫨锛�1鏄笓瀹跺簱锛�2鏄柊澧�
-      expertfrom: "1",
       // 琛ㄥ崟鏍¢獙
       rules: {
-        username: [
-          { required: true, message: "璇疯緭鍏ョ敵璇蜂汉", trigger: "blur" },
-        ],
-        createTime: [
-          { required: true, message: "璇疯緭鍏ョ敵璇锋棩鏈�", trigger: "blur" },
-        ],
-        deptmentname: [
-          { required: true, message: "璇疯緭鍏ユ墍灞炰笟鍔$粍", trigger: "blur" },
-        ],
-        // amountrequested: [
-        //   { required: true, message: "璇疯緭鍏ョ敵璇烽噾棰�", trigger: "blur" },
-        // ],
-      },
-
-      //鎹愮尞妗堜緥鍒楄〃鏁版嵁
-      donatebaseinfoList: [],
-      //褰撳墠閫変腑鎹愮尞妗堜緥
-      curCase: {},
-
-      // 鎹愮尞浜洪亾鎱伴棶閲戣〃鏍兼暟鎹�
-      donateconsolationfundList: [],
-      //璐圭敤鏄庣粏鍒楄〃
-      fundDetails: [],
-      formData: {},
-      totalPreTaxAmount: 0.0,
-      totalAfterTaxAmount: 0.0,
-      totalAmount: 0.0,
-
-      //璐圭敤鐢宠琛ㄥ崟title
-      title: "",
-      userlist: [],
-      itemlist: [],
-      reporters: [],
-
-      //琛岃褰曠殑璐圭敤绫诲瀷鏁扮粍
-      rowfeeItemTypes: [],
-      //璐圭敤绫诲瀷鏁扮粍
-      feeItemTypes: [],
-      //璐圭敤璇存槑
-      rowfeeblocks: [],
-      userprofile: {},
-
-      //鏄惁鏄笓瀹惰垂鐨凮PO瀹℃壒浜哄憳
-      ismanager: false,
-      unitList: [],
-      fundflowList: [],
-
-      showDetailInfoDialog: false,
-      showDetailInfoDialogType: "",
-      funddetailForm: {
-        index: null,
-        beneficiaryname: null,
-        beneficiaryno: null,
-        unitno: null,
-        unitname: null,
-        expertname: null,
-        expertidcardno: null,
-        expertunitno: null,
-        expertunitname: null,
-        experttitle: null,
-        expertdepositbank: null,
-        expertbankcardno: null,
-      },
-      expertform: {
-        id: null,
-        address: null,
-        bankcardno: null,
-        branchbankname: null,
-        createBy: null,
-        createTime: null,
-        del_flag: null,
-        depositbank: null,
-        idcardno: null,
-        personnelunitno: null,
-        pym: null,
-        remark: null,
-        searchValue: null,
-        sex: null,
-        telephone: null,
-        title: null,
-        unitname: null,
-        unitno: null,
-        updateBy: null,
-        updateTime: null,
-        username: null,
-        userno: null,
-        userstatus: 1,
-        usertype: null,
-        wbm: null,
-      },
-
-      //闄勪欢鍒楄〃
-      fileList: [],
-      //涓婁紶闄勪欢璺緞
-      uploadFileUrl: process.env.VUE_APP_BASE_API + "/common/upload",
-      //鏂囦欢涓婁紶token
-      headers: {
-        Authorization: "Bearer " + getToken(),
-      },
-
+      }
     };
   },
-  //鐩戝惉灞炴�� 绫讳技浜巇ata姒傚康
-  computed: {},
-  //鐩戞帶data涓殑鏁版嵁鍙樺寲
-  watch: {},
-  //鐢熷懡鍛ㄦ湡 - 鍒涘缓瀹屾垚锛堝彲浠ヨ闂綋鍓峵his瀹炰緥锛�    
   created() {
-    //鑾峰彇鍗曟嵁绫诲瀷鍜屾搷浣滆姹�
-    this.getCurFundType();
-    this.getUserProfile();    
-    this.getroute();
+    this.getList();
   },
-
-  //鐢熷懡鍛ㄦ湡 - 鎸傝浇瀹屾垚锛堝彲浠ヨ闂瓺OM鍏冪礌锛�
-  mounted() {    
-    this.getUserList();
-    this.getUnitList();
-    this.selectReporters();
-    this.getExternalpersonList();
-    this.getBaseInfoList();    
-  },
-
-  beforeCreate() {
-  }, //鐢熷懡鍛ㄦ湡 - 鍒涘缓涔嬪墠
-  beforeMount() { }, //鐢熷懡鍛ㄦ湡 - 鎸傝浇涔嬪墠
-  beforeUpdate() { }, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠
-  updated() { }, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪悗
-  beforeDestroy() { }, //鐢熷懡鍛ㄦ湡 - 閿�姣佷箣鍓�
-  destroyed() { }, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴�
-  activated() { }, //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂
-
-  //鏂规硶闆嗗悎
   methods: {
-    /** 閫氳繃鍙傛暟鑾峰彇涓氬姟绫诲瀷 */
-    getroute() {
-      //閫夋嫨涓氬姟绫诲瀷:1銆佹柊澧烇紱2銆佷慨鏀癸紱3銆佹煡鐪�
-      let ids = this.$route.query.id;
-      let tempbusinesstype = this.$route.query.businesstype;
-      let tempoperationtype = this.$route.query.operationtype;
-      // this.userprofile = this.$route.query.routerparam;
-      if (tempbusinesstype == 1) {
-        this.businesstype = tempbusinesstype;
-        this.title = '涓撳鍔冲姟璐圭敵璇峰崟';
-        this.handleAdd(ids);
-      } else if (tempbusinesstype == 2) {
-        this.businesstype = tempbusinesstype;
-        this.title = '浼︾悊涓撳鍔冲姟璐圭敵璇峰崟';
-        this.handleUpdate(ids);
-      }
-      else if (tempbusinesstype == 3) {
-        this.businesstype = tempbusinesstype;
-        this.title = '鍖诲鎴愭湰鎶ラ攢鍗�';
-        this.handleDetail(ids);
-      }
-      else if (tempbusinesstype == 4) {
-        this.businesstype = tempbusinesstype;
-        this.title = '鏉傝薄璐圭敤鎶ラ攢鍗�';
-        // this.handleCheck(ids);
-      }
-
-      if (tempoperationtype == 1) {
-        this.operationtype = 'add';
-        this.title += '鏂板缓'
-        this.handleAdd(ids);
-      } else if (tempoperationtype == 2) {
-        this.operationtype = 'update';
-        this.title += '淇敼'
-        this.handleUpdate(ids);
-      }
-      else if (tempoperationtype == 3) {
-        this.operationtype = 'detail';
-        this.title += '鏌ョ湅'
-        this.handleDetail(ids);
-      } else if (tempoperationtype == 4) {
-        this.title += '瀹℃牳'
-        this.handleCheck(ids);
-      }
-      console.log(
-        this.businesstype = tempbusinesstype, this.title);
-    },
-
-    /** 閲嶇疆鎸夐挳鎿嶄綔 */
-    resetQuery() {
-      this.daterangeReporttime = [];
-      this.resetForm("queryForm");
-      this.handleQuery();
-    },
-
-    /** 鏂板鎸夐挳鎿嶄綔 */
-    handleAdd() {
-      this.reset();
-      this.queryParams.params = {};
-
-      /** businesstype锛�4锛氭潅椤硅垂鐢ㄦ姤閿�鐢宠 */
-      if (this.businesstype != "4") {
-        if (this.curCase.id) {
-          this.istrue += 2;
-          this.form.donorno = this.curCase.donorno;
-          this.form.name = this.curCase.name;
-          this.form.infoid = this.curCase.id;
-
-          // this.form.createTime = nowdate;
-          //this.open = true;
-          //this.initFundApplyForm();
-        } else {
-          const h = this.$createElement;
-          this.$message({
-            message: h("p", null, [h("span", null, "璇峰厛閫夋嫨宸︽柟鎹愮尞妗堜緥 ")]),
-          });
-          return;
-        }
-      }
-
-      this.form.username = this.userprofile.nickName;
-      this.form.userno = this.userprofile.userName;
-      this.form.phone = this.userprofile.phonenumber;
-      this.form.deptmentname = this.userprofile.dept.deptName;
-      this.form.deptmentno = this.userprofile.dept.deptId;
-      this.form.managername = this.userprofile.dept.leader;
-
-//鍒濆鍖栨槑缁�
-      this.fundDetails = [];
-      this.addRow();
-
-    },
-
-    /** 淇敼鎸夐挳鎿嶄綔 */
-    handleUpdate(row) {
-      this.isopen = 0;
-      this.reset();
-      this.queryParams.params = {};
-      this.form.donorno = this.curCase.donorno;
-      this.form.infoid = this.curCase.id;
-      this.title = "淇敼璐圭敤鐢宠";
-      this.operationtype = "edit";
-
-      const id = row.id || this.ids;
-      getFund(id).then((response) => {
-        this.form = response.data;
-        // this.form.recordstate =-1;
-        // this.form.recordstatus = response.data.recordstatus + "";
-        this.form.name = this.curCase.name;
-        //闄勪欢澶勭悊
-        this.fileList = this.form.annexbankcard ? this.form.annexbankcard.split(",").map(item => ({ url: item, name: item })) : []
-        getownFundDetail(id).then((res) => {
-          this.fundDetails = res.data;
-          for (let m = 0; m < this.fundDetails.length; m++) {
-            this.fundDetails[m].itemlist = [];
-            this.getitemlist(m, this.fundDetails[m]);
-
-            //鑾峰彇璐圭敤椤圭洰鐨勮缁嗕俊鎭�
-            this.fundDetails[m].rowfeeblocks = [];
-
-            this.fundDetails[m].rowfeeblocks.push({
-              servicesscope: this.fundDetails[m].servicesscope,
-              expensedescribe: this.fundDetails[m].servicesscopename,
-              expense: this.fundDetails[m].expense,
-              remark: this.fundDetails[m].servicesscopename,
-            });
-            // getdetailsByItemId(this.fundDetails[m].itemid).then((res) => {
-            //   let fundmsg = res.data;
-            //   fundmsg.forEach((item) => {
-            //     this.fundDetails[m].rowfeeblocks.push({
-            //       servicesscope: item.id,
-            //       expensedescribe: item.expensedescribe,
-            //       expense: item.expense,
-            //       remark: item.expensedescribe,
-            //     });
-            //   });
-            // });
-          }
-
-          if (this.fundDetails.length == 0) {
-            this.addRow();
-          }
-        });
-      });
-    },
-
-    /** 鏌ョ湅鎸夐挳鎿嶄綔 */
-    handleDetail(row) {
-      this.isopen = 0;
-      this.reset();
-      this.queryParams.params = {};
-      this.form.donorno = this.curCase.donorno;
-      this.form.infoid = this.curCase.id;
-      this.title = "鏌ョ湅璐圭敤鐢宠";
-      this.operationtype = "detail";
-      const id = row.id || this.ids;
-
-      getFund(id).then((response) => {
-        this.form = response.data;
-        this.form.name = this.curCase.name;
-        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.fundDetails = res.data;
-          for (let m = 0; m < this.fundDetails.length; m++) {
-            this.fundDetails[m].itemlist = [];
-            this.getitemlist(m, this.fundDetails[m]);
-            this.fundDetails[m].rowfeeblocks = [];
-            this.fundDetails[m].rowfeeblocks.push({
-              expense: this.fundDetails[m].expense,
-              expensedescribe: this.fundDetails[m].servicesscopename,
-              remark: this.fundDetails[m].servicesscope,
-              servicesscope: this.fundDetails[m].servicesscope,
-            });
-          }
-
-          if (this.fundDetails.length == 0) {
-            this.addRow();
-          }
-        });
-      });
-    },
-
-    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.getfundList();
-          this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
-        })
-        .catch(() => { });
-    },
-
-    /** 涓婃姤鎸夐挳鎿嶄綔 */
-    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: "宸插彇娑堢敵璇�",
-          });
-        });
-    },
-
-    /** 鎻愪氦鎸夐挳 */
-    submitForm() {
-      this.$refs["form"].validate((valid) => {
-        if (valid) {
-          this.formData = this.form;
-          // let totalPreTaxAmount = 0.0;
-          // let totalAfterTaxAmount = 0.0;
-          // let totalAmount = 0.0;
-
-          //淇濆瓨鍓嶆牎楠屾暟鎹�
-          for (let k = 0; k < this.fundDetails.length; k++) {
-            let tempDetail = this.fundDetails[k];
-            if (tempDetail.itemid == null) {
-              this.$modal.msgWarning("鏈嶅姟椤圭洰琛ㄤ腑锛岀" + (k + 1).toString() + "琛岀殑鏈嶅姟椤圭洰鏈�夋嫨锛岃鍏堥�夋嫨鏈嶅姟椤圭洰鍚庡啀鎻愪氦淇濆瓨锛�");
-              return;
-            }
-
-            if (tempDetail.servicesscope == null) {
-              this.$modal.msgWarning("鏈嶅姟椤圭洰琛ㄤ腑锛岀" + (k + 1).toString() + "琛岀殑璐圭敤璇存槑鏈�夋嫨,璇烽�夋嫨璐圭敤璇存槑鍚庡啀鎻愪氦淇濆瓨锛�");
-              return;
-            }
-
-            if (tempDetail.beneficiaryno == null) {
-              this.$modal.msgWarning("鏈嶅姟椤圭洰琛ㄤ腑锛岀" + (k + 1).toString() + "琛岀殑鏈嶅姟浜哄憳濮撳悕涓洪�夋嫨,璇烽�夋嫨浜哄憳鍚庡啀鎻愪氦淇濆瓨锛�");
-              return;
-            }
-
-            // //鍒ゆ柇鍗曚綅 unitSel
-            // try {
-            //   let unitIndex = this.unitList.findIndex(
-            //     (item) => tempDetail.unitno == item.organizationid
-            //   );
-            //   if (unitIndex > -1) {
-            //     tempDetail.unitname = this.unitList[unitIndex].organizationname;
-            //   } else {
-            //     tempDetail.unitname = tempDetail.unitno;
-            //   }
-            // } catch {
-            //   tempDetail.unitname = tempDetail.unitno;
-            // }
-          }
-
-          //闄勪欢澶勭悊
-          let list = this.fileList;
-          if (list.length > 0) {
-            this.form.annexfiles = list.map(item => item.url).join(",");
-          }
-
-          //澶勭悊鏄庣粏
-          for (let i = 0; i < this.fundDetails.length; i++) {
-            let tempDetail = this.fundDetails[i];
-            //鑾峰彇鏈嶅姟椤圭洰鏄庣粏
-            let tempitemlist = tempDetail.itemlist;
-            let itemIndex = tempitemlist.findIndex(
-              (item) => tempDetail.itemid == item.id
-            );
-            if (itemIndex > -1) {
-              tempDetail.itemname = tempitemlist[itemIndex].itemName;
-              tempDetail.itemid = tempitemlist[itemIndex].id;
-            }
-
-            //鑾峰彇applytypename銆佹湇鍔¤垂鐢ㄥぇ绫�
-            let applytypeIndex = this.rowfeeItemTypes.findIndex(
-              (item) => tempDetail.applytype == item.value
-            );
-            if (applytypeIndex > -1) {
-              tempDetail.applytypename = this.rowfeeItemTypes[applytypeIndex].label;
-              tempDetail.subjecttype = this.rowfeeItemTypes[applytypeIndex].subjecttype;
-              tempDetail.subjecttypename = this.rowfeeItemTypes[applytypeIndex].subjecttypename;
-            }
-            this.fundDetails[i] = tempDetail;
-            /*
-            //璁$畻涓◣            
-            //if (isNaN(parseFloat(tempDetail.taxedamount)))
-            //鑾峰彇鍙傛暟
-            this.taxParam.beneficiaryNo = tempDetail.beneficiaryno;
-            this.taxParam.startTime = this.form.createTime.substring(0, 10);
-            // 璁$畻绋庡悗閲戦
-            if (tempDetail.taxedamount == undefined || tempDetail.taxedamount == null || tempDetail.taxedamount == 0 || tempDetail.taxedamount == '') {
-              //鑾峰彇鍙傛暟
-              this.taxParam.money = tempDetail.amount.toString();
-              getTaxByBeneFiciaryNo(this.taxParam).then((res) => {
-                if (res.code == 200) {
-                  tempDetail.taxamount = res.data;
-                  tempDetail.taxedamount = tempDetail.amount - tempDetail.taxamount;
-                  this.fundDetails[k] = tempDetail;
-    
-                  this.totalAfterTaxAmount += parseFloat(tempDetail.taxedamount);
-                  this.totalAmount += parseFloat(tempDetail.amount);
-                }
-              });
-            }
-    
-            // 璁$畻绋庡墠閲戦
-            if (tempDetail.amount == undefined || tempDetail.amount == null || tempDetail.amount == 0 || tempDetail.amount == '') {
-              //鑾峰彇鍙傛暟
-              this.taxParam.money = tempDetail.taxedamount.toString();
-              getTaxBeforeByAfterMoney(this.taxParam).then((res) => {
-                if (res.code == 200) {
-                  tempDetail.taxamount = res.data.nowTax;
-                  tempDetail.amount = parseFloat(res.data.nowTaxBeforeMoney);
-                  this.fundDetails[k] = tempDetail;
-    
-                  this.totalAfterTaxAmount += parseFloat(tempDetail.taxedamount);
-                  this.totalAmount += parseFloat(tempDetail.amount);
-                  console.log("1", this.amount);
-                }
-              });
-            }
-            */
-          }
-          //璐圭敤鍚堣
-          // this.form.pretaxcost = parseFloat(this.totalPreTaxAmount).toFixed(2);
-          // this.form.taxedcost = parseFloat(this.totalAfterTaxAmount).toFixed(2);
-          // this.form.amountrequested = this.totalAmount.toFixed(2);
-
-          //淇濆瓨鏁版嵁
-          this.loading = true;
-          this.form.serviceFunddetails = 0;
-          this.fundDetails.map((item) => {
-            this.form.serviceFunddetails += item.amount;
-          });
-          this.form.serviceFunddetails = this.fundDetails;
-
-          if (this.form.id != null) {
-            //鎹愮尞鑰�
-            this.form.donorname = this.curCase.name;
-
-            // updateFund(this.form).then((response) => {
-            //   if (response.code === 200) {
-            //     this.loading = false;
-            //     for (let m = 0; m < this.fundDetails.length; m++) {
-            //       if (this.fundDetails[m].id > 0) {
-            //         updateFunddetail(this.fundDetails[m]).then((response2) => { if (response.code != 200) { this.$modal.msgError("涓撳鍔冲姟璐逛繚瀛樺け璐�1锛�" + response.msg); } });
-            //       } else {
-            //         addFunddetail(this.fundDetails[m]).then((response2) => { if (response.code != 200) { this.$modal.msgError("涓撳鍔冲姟璐逛繚瀛樺け璐�2锛�" + response.msg); } });
-            //       }
-            //     }
-            //     this.$modal.msgSuccess("涓撳鍔冲姟璐逛繚瀛樻垚鍔燂紒");
-            //   } else {
-            //     this.$modal.msgError("涓撳鍔冲姟璐逛繚瀛樺け璐ワ細" + response.msg);
-            //   }
-            // });
-
-          } else {
-            this.form.recordstatus = -1;
-
-            // addorupdateFund(this.form).then((response) => {
-            //   if (response.code === 200) {
-            //     this.selectDonotor(this.curCase);
-            //   } else {
-            //     this.$modal.msgError("涓撳鍔冲姟璐逛繚瀛樺け璐ワ細" + response.msg);
-            //   }
-            // });
-          }
-
-          addorupdateFund(this.form).then((response) => {
-            if (response.code === 200) {
-              this.selectDonotor(this.curCase);
-              this.$modal.msgSuccess("涓撳鍔冲姟璐逛繚瀛樻垚鍔燂紒");
-            } else {
-              this.$modal.msgError("涓撳鍔冲姟璐逛繚瀛樺け璐ワ細" + response.msg);
-            }
-          });
-
-          //鍏抽棴绐楀彛
-          this.loading = false;
-          // this.getfundList();
-          this.selectDonotor(this.curCase);
-
-        }
-      });
-    },
-
-    // 鍙栨秷鎸夐挳
-    cancel() {
-      this.reset();
-    },
-
-    // 琛ㄥ崟閲嶇疆
-    reset() {
-      this.form = {
-        recordstate: -1,
-        userno: null,
-        username: null,
-        id: null,
-        infoid: null,
-        donorno: null,
-        delFlag: null,
-        createBy: null,
-        createTime: null,
-        updateBy: null,
-        updateTime: null,
-        familyrelations: null,
-        name: null,
-        remark: 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: "4",
-        servicetypename: null,
-        servicesscope: null,
-        servicesscopename: null,
-      };
-      this.resetForm("form");
-      //娓呯┖闄勪欢
-      this.fileList = []
-    },
-
-    ShowDetailDialog(spoce, showType) {
-      this.expertfrom = "1";
-      this.funddetailForm.index = spoce.$index;
-      this.funddetailForm.beneficiaryname = spoce.row.beneficiaryname;
-      this.funddetailForm.beneficiaryno = spoce.row.beneficiaryno;
-      this.funddetailForm.unitno = spoce.row.unitno;
-      this.funddetailForm.unitname = spoce.row.unitname;
-      this.funddetailForm.expertname = "";
-      this.funddetailForm.expertidcardno = "";
-      this.funddetailForm.expertunitno = "";
-      this.funddetailForm.expertunitname = "";
-      this.funddetailForm.experttitle = "";
-      this.funddetailForm.expertdepositbank = "";
-      this.funddetailForm.expertbankcardno = "";
-
-      this.showDetailInfoDialog = true;
-      this.showDetailInfoDialogType = showType;
-    },
-
-    ConfirmDetailDialog() {
-      let tempIndex = this.funddetailForm.index;
-      let tempName = this.funddetailForm.beneficiaryname;
-      let tempUnitname = this.funddetailForm.unitname;
-      let singleDetail = this.fundDetails[tempIndex];
-
-      if (this.showDetailInfoDialogType == "name") {
-
-        if (this.expertfrom == "1") {
-          //浠庝笓瀹跺垪琛ㄨ幏鍙栦俊鎭�
-          this.personlist.map((res) => {
-            if (tempName == res.username) {
-              console.log("閫夋嫨涓撳", res);
-              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 {
-          //淇濆瓨鏂板涓撳
-          this.expertform.id = null;
-          this.expertform.userno = this.personlist[this.personlist.length - 1].id + 1;
-          this.expertform.usertype = "expert";
-          this.expertform.username = this.funddetailForm.expertname;
-          this.expertform.idcardno = this.funddetailForm.expertidcardno;
-          this.expertform.sex = null;
-          this.expertform.telephone = null;
-          this.expertform.address = null;
-          this.expertform.wbm = null;
-          this.expertform.pym = null;
-
-          this.expertform.unitno = this.funddetailForm.expertunitno;
-          try {
-            let unitIndex = this.unitList.findIndex(
-              (item) => this.expertform.unitno == item.organizationid
-            );
-            if (unitIndex > -1) {
-              this.expertform.unitname = this.unitList[unitIndex].organizationname;
-            } else {
-              this.expertform.unitname = this.expertform.unitno;
-            }
-          } catch {
-            this.expertform.unitname = this.expertform.unitno;
-          }
-          this.expertform.title = this.funddetailForm.experttitle;
-          this.expertform.personnelunitno = null;
-
-          this.expertform.depositbank = this.funddetailForm.expertdepositbank;
-          this.expertform.bankcardno = this.funddetailForm.expertbankcardno;
-          this.expertform.branchbankname = null;
-          this.expertform.remark = null;
-          this.expertform.del_flag = "0";
-
-          addExternalperson(this.expertform).then((response) => {
-            if (response.code == 200) {
-              this.$modal.msgSuccess("鏂板涓撳淇℃伅鎴愬姛锛�");
-
-              listExternalperson().then((res) => {
-                this.personlist = res.rows;
-                console.log("new personlist", this.personlist);
-                //浠庝笓瀹跺垪琛ㄨ幏鍙栦俊鎭�
-                this.personlist.map((res) => {
-                  if (res.username == this.funddetailForm.expertname) {
-                    console.log("鏂板涓撳", res);
-                    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 if (this.showDetailInfoDialogType == "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.fundDetails[tempIndex] = singleDetail;
-      this.showDetailInfoDialog = false;
-    },
-
-    //鑾峰彇褰撳墠鐢ㄦ埛淇℃伅
-    getUserProfile() {
-      getUserProfile().then((response) => {
-        this.userprofile = response.data;
-        this.standardlevel = response.data.standardlevel;
-        if (this.userprofile.createBy == "admin" || this.userprofile.createBy == "001" || this.userprofile.createBy == "002") {
-          this.ismanager = true;
-        } else {
-          this.ismanager = false;
-        }
-      });
-    },
-
-    //鑾峰彇璐圭敤椤圭洰鐨勫娉ㄤ俊鎭�
-    selectedRemark(row) {
-      row.rowfeeblocks.forEach((item, i) => {
-        if (item.servicesscope === row.servicesscope) {
-          row.servicesscopename = item.expensedescribe;
-          if (row.servicesscopename.includes("绋庡悗")) {
-            row.amount = 0.0;
-            row.taxamount = 0.0;
-            row.taxedamount = item.expense;
-          } else {
-            row.amount = item.expense;
-            row.taxamount = 0.0;
-            row.taxedamount = 0.0;
-          }
-
-          this.form.serviceFunddetails = 0;
-          this.fundDetails.map((item) => {
-            this.form.serviceFunddetails += item.amount;
-          });
-        }
-      });
-    },
-
-    //鏍¢獙鏀惰垂椤圭洰鏄惁閲嶅
-    verifyFeeItem(row) {
-      row.itemlist.map((res) => {
-        if (row.itemid === res.id) {
-          row.remark = res.itemDescribe;
-          row.itemcode = res.itemCode;
-        }
-      });
-      var repeatNum = 0;
-      this.fundDetails.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 rowfeeblocks = [];
-        fundmsg.forEach((item) => {
-          rowfeeblocks.push({
-            expense: item.expense,
-            expensedescribe: item.expensedescribe,
-            remark: item.expensedescribe,
-            servicesscope: item.id,
-          });
-        });
-
-        row.rowfeeblocks = rowfeeblocks;
-        row.servicesscope = null;
-        row.servicesscopename = "";
-      });
-
-    },
-
-    //
-    selectamount(row) {
-      this.rowfeeblocks.forEach((item, i) => {
-        if (item.expense === row.amount) {
-          row.remark = item.expensedescribe;
-        }
-      });
-    },
-
-    getUnitList() {
-      listOrganization(3).then((response) => {
-        for (let i = 0; i < response.rows.length; i++) {
-          this.unitList.push({
-            //organizationid: response.rows[i].organizationid,
-            organizationid: response.rows[i].id,
-            organizationname: response.rows[i].organizationname,
-          });
-        }
-      });
-    },
-
-    getBaseInfoList() {
+    /** 鏌ヨ璐圭敤鐢宠鏄庣粏鍒楄〃 */
+    getList() {
       this.loading = true;
-      listDonatebaseinfo(this.queryParams).then((response) => {
-        this.donatebaseinfoList = response.rows;
+      listFunddetail(this.queryParams).then(response => {
+        this.funddetailList = response.rows;
         this.total = response.total;
         this.loading = false;
       });
     },
-
-    //鐐瑰嚮鎹愮尞妗堜緥鍒楄〃瑙﹀彂鏂规硶
-    selectDonotor(row, column, event) {
-      this.curCase = row;
-      this.getfundList();
-    },
-
-    getfundList() {
-      this.loading = true;
+    // 鍙栨秷鎸夐挳
+    cancel() {
+      this.open = false;
       this.reset();
-      this.fundQueryParam.infoid = this.curCase.id;
-      listFund(this.fundQueryParam).then((response) => {
-        this.loading = false;
-        this.donateconsolationfundList = response.rows;
-      });
     },
-
-    //瀵煎叆鎵�鏈夐」鐩�
-    addAllItems() {
-      this.loading = true;
-      this.fundDetails = this.fundDetails.filter(
-        (r) => r.applytype != "" && r.applytype != null
-      );
-      let listAdd = [];
-      //let listAdd = this.fundDetails;
-      for (let i = 0; i < this.feeItemTypes.length; i++) {
-        for (let j = 0; j < this.feeItemTypes[i].itemDetails.length; j++) {
-          let list = this.fundDetails.filter(
-            (r) =>
-              r.applytype == this.feeItemTypes[i].itemType &&
-              r.itemid == this.feeItemTypes[i].itemDetails[j].id
-          );
-
-          if (list.length == 0) {
-            let rowData = {
-              id: null,
-              orderno: listAdd.length + 1,
-              applytype: this.feeItemTypes[i].itemType,
-              itemid: this.feeItemTypes[i].itemDetails[j].id,
-              itemcode: this.feeItemTypes[i].itemDetails[j].itemCode,
-              recordstatus: "-1",
-              beneficiaryname: "鐐瑰嚮閫夋嫨",
-              unitname: "鐐瑰嚮閫夋嫨",
-              itemlist: this.feeItemTypes[i].itemDetails,
-              rowfeeblocks: null,
-              servicesscope: null,
-              servicesscopename: ""
-            };
-
-            //鑾峰彇鏀惰垂椤圭洰鐨勮鏄庝俊鎭�
-            getdetailsByItemId(rowData.itemid).then((res) => {
-              let fundmsg = res.data;
-              let rowfeeblocks = [];
-              fundmsg.forEach((item) => {
-                rowfeeblocks.push({
-                  expense: item.expense,
-                  expensedescribe: item.expensedescribe,
-                  remark: item.expensedescribe,
-                  servicesscope: item.id,
-                });
-              });
-
-              rowData.rowfeeblocks = rowfeeblocks;
-              rowData.servicesscope = null;
-              rowData.servicesscopename = "";
-            });
-
-            listAdd.push(rowData);
-          }
-        }
-      }
-      this.fundDetails = listAdd;
-      this.loading = false;
-      // let Outerarr = this.fundDetails;
-      // Outerarr.map((res) => {
-      //   let onelist = this.rowfeeItemTypes;
-      //   onelist.map((item) => {
-      //     //绗竴灞備笉鐩哥瓑鏃讹紱
-      //     if (res.applytype !== item.itemType) {
-      //       this.addRow();
-      //     }
-      //   });
-      // });
-    },
-
-    addAll(row, i, arr) {
-      row.itemlist.map((res) => {
-        if (res.id !== row.itemid) {
-          let a = arr.length;
-          this.addRow();
-          arr[a].itemlist = row.itemlist;
-          arr[a].applytype = row.applytype;
-          arr[a].itemid = res.id;
-
-          getdetailsByItemId(arr[a].itemid).then((res) => {
-            let fundmsg = res.data;
-            let rowfeeblocks = [];
-            fundmsg.forEach((item) => {
-              rowfeeblocks.push({
-                expense: item.expense,
-                expensedescribe: item.expensedescribe,
-                remark: item.expensedescribe,
-                servicesscope: item.id,
-              });
-            });
-            row.rowfeeblocks = rowfeeblocks;
-          });
-        }
-      });
-    },
-
-    //鏂板涓�琛�
-    addRow(rowIndex) {
-      let rowData = {
-        orderno: null,
+    // 琛ㄥ崟閲嶇疆
+    reset() {
+      this.form = {
         id: null,
         fundid: null,
-        beneficiaryname: "鐐瑰嚮閫夋嫨",
+        beneficiaryname: null,
         beneficiaryno: null,
-        unitname: "鐐瑰嚮閫夋嫨",
-        unitno: null,
+        uintname: null,
+        uintno: null,
         uintuserno: null,
-        title: null,
         idcardtype: null,
         idcardno: null,
         sex: null,
@@ -1560,322 +312,93 @@
         itemtype: null,
         amount: null,
         prepaidamount: null,
-        taxamount: null,
         invoicecount: null,
-        taxedamount: null,
         attachcount: null,
         remark: null,
-        recordstatus: "-1",
+        recordstatus: "0",
         delFlag: null,
         createBy: null,
         createTime: null,
         updateBy: null,
         updateTime: null,
         uploadflag: null,
-        uploadtime: null,
-        itemlist: [],
-        servicesscope: null,
-        rowfeeblocks: [],
+        uploadtime: null
       };
-      if (rowIndex == undefined || rowIndex == null || rowIndex < 0) {
-        this.fundDetails.push(rowData);
-      } else {
-        this.fundDetails.splice(rowIndex + 1, 0, rowData);
-      }
-      for (let i = 0; i < this.fundDetails.length; i++) {
-        this.fundDetails[i].orderno = i + 1;
-      }
+      this.resetForm("form");
     },
-
-    //鍔犺浇鏈嶅姟椤圭洰
-    loadItemType(row) {
-      let list = this.feeItemTypes.filter((r) => r.itemType == row.applytype);
-      row.itemlist = list[0].itemDetails;
-      row.itemid = null;
-      this.$forceUpdate();
-      //this.loading = true;
-      // getItemNames(row.applytype).then((res) => {
-      //   this.loading = false;
-      //   row.itemid = null;
-      //   row.itemlist = res.data;
-      //   this.$forceUpdate();
-      // });
+    /** 鎼滅储鎸夐挳鎿嶄綔 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
     },
-
-    //鑾峰彇涓撳鍒楄〃
-    getExternalpersonList() {
-      listExternalperson().then((res) => {
-        this.personlist = res.rows;
+    /** 閲嶇疆鎸夐挳鎿嶄綔 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 澶氶�夋閫変腑鏁版嵁
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.id)
+      this.single = selection.length !== 1
+      this.multiple = !selection.length
+    },
+    /** 鏂板鎸夐挳鎿嶄綔 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "娣诲姞璐圭敤鐢宠鏄庣粏";
+    },
+    /** 淇敼鎸夐挳鎿嶄綔 */
+    handleUpdate(row) {
+      this.reset();
+      const id = row.id || this.ids
+      getFunddetail(id).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "淇敼璐圭敤鐢宠鏄庣粏";
       });
     },
-
-    //涓撳浜哄憳鍒楄〃
-    selectReporters() {
-      let types = ["expert"];
-      let templist = [];
-      for (let i = 0; i < types.length; i++) {
-        templist = [];
-        listReportname(types[i]).then((res) => {
-          for (let j = 0; j < res.data.length; j++) {
-            templist.push({
-              reportName: res.data[j].reportName,
-              reportNo: res.data[j].reportNo,
-            });
-          }
-          this.expertlist = this.expertlist.concat(templist);
-        });
-      }
-    },
-
-    selectpersonmsg(row) {
-      // if(row.beneficiaryname)
-      this.personlist.map((res) => {
-        if (row.beneficiaryname == res.username) {
-          row.beneficiaryno = res.userno;
-          row.beneficiaryname = res.username;
-          row.bankcardno = res.bankcardno;
-          row.branchbankname = res.branchbankname;
-          row.depositbank = res.depositbank;
-          row.idcardno = res.idcardno;
-          row.phone = res.phonenumber;
-          row.title = res.title;
-          row.unitname = res.unitname;
-          row.unitno = res.unitno;
-        } else {
-          row.beneficiaryno = row.beneficiaryname;
-        }
-      });
-    },
-
-    getUserList() {
-      listUser().then((res) => {
-        console.log("listUser", res);
-        this.userlist = res.data;
-      });
-    },
-
-    //绛涙煡鍑哄搴旂殑璐圭敤椤圭洰
-    searchItemType(val, scope) {
-      let result = [];
-      if (val != "") {
-        let tempitemlist = scope.row.itemlist;
-        for (let i = 0; i < tempitemlist.length; i++) {
-          let pym = tempitemlist[i].itempinyin;
-          if (pym != null && pym != undefined && pym != "") {
-            if (pym.indexOf(val) != -1) {
-              result.push(tempitemlist[i]);
-            }
-          }
-        }
-        scope.row.itemlist = result;
-      } else {
-        getItemNames(scope.row.applytype).then((res) => {
-          scope.row.itemlist = res.data;
-          //this.$set(this.fundDetails, rowindex, row);
-        });
-      }
-    },
-
-    deleteRows(row, index, rows) {
-      this.$confirm("鏄惁纭鍒犻櫎?", "鎻愮ず", {
-        confirmButtonText: "纭畾",
-        cancelButtonText: "鍙栨秷",
-        type: "success",
-      })
-        .then(() => {
-          if (row.id !== null) {
-            delFunddetail(row.id).then((res) => {
-              if (res.code === 200) {
-                this.$confirm("鍒犻櫎鎴愬姛", "鎻愮ず", {
-                  confirmButtonText: "纭畾",
-                  cancelButtonText: "鍙栨秷",
-                  type: "success",
-                }).then(() => {
-                  this.$set(rows, rows.splice(index, 1));
-                  getownFundDetail(this.form.id).then((res) => {
-                    this.$set(this.fundDetails, res.data);
-                    this.sumTotalFee();
-                    // this.fundDetails = res.data
-                  });
-                });
-              }
-              // getownFundDetail(this.form.id).then(res=>{
-              // this.$set(this.fundDetails,res.data)
-              // this.fundDetails = res.data
-              // })
+    /** 鎻愪氦鎸夐挳 */
+    submitForm() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateFunddetail(this.form).then(response => {
+              this.$modal.msgSuccess("淇敼鎴愬姛");
+              this.open = false;
+              this.getList();
             });
           } else {
-            rows.splice(index, 1);
-            this.sumTotalFee();
+            addFunddetail(this.form).then(response => {
+              this.$modal.msgSuccess("鏂板鎴愬姛");
+              this.open = false;
+              this.getList();
+            });
           }
-        })
-        .catch(() => {
-          //鍑犵偣鍙栨秷鐨勬彁绀�
-        });
-    },
-
-    //璁$畻涓◣
-    calculateTax() { },
-
-    //璁$畻鎬婚噾棰�
-    sumTotalFee(row) {
-      let allSum = 0;
-      if (this.form.applytype != null) {
-        for (let i = 0; i < this.fundDetails.length; i++) {
-          let totalFee = 0;
-          let taxFee = 0;
-          if (this.form.applytype == 1 || this.form.applytype == 2) {
-            //璁$畻褰撳墠鎶ラ攢鍐呭璐圭敤鍚堣
-            if (!isNaN(parseFloat(this.fundDetails[i].amount))) {
-              totalFee += parseFloat(this.fundDetails[i].amount);
-              taxFee += parseFloat(this.fundDetails[i].amount);
-            }
-            if (!isNaN(parseFloat(this.fundDetails[i].taxamount))) {
-              totalFee -= parseFloat(this.fundDetails[i].taxamount);
-              taxFee -= parseFloat(this.fundDetails[i].taxamount);
-            }
-          } else if (this.form.applytype == 3) {
-            if (
-              !isNaN(parseFloat(this.fundDetails[i].price)) &&
-              !isNaN(parseFloat(this.fundDetails[i].quantity))
-            ) {
-              totalFee +=
-                parseFloat(this.fundDetails[i].price) *
-                parseFloat(this.fundDetails[i].quantity);
-            }
-          }
-
-          //绋庡墠銆佺◣鍚庨渶瑕佺嫭绔嬪綍鍏�
-          // if (!isNaN(parseFloat(taxFee))) {
-          //   this.fundDetails[i].taxedamount = taxFee.toFixed(2);
-          // }
-
-          allSum += totalFee;
-        }
-      }
-      // this.form.amountrequested = allSum.toFixed(2);
-      // this.$forceUpdate();
-    },
-
-    //鑾峰彇璐圭敤绫诲瀷
-    getCurFundType() {
-      getFundTypeAll(this.businesstype).then((res) => {
-        let dataList = res.data;
-        this.feeItemTypes = dataList;
-        this.rowfeeItemTypes = [];
-        for (let m = 0; m < dataList.length; m++) {
-          this.rowfeeItemTypes.push({
-            value: dataList[m].itemType,
-            label: dataList[m].itemTypeName,
-            subjecttype: dataList[m].subjecttype,
-            subjecttypename: dataList[m].subjecttypename,
-          });
         }
       });
     },
-
-    getitemlist(rowindex, row) {
-      let list = this.feeItemTypes.filter((r) => r.itemType == row.applytype);
-      row.itemlist = list[0].itemDetails;
-      this.$set(this.fundDetails, rowindex, row);
-      //this.loading = true;
-      // getItemNames(row.applytype).then((res) => {
-      //   this.loading = false;
-      //   row.itemlist = res.data;
-      //   this.$set(this.fundDetails, rowindex, row);
-      // });
+    /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+    handleDelete(row) {
+      const ids = row.id || this.ids;
+      this.$modal.confirm('鏄惁纭鍒犻櫎璐圭敤鐢宠鏄庣粏缂栧彿涓�"' + ids + '"鐨勬暟鎹」锛�').then(function () {
+        return delFunddetail(ids);
+      }).then(() => {
+        this.getList();
+        this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+      }).catch(() => { });
     },
-
-    mixExport(scope) {
-      this.dayin(scope.row.id);
-      //this.totaldayin(id);
-    },
-
-    //涓撳璐瑰姵鍔℃墦鍗�
-    dayin(id) {
-      getdownloadLW(id).then((res) => {
-        if (res.downloadUrl) {
-          var fileUrl = res;
-          //鑾峰彇褰撳墠缃戝潃
-          var urlBase = process.env.VUE_APP_BASE_API;
-          var curWWWPath = window.document.location.href;
-          var pos = curWWWPath.indexOf(window.document.location.pathname);
-          // 鍒涘缓a鏍囩
-          var aEle = document.createElement("a");
-          aEle.href =
-            curWWWPath.substring(0, pos) + urlBase + fileUrl["downloadUrl"];
-          aEle.click();
-          this.$alert("涓嬭浇鎴愬姛", "鎻愮ず", {
-            confirmButtonText: "纭畾",
-            type: "success",
-          });
-        }
-      });
-    },
-
-    //姹囨�绘墦鍗�
-    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",
-          });
-        }
-      });
-    },
-
-
-
-    //鏂囦欢涓婁紶
-    handleUploadError() { },
-
-    /** 涓嬭浇鏂囦欢鎸夐挳鎿嶄綔 */
-    downFile(item) {
-      const url = process.env.VUE_APP_BASE_API + item.url
-      var a = document.createElement('a');
-      var event = new MouseEvent('click');
-      a.download = item.name;
-      a.href = url;
-      a.dispatchEvent(event);
-    },
-
-    remove(file) {
-      this.fileList.splice(this.fileList.indexOf(file), 1)
-    },
-
-    handleExceed() {
-      this.$message.error(`涓婁紶鏂囦欢鏁伴噺涓嶈兘瓒呰繃 ${5} 涓�!`);
-    },
-
-    //鏂囦欢涓婁紶鎴愬姛鍥炶皟
-    uploadSccess(response, file, 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);;
-      }
-    },
-
-  },
-
+    /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+    handleExport() {
+      const queryParams = this.queryParams;
+      this.$modal.confirm('鏄惁纭瀵煎嚭鎵�鏈夎垂鐢ㄧ敵璇锋槑缁嗘暟鎹」锛�').then(() => {
+        this.exportLoading = true;
+        return exportFunddetail(queryParams);
+      }).then(response => {
+        this.$download.name(response.msg);
+        this.exportLoading = false;
+      }).catch(() => { });
+    }
+  }
 };
-
 </script>
-<style scoped>
-/* @import url(); 寮曞叆鍏叡css绫� */
-</style>

--
Gitblit v1.9.3