From 57451296729e00be76124e4a6be7c14bdf67c0e6 Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期三, 02 八月 2023 10:41:17 +0800
Subject: [PATCH] yxh增加了杂费申请

---
 src/views/project/fund/expertFeeFundApply/index.vue | 1600 ++++++++++++++++++++++++++++++++++++----------------------
 1 files changed, 981 insertions(+), 619 deletions(-)

diff --git a/src/views/project/fund/expertFeeFundApply/index.vue b/src/views/project/fund/expertFeeFundApply/index.vue
index ed687bc..3e9dcff 100644
--- a/src/views/project/fund/expertFeeFundApply/index.vue
+++ b/src/views/project/fund/expertFeeFundApply/index.vue
@@ -9,7 +9,6 @@
               @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">
@@ -34,8 +33,7 @@
               </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" 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">
@@ -88,20 +86,17 @@
                 </el-table-column>
                 <el-table-column label="鎵�灞炵粍鍒�" align="center" prop="deptmentname" width="220px" />
                 <el-table-column label="缁勯暱" align="center" prop="managername" width="150px" />
-                <!-- <el-table-column
-                  label="鐢宠閲戦"
-                  align="center"
-                  prop="amountrequested"
-                  width="120px"
-                                      />    
+                <!-- 
+                <el-table-column label="鐢宠閲戦" align="center" prop="amountrequested" width="120px" />    
                 <el-table-column label="鑱旂郴鐢佃瘽" align="center" prop="phone" width="150px" />
-                <el-table-column label="宸ヤ綔鍗曚綅" align="center" prop="unitname" width="220px" /> -->
+                <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">
                   <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>
+                      " 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)">淇敼</el-button>
@@ -142,6 +137,14 @@
             </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>
@@ -149,13 +152,6 @@
           <el-col :span="5">
             <el-form-item label="缁勯暱" prop="managername">
               <el-input v-model="form.managername" placeholder="璇疯緭鍏ョ粍闀�" clearable />
-            </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-row>
@@ -183,25 +179,38 @@
             </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 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-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">
@@ -217,29 +226,29 @@
         <el-row style="margin-top: 5px; margin-bottom: 5px">
           <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="addAllItems" type="primary" size="small">
                 瀵煎叆鏈嶅姟椤圭洰
               </el-button>
             </el-col>
           </el-row>
-          <el-table :data="fundDetailArr" v-loading="loading" border highlight-current-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">
+            <el-table-column prop="applytype" align="center" label="鏈嶅姟璐圭敤绫诲瀷" width="200">
               <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.index" :label="dict.label"
+                <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="itemtype" align="center" label="鏈嶅姟椤圭洰" width="260">
+            <el-table-column prop="itemid" align="center" label="鏈嶅姟椤圭洰鍚嶇О" width="260">
               <template slot-scope="scope">
-                <el-select v-model="scope.row.itemid" placeholder="鏈嶅姟椤圭洰" filterable @change="select(scope.row)"
-                  :filter-method="(val) => SearchItem(val, 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.itemArr" :key="dict.index" :label="dict.itemName"
                     :value="dict.id"></el-option>
                 </el-select>
@@ -247,25 +256,25 @@
             </el-table-column>
             <el-table-column prop="itemcode" align="center" label="椤圭洰缂栧彿" show-overflow-tooltip="" v-if="false">
             </el-table-column>
-            <el-table-column prop="servicesscopename" align="center" label="璐圭敤璇存槑" width="180">
+            <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.fundblock" :key="dict.servicesscope" :label="dict.expensedescribe"
+                  <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="100">
+            <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.fundblock" :key="dict.expensedescribe" :label="dict.expense"
+                  <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="100" v-if="this.ismanager == true">
+            <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="绋庡悗閲戦" />
@@ -285,7 +294,7 @@
                   placeholder="璇烽�夋嫨"
                 >
                   <el-option
-                    v-for="item in arrr3"
+                    v-for="item in expertlist"
                     :key="item.reportNo"
                     :label="item.reportName"
                     :value="item.reportName"
@@ -335,7 +344,6 @@
                 <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="鑱岀О" />
@@ -360,16 +368,16 @@
             <el-table-column fixed="right" align="center" label="鎿嶄綔" width="180" 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)
+                  deleteRows(scope.row, scope.$index, fundDetails)
                   " type="text" size="small">
                   鍒犻櫎
                 </el-button>
               </template>
             </el-table-column>
           </el-table>
-        </el-row> <!--
+        </el-row>
+        <!--
         <el-row>   
           <el-col :span="7">
             <el-form-item label="棰勬敮閲戦" prop="prepaidamount">
@@ -409,12 +417,12 @@
             </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="5"
-                :headers="headers" :on-success="(response, file, fileList) =>
+              <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">
@@ -442,21 +450,29 @@
       </div>
     </el-dialog>
 
-    <el-dialog :visible.sync="detailInfoDialogShow" :close-on-click-modal="false" :title="'淇℃伅淇敼'" width="500px"
+    <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="detailInfoDialogShowType == 'name'">
+          <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 arrr3" :key="item.reportNo" :label="item.reportName" :value="item.reportName">
+                <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="detailInfoDialogShowType == 'unit'">
+          <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%">
@@ -466,9 +482,65 @@
             </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>
+          <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-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-row>
       </el-form>
       <span slot="footer" class="dialog-footer">
-        <el-button @click="detailInfoDialogShow = false">鍙� 娑�</el-button>
+        <el-button @click="showDetailInfoDialog = false">鍙� 娑�</el-button>
         <el-button type="primary" @click="ConfirmDetailDialog()">纭� 瀹�</el-button>
       </span>
     </el-dialog>
@@ -480,8 +552,9 @@
 //渚嬪锛歩mport 銆婄粍浠跺悕绉般�� from '銆婄粍浠惰矾寰勩��';
 import {
   listDonatebaseinfo,
-  getDonatebaseinfo,
+  getDonatebaseinfo
 } from "@/api/project/donatebaseinfo";
+
 import {
   onelistFund,
   listFund,
@@ -495,9 +568,10 @@
   getdownloadSS,
   getdownloadYX,
   getdownloadBX,
-  batchUploadFund,
-  getdetailsByItemId,
+  addorupdateFund,
+  getdetailsByItemId
 } from "@/api/project/fund";
+
 import {
   onelistFunds,
   listFunddetails,
@@ -512,14 +586,22 @@
   getFundType,
   getFundTypeAll,
   listcountItem,
+  getDataBybeneficiaryNo,
+  getTaxByBeneFiciaryNo,
+  getTaxBeforeByBeneFiciaryNo,
+  getTaxationByBeneFiciaryNo,
+  getTaxBeforeByAfterMoney
 } from "@/api/project/funddetail";
+
 import { listFundflow } from "@/api/project/fundflow";
+
 import {
   listOrganization,
   getOrganization,
   listReportname,
-  listUser,
+  listUser
 } from "@/api/project/organization";
+
 import {
   listExternalperson,
   getExternalperson,
@@ -527,8 +609,9 @@
   delExternalperson,
   addExternalperson,
   updateExternalperson,
-  exportExternalperson,
+  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";
@@ -541,29 +624,30 @@
     Li_area_select,
     OrgSelecter,
   },
+
   name: "fundApply",
+
   dicts: [
-    "sys_consolationfundlevel",
-    "sys_OrganizationType",
+    //"sys_consolationfundlevel",
+    //"sys_OrganizationType",
     "sys_DonationStatus",
-    "sys_depositbank",
-    "sys_FamilyRelation",
-    "sys_IDType",
-    "sys_ConsolationType",
-    "sys_fund_type",
-    "sys_finsubject",
-    "sys_financeitemtype",
-    "sys_expensetype",
+    //"sys_depositbank",
+    //"sys_FamilyRelation",
+    //"sys_IDType",
+    //"sys_ConsolationType",
+    //"sys_fund_type",
+    //"sys_finsubject",
+    //"sys_financeitemtype",
+    //"sys_expensetype",
     "sys_recordstatus",
+    "sys_professionaltitle"
   ],
+
   data() {
     //杩欓噷瀛樻斁鏁版嵁
     return {
-      arrr2: [],
-      arrr3: [],
-      currentApplyType: "1",
       // 閬僵灞�
-      loading: true,
+      loading: false,
       // 瀵煎嚭閬僵灞�
       exportLoading: false,
       total: 0,
@@ -592,7 +676,31 @@
       },
       // 琛ㄥ崟鍙傛暟
       form: {},
+      //鎵�鏈変汉鍛樿〃
       personlist: [],
+      expertQueryParam: {
+        pageNum: 1,
+        pageSize: 10000,
+        userno: null,
+        username: null,
+        usertype: null,
+      },
+
+      //
+      amount: 0.00,
+
+      //鐢宠鍗曠被鍨�
+      currentApplyType: "1",
+      //涓撳鍒楄〃
+      expertlist: [],
+      //涓撳璐归�夋嫨锛�1鏄笓瀹跺簱锛�2鏄柊澧�
+      expertfrom: "1",
+      //璁$畻涓◣鍙傛暟
+      taxParam: {
+        beneficiaryNo: '',
+        money: '0',
+        startTime: '',
+      },
       // 琛ㄥ崟鏍¢獙
       rules: {
         username: [
@@ -622,34 +730,75 @@
 
       // 鎹愮尞浜洪亾鎱伴棶閲戣〃鏍兼暟鎹�
       donateconsolationfundList: [],
-
-      fundDetailArr: [],
+      //璐圭敤鏄庣粏鍒楄〃
+      fundDetails: [],
+      formData: {},
+      totalPreTaxAmount: 0.0,
+      totalAfterTaxAmount: 0.0,
+      totalAmount: 0.0,
 
       // 寮瑰嚭灞傛爣棰�
       title: "",
       userlist: [],
       itemArr: [],
       reporters: [],
+
+      //琛岃褰曠殑璐圭敤绫诲瀷鏁扮粍
+      rowfeeItemTypes: [],
       //璐圭敤绫诲瀷鏁扮粍
-      fundtypeArr: [],
-      fundblock: [],
+      feeItemTypes: [],
+      //璐圭敤璇存槑
+      rowfeeblocks: [],
       defaultperson: {},
 
       //鏄惁鏄笓瀹惰垂鐨凮PO瀹℃壒浜哄憳
       ismanager: false,
-      fundtypeArrAll: [],
       unitList: [],
       dialogType: "edit",
       fundflowList: [],
 
-      detailInfoDialogShow: false,
-      detailInfoDialogShowType: "",
+      showDetailInfoDialog: false,
+      showDetailInfoDialogType: "",
       funddetailForm: {
+        index: null,
         beneficiaryname: null,
         beneficiaryno: null,
         unitno: null,
         unitname: null,
-        index: 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,
       },
 
       //闄勪欢鍒楄〃
@@ -667,63 +816,203 @@
   computed: {},
   //鐩戞帶data涓殑鏁版嵁鍙樺寲
   watch: {},
-  // mounted(){
-  //  this.getUsermsg()
-  // },
+  //鐢熷懡鍛ㄦ湡 - 鍒涘缓瀹屾垚锛堝彲浠ヨ闂綋鍓峵his瀹炰緥锛�    
+  created() {
+    this.getList();
+    this.getBaseInfoList();
+    this.getCurFundType();
+    this.getUserList();
+    this.getUnitList();
+
+  },
+
+  //鐢熷懡鍛ㄦ湡 - 鎸傝浇瀹屾垚锛堝彲浠ヨ闂瓺OM鍏冪礌锛�
+  mounted() {
+    this.selectReporters();
+    this.getUsermsg();
+    this.getExternalpersonList();
+  },
+
+  beforeCreate() { }, //鐢熷懡鍛ㄦ湡 - 鍒涘缓涔嬪墠
+  beforeMount() { }, //鐢熷懡鍛ㄦ湡 - 鎸傝浇涔嬪墠
+  beforeUpdate() { }, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠
+  updated() { }, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪悗
+  beforeDestroy() { }, //鐢熷懡鍛ㄦ湡 - 閿�姣佷箣鍓�
+  destroyed() { }, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴�
+  activated() { }, //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂
+
   //鏂规硶闆嗗悎
   methods: {
-    ShowDetailDialog(spoce, showType) {
-      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.detailInfoDialogShow = true;
-      this.detailInfoDialogShowType = showType;
+
+    /** 鎼滅储鎸夐挳鎿嶄綔 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
     },
-    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;
+
+    /** 閲嶇疆鎸夐挳鎿嶄綔 */
+    resetQuery() {
+      this.daterangeReporttime = [];
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+
+    /** 鏂板鎸夐挳鎿嶄綔 */
+    handleAdd() {
+      if (this.curCase.id) {
+        this.istrue += 2;
+        this.reset();
+        this.queryParams.params = {};
+        this.form.donorno = this.curCase.donorno;
+        this.form.name = this.curCase.name;
+        this.form.infoid = this.curCase.id;
+        console.log("defaultperson", this.defaultperson);
+        this.form.username = this.defaultperson.nickName;
+        this.form.userno = this.defaultperson.userName;
+        this.form.phone = this.defaultperson.phonenumber;
+        this.form.deptmentname = this.defaultperson.dept.deptName;
+        this.form.deptmentno = this.defaultperson.dept.deptId;
+        this.form.managername = this.defaultperson.dept.leader;
+
+        // this.form.createTime = nowdate;
+        //this.open = true;
+        //this.initFundApplyForm();
+        this.fundDetails = [];
+        this.addRow();
+        this.dialogOpen = true;
+        this.dialogType = "edit";
+        this.title = "璐圭敤鐢宠";
+      } else {
+        const h = this.$createElement;
+        this.$message({
+          message: h("p", null, [h("span", null, "璇峰厛閫夋嫨宸︽柟鎹愮尞妗堜緥 ")]),
+        });
+      }
+    },
+
+    /** 淇敼鎸夐挳鎿嶄綔 */
+    handleUpdate(row) {
+      this.isopen = 0;
+      this.reset();
+      this.queryParams.params = {};
+      this.form.donorno = this.curCase.donorno;
+      this.form.infoid = this.curCase.id;
+      this.dialogOpen = true;
+      this.title = "淇敼璐圭敤鐢宠";
+      this.dialogType = "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].itemArr = [];
+            this.getItemArr(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();
           }
         });
-      } 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) {
+
+    /** 鏌ョ湅鎸夐挳鎿嶄綔 */
+    handleDetail(row) {
+      this.isopen = 0;
+      this.reset();
+      this.queryParams.params = {};
+      this.form.donorno = this.curCase.donorno;
+      this.form.infoid = this.curCase.id;
+      this.dialogOpen = true;
+      this.title = "鏌ョ湅璐圭敤鐢宠";
+      this.dialogType = "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].itemArr = [];
+            this.getItemArr(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.getList();
+          this.getfundList();
+          this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+        })
+        .catch(() => { });
+    },
+
+    /** 涓婃姤鎸夐挳鎿嶄綔 */
+    handleUp(row) {
       this.$confirm("鏄惁纭灏嗙櫥璁拌褰曚笂鎶ワ紵", "鎻愮ず", {
         confirmButtonText: "纭畾",
         cancelButtonText: "鍙栨秷",
@@ -757,175 +1046,179 @@
         });
     },
 
-    // recordstatus
-    // updateFund(row).then(res=>{
-    //   console.log('鐘舵�佹洿鏂�',res);
-    // })
-    // },
+    /** 鎻愪氦鎸夐挳 */
+    submitForm() {
+      this.$refs["form"].validate((valid) => {
+        if (valid) {
+          this.formData = this.form;
+          // let totalPreTaxAmount = 0.0;
+          // let totalAfterTaxAmount = 0.0;
+          // let totalAmount = 0.0;
 
-    getUsermsg() {
-      getUserProfile().then((response) => {
-        this.defaultperson = response.data;
-        this.standardlevel = response.data.standardlevel;
-        if (
-          this.defaultperson.createBy == "admin" ||
-          this.defaultperson.createBy == "001" ||
-          this.defaultperson.createBy == "002"
-        ) {
-          this.ismanager = true;
-        } else {
-          this.ismanager = false;
-        }
-      });
-    },
-    selectedRemark(row) {
-      row.fundblock.forEach((item, i) => {
-        if (item.servicesscope === row.servicesscope) {
-          row.servicesscopename = item.expensedescribe;
-          if (row.servicesscopename.includes("绋庡悗")) {
-            row.amount = 0.0;
-            row.taxedamount = item.expense;
-          } else {
-            row.amount = item.expense;
-            row.taxedamount = 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 tempItemArr = tempDetail.itemArr;
+            let itemIndex = tempItemArr.findIndex(
+              (item) => tempDetail.itemid == item.id
+            );
+            if (itemIndex > -1) {
+              tempDetail.itemname = tempItemArr[itemIndex].itemName;
+              tempDetail.itemid = tempItemArr[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.fundDetailArr.map((item) => {
+          this.fundDetails.map((item) => {
             this.form.serviceFunddetails += item.amount;
           });
-        }
-      });
-    },
-    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("鎮ㄥ凡缁忔彁浜よ繃鏈嶅姟椤圭洰");
-      }
+          this.form.serviceFunddetails = this.fundDetails;
 
-      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,
+          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);
+            }
           });
-        });
 
-        row.fundblock = fundblock;
-        row.servicesscope = null;
-        row.servicesscopename = "";
-      });
-    },
-    selectamount(row) {
-      this.fundblock.forEach((item, i) => {
-        if (item.expense === row.amount) {
-          row.remark = item.expensedescribe;
+          //鍏抽棴绐楀彛
+          this.loading = false;
+          this.dialogOpen = false;
+          // this.getfundList();
+          this.getList();
+          this.selectDonotor(this.curCase);
+
         }
-      });
-    },
-    /** 鎼滅储鎸夐挳鎿嶄綔 */
-    handleQuery() {
-      this.queryParams.pageNum = 1;
-      this.getList();
-    },
-    /** 閲嶇疆鎸夐挳鎿嶄綔 */
-    resetQuery() {
-      this.daterangeReporttime = [];
-      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;
-      });
-    },
-    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() {
-      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.istrue += 2;
-        this.reset();
-        this.queryParams.params = {};
-        this.form.donorno = this.curCase.donorno;
-        this.form.name = this.curCase.name;
-        this.form.infoid = this.curCase.id;
-        this.form.username = this.defaultperson.nickName;
-        this.form.userno = this.defaultperson.userName;
-
-        this.form.deptmentname = this.defaultperson.dept.deptName;
-        this.form.deptmentno = this.defaultperson.dept.deptId;
-        this.form.managername = this.defaultperson.dept.leader;
-        // this.form.createTime = nowdate;
-        //this.open = true;
-        //this.initFundApplyForm();
-        this.fundDetailArr = [];
-        this.addRow();
-        this.dialogOpen = true;
-        this.dialogType = "edit";
-        this.title = "璐圭敤鐢宠";
-      } else {
-        const h = this.$createElement;
-        this.$message({
-          message: h("p", null, [h("span", null, "璇峰厛閫夋嫨宸︽柟鎹愮尞妗堜緥 ")]),
-        });
-      }
-    },
-    //鐐瑰嚮鎹愮尞妗堜緥鍒楄〃瑙﹀彂鏂规硶
-    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;
       });
     },
 
@@ -982,41 +1275,331 @@
       this.fileList = []
     },
 
-    addAlls() {
+    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;
+    },
+
+    //鑾峰彇褰撳墠鐢ㄦ埛淇℃伅
+    getUsermsg() {
+      getUserProfile().then((response) => {
+        this.defaultperson = response.data;
+        console.log("this.defaultperson", this.defaultperson);
+        this.standardlevel = response.data.standardlevel;
+        if (this.defaultperson.createBy == "admin" || this.defaultperson.createBy == "001" || this.defaultperson.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.itemArr.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;
+        }
+      });
+    },
+
+    /** 鏌ヨ鎹愮尞浜洪亾鎱伴棶閲戝垪琛� */
+    getList() {
+      console.log("getList", "getList");
       this.loading = true;
-      this.fundDetailArr = this.fundDetailArr.filter(
+      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;
+      });
+    },
+
+    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() {
+      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;
+      });
+    },
+
+    //瀵煎叆鎵�鏈夐」鐩�
+    addAllItems() {
+      this.loading = true;
+      this.fundDetails = this.fundDetails.filter(
         (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(
+      //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.fundtypeArrAll[i].itemType &&
-              r.itemid == this.fundtypeArrAll[i].itemDetails[j].id
+              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.fundtypeArrAll[i].itemType,
-              itemid: this.fundtypeArrAll[i].itemDetails[j].id,
-              itemcode: this.fundtypeArrAll[i].itemDetails[j].itemCode,
+              applytype: this.feeItemTypes[i].itemType,
+              itemid: this.feeItemTypes[i].itemDetails[j].id,
+              itemcode: this.feeItemTypes[i].itemDetails[j].itemCode,
               recordstatus: "-1",
               beneficiaryname: "鐐瑰嚮閫夋嫨",
               unitname: "鐐瑰嚮閫夋嫨",
-              itemArr: this.fundtypeArrAll[i].itemDetails,
+              itemArr: 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.fundDetailArr = listAdd;
+      this.fundDetails = listAdd;
       this.loading = false;
-      // let Outerarr = this.fundDetailArr;
+      // let Outerarr = this.fundDetails;
       // Outerarr.map((res) => {
-      //   let onelist = this.fundtypeArr;
+      //   let onelist = this.rowfeeItemTypes;
       //   onelist.map((item) => {
       //     //绗竴灞備笉鐩哥瓑鏃讹紱
       //     if (res.applytype !== item.itemType) {
@@ -1025,6 +1608,7 @@
       //   });
       // });
     },
+
     addAll(row, i, arr) {
       row.itemArr.map((res) => {
         if (res.id !== row.itemid) {
@@ -1036,20 +1620,21 @@
 
           getdetailsByItemId(arr[a].itemid).then((res) => {
             let fundmsg = res.data;
-            let fundblock = [];
+            let rowfeeblocks = [];
             fundmsg.forEach((item) => {
-              fundblock.push({
+              rowfeeblocks.push({
                 expense: item.expense,
                 expensedescribe: item.expensedescribe,
                 remark: item.expensedescribe,
                 servicesscope: item.id,
               });
             });
-            row.fundblock = fundblock;
+            row.rowfeeblocks = rowfeeblocks;
           });
         }
       });
     },
+
     //鏂板涓�琛�
     addRow(rowIndex) {
       let rowData = {
@@ -1093,21 +1678,21 @@
         uploadtime: null,
         itemArr: [],
         servicesscope: null,
-        fundblock: [],
+        rowfeeblocks: [],
       };
       if (rowIndex == undefined || rowIndex == null || rowIndex < 0) {
-        this.fundDetailArr.push(rowData);
+        this.fundDetails.push(rowData);
       } else {
-        this.fundDetailArr.splice(rowIndex + 1, 0, rowData);
+        this.fundDetails.splice(rowIndex + 1, 0, rowData);
       }
-      for (let i = 0; i < this.fundDetailArr.length; i++) {
-        this.fundDetailArr[i].orderno = i + 1;
+      for (let i = 0; i < this.fundDetails.length; i++) {
+        this.fundDetails[i].orderno = i + 1;
       }
     },
 
     //鍔犺浇鏈嶅姟椤圭洰
-    LoadItemTypeArr(row) {
-      let list = this.fundtypeArrAll.filter((r) => r.itemType == row.applytype);
+    loadItemType(row) {
+      let list = this.feeItemTypes.filter((r) => r.itemType == row.applytype);
       row.itemArr = list[0].itemDetails;
       row.itemid = null;
       this.$forceUpdate();
@@ -1120,148 +1705,31 @@
       // });
     },
 
-    /** 鎻愪氦鎸夐挳 */
-    submitForm() {
-      this.$refs["form"].validate((valid) => {
-        if (valid) {
-          let formData = this.form;
-          let totalPreTaxAmount = 0.0;
-          let totalAfterTaxAmount = 0.0;
-          let totalAmount = 0.0;
-          for (let k = 0; k < this.fundDetailArr.length; k++) {
-            let tempDetail = this.fundDetailArr[k];
-            if (tempDetail.itemid == null) {
-              this.$modal.msgWarning("璇烽�夋嫨鏈嶅姟椤圭洰");
-              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;
-            // }
-            if (!isNaN(parseFloat(tempDetail.amount))) {
-              totalPreTaxAmount += parseFloat(tempDetail.amount);
-              totalAmount += parseFloat(tempDetail.amount);
-            }
-            if (!isNaN(parseFloat(tempDetail.taxedamount))) {
-              totalAfterTaxAmount += parseFloat(tempDetail.taxedamount);
-              totalAmount += parseFloat(tempDetail.taxedamount);
-            }
-            this.fundDetailArr[k] = tempDetail;
-          }
-
-          this.loading = true;
-          //闄勪欢澶勭悊
-          let list = this.fileList;
-          if (list.length > 0) {
-            this.form.annexbankcard = list.map(item => item.url).join(",");
-          }
-
-          this.form.donorname = this.curCase.name;
-          this.form.pretaxcost = parseFloat(totalPreTaxAmount).toFixed(2);
-          this.form.taxedcost = parseFloat(totalAfterTaxAmount).toFixed(2);
-          this.form.amountrequested = totalAmount.toFixed(2);
-          if (this.form.id != null) {
-            this.form.recordstatus = -1;
-            updateFund(this.form).then((response) => {
-              this.getfundList();
-              this.dialogOpen = false;
-              this.getList();
-              this.selectDonotor(this.curCase);
-              this.$modal.msgSuccess("淇敼鎴愬姛");
-              this.loading = false;
-              for (let m = 0; m < this.fundDetailArr.length; m++) {
-                let tempData = this.fundDetailArr[m];
-                let tempItemArr = tempData.itemArr;
-                tempData.fundid = formData.id;
-                //鑾峰彇鏈嶅姟椤圭洰鏄庣粏
-                let itemIndex = tempItemArr.findIndex(
-                  (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) => { });
-                } else {
-                  addFunddetail(tempData).then((response2) => { });
-                }
-              }
-            });
-          } else {
-            //淇濆瓨璐圭敤鐢宠
-            for (let m = 0; m < this.fundDetailArr.length; m++) {
-              let tempData = this.fundDetailArr[m];
-              let tempUtemArr = tempData.itemArr;
-              //鑾峰彇鏈嶅姟椤圭洰鏄庣粏
-              let itemIndex = tempUtemArr.findIndex(
-                (item) => tempData.itemid == item.id
-              );
-              if (itemIndex > -1) {
-                tempData.itemname = tempUtemArr[itemIndex].itemName;
-                tempData.itemid = tempUtemArr[itemIndex].id;
-              }
-              //鑾峰彇applytypename
-              let applytypeIndex = this.fundtypeArr.findIndex(
-                (item) => tempData.applytype == item.value
-              );
-              if (applytypeIndex > -1) {
-                tempData.applytypename = this.fundtypeArr[applytypeIndex].label;
-              }
-              this.fundDetailArr[m] = tempData;
-            }
-            this.form.serviceFunddetails = 0;
-            this.fundDetailArr.map((item) => {
-              this.form.serviceFunddetails += item.amount;
-            });
-            this.form.serviceFunddetails = this.fundDetailArr;
-            this.form.recordstatus = -1;
-            batchUploadFund(this.form).then((response) => {
-              if (response.code === 200) {
-                this.$modal.msgSuccess("鏂板鎴愬姛");
-                this.loading = false;
-                this.selectDonotor(this.curCase);
-              } else {
-                this.$modal.msgError("鏂板澶辫触锛�" + response.msg);
-                this.loading = false;
-              }
-            });
-            this.dialogOpen = false;
-          }
-        }
-      });
-    },
-    getlistExternalperson() {
+    //鑾峰彇涓撳鍒楄〃
+    getExternalpersonList() {
       listExternalperson().then((res) => {
         this.personlist = res.rows;
       });
     },
+
+    //涓撳浜哄憳鍒楄〃
     selectReporters() {
-      //涓撳浜哄憳鍒楄〃
-      let arr = ["expert"];
-      let arrreportlist = [];
-      for (let i = 0; i < arr.length; i++) {
-        this.arrr2 = [];
-        listReportname(arr[i]).then((res) => {
+      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++) {
-            this.arrr2.push({
+            templist.push({
               reportName: res.data[j].reportName,
               reportNo: res.data[j].reportNo,
             });
           }
-          this.arrr3 = this.arrr3.concat(this.arrr2);
+          this.expertlist = this.expertlist.concat(templist);
         });
       }
     },
+
     selectpersonmsg(row) {
       // if(row.beneficiaryname)
       this.personlist.map((res) => {
@@ -1272,7 +1740,7 @@
           row.branchbankname = res.branchbankname;
           row.depositbank = res.depositbank;
           row.idcardno = res.idcardno;
-          row.phone = res.telephone;
+          row.phone = res.phonenumber;
           row.title = res.title;
           row.unitname = res.unitname;
           row.unitno = res.unitno;
@@ -1281,109 +1749,34 @@
         }
       });
     },
-    getlistUser() {
+
+    getUserList() {
       listUser().then((res) => {
+        console.log("listUser", res);
         this.userlist = res.data;
       });
     },
-    /** 淇敼鎸夐挳鎿嶄綔 */
-    handleUpdate(row) {
-      this.isopen = 0;
-      this.reset();
-      this.queryParams.params = {};
-      this.form.donorno = this.curCase.donorno;
-      this.form.infoid = this.curCase.id;
-      this.dialogOpen = true;
-      this.title = "淇敼璐圭敤鐢宠";
-      this.dialogType = "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.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,
-            });
-          }
-        });
-      });
-    },
-
-    /** 鏌ョ湅鎸夐挳鎿嶄綔 */
-    handleDetail(row) {
-      this.isopen = 0;
-      this.reset();
-      this.queryParams.params = {};
-      this.form.donorno = this.curCase.donorno;
-      this.form.infoid = this.curCase.id;
-      this.dialogOpen = true;
-      this.title = "鏌ョ湅璐圭敤鐢宠";
-      this.dialogType = "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.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);
+    //绛涙煡鍑哄搴旂殑璐圭敤椤圭洰
+    searchItemType(val, scope) {
+      let result = [];
+      if (val != "") {
+        let tempItemArr = scope.row.itemArr;
+        for (let i = 0; i < tempItemArr.length; i++) {
+          let pym = tempItemArr[i].itempinyin;
+          if (pym != null && pym != undefined && pym != "") {
+            if (pym.indexOf(val) != -1) {
+              result.push(tempItemArr[i]);
             }
-          });
-          // this.getList();
-          this.getfundList();
-          this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
-        })
-        .catch(() => { });
+          }
+        }
+        scope.row.itemArr = result;
+      } else {
+        getItemNames(scope.row.applytype).then((res) => {
+          scope.row.itemArr = res.data;
+          //this.$set(this.fundDetails, rowindex, row);
+        });
+      }
     },
 
     deleteRows(row, index, rows) {
@@ -1403,15 +1796,15 @@
                 }).then(() => {
                   this.$set(rows, rows.splice(index, 1));
                   getownFundDetail(this.form.id).then((res) => {
-                    this.$set(this.fundDetailArr, res.data);
+                    this.$set(this.fundDetails, res.data);
                     this.sumTotalFee();
-                    // this.fundDetailArr = res.data
+                    // this.fundDetails = res.data
                   });
                 });
               }
               // getownFundDetail(this.form.id).then(res=>{
-              // this.$set(this.fundDetailArr,res.data)
-              // this.fundDetailArr = res.data
+              // this.$set(this.fundDetails,res.data)
+              // this.fundDetails = res.data
               // })
             });
           } else {
@@ -1424,37 +1817,40 @@
         });
     },
 
+    //璁$畻涓◣
+    calculateTax() { },
+
     //璁$畻鎬婚噾棰�
     sumTotalFee(row) {
       let allSum = 0;
       if (this.form.applytype != null) {
-        for (let i = 0; i < this.fundDetailArr.length; i++) {
+        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.fundDetailArr[i].amount))) {
-              totalFee += parseFloat(this.fundDetailArr[i].amount);
-              taxFee += parseFloat(this.fundDetailArr[i].amount);
+            if (!isNaN(parseFloat(this.fundDetails[i].amount))) {
+              totalFee += parseFloat(this.fundDetails[i].amount);
+              taxFee += parseFloat(this.fundDetails[i].amount);
             }
-            if (!isNaN(parseFloat(this.fundDetailArr[i].taxamount))) {
-              totalFee -= parseFloat(this.fundDetailArr[i].taxamount);
-              taxFee -= parseFloat(this.fundDetailArr[i].taxamount);
+            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.fundDetailArr[i].price)) &&
-              !isNaN(parseFloat(this.fundDetailArr[i].quantity))
+              !isNaN(parseFloat(this.fundDetails[i].price)) &&
+              !isNaN(parseFloat(this.fundDetails[i].quantity))
             ) {
               totalFee +=
-                parseFloat(this.fundDetailArr[i].price) *
-                parseFloat(this.fundDetailArr[i].quantity);
+                parseFloat(this.fundDetails[i].price) *
+                parseFloat(this.fundDetails[i].quantity);
             }
           }
 
           //绋庡墠銆佺◣鍚庨渶瑕佺嫭绔嬪綍鍏�
           // if (!isNaN(parseFloat(taxFee))) {
-          //   this.fundDetailArr[i].taxedamount = taxFee.toFixed(2);
+          //   this.fundDetails[i].taxedamount = taxFee.toFixed(2);
           // }
 
           allSum += totalFee;
@@ -1468,26 +1864,28 @@
     getCurFundType() {
       getFundTypeAll(this.currentApplyType).then((res) => {
         let dataList = res.data;
-        this.fundtypeArrAll = dataList;
-        this.fundtypeArr = [];
+        this.feeItemTypes = dataList;
+        this.rowfeeItemTypes = [];
         for (let m = 0; m < dataList.length; m++) {
-          this.fundtypeArr.push({
+          this.rowfeeItemTypes.push({
             value: dataList[m].itemType,
             label: dataList[m].itemTypeName,
+            subjecttype: dataList[m].subjecttype,
+            subjecttypename: dataList[m].subjecttypename,
           });
         }
       });
     },
 
     getItemArr(rowindex, row) {
-      let list = this.fundtypeArrAll.filter((r) => r.itemType == row.applytype);
+      let list = this.feeItemTypes.filter((r) => r.itemType == row.applytype);
       row.itemArr = list[0].itemDetails;
-      this.$set(this.fundDetailArr, rowindex, row);
+      this.$set(this.fundDetails, rowindex, row);
       //this.loading = true;
       // getItemNames(row.applytype).then((res) => {
       //   this.loading = false;
       //   row.itemArr = res.data;
-      //   this.$set(this.fundDetailArr, rowindex, row);
+      //   this.$set(this.fundDetails, rowindex, row);
       // });
     },
 
@@ -1541,48 +1939,12 @@
       });
     },
 
-    SearchItem(val, scope) {
-      let result = [];
-      if (val != "") {
-        let tempItemArr = scope.row.itemArr;
-        for (let i = 0; i < tempItemArr.length; i++) {
-          let pym = tempItemArr[i].itempinyin;
-          if (pym != null && pym != undefined && pym != "") {
-            if (pym.indexOf(val) != -1) {
-              result.push(tempItemArr[i]);
-            }
-          }
-        }
-        scope.row.itemArr = result;
-      } else {
-        getItemNames(scope.row.applytype).then((res) => {
-          scope.row.itemArr = res.data;
-          //this.$set(this.fundDetailArr, rowindex, row);
-        });
-      }
-    },
+
 
     //鏂囦欢涓婁紶
     handleUploadError() { },
-    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 {
-        this.$modal.msgError(response.msg);
-      }
-    },
 
-    // 涓嬭浇鏂囦欢
+    /** 涓嬭浇鏂囦欢鎸夐挳鎿嶄綔 */
     downFile(item) {
       const url = process.env.VUE_APP_BASE_API + item.url
       var a = document.createElement('a');
@@ -1592,30 +1954,30 @@
       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);;
+      }
+    },
+
   },
 
-  //鐢熷懡鍛ㄦ湡 - 鍒涘缓瀹屾垚锛堝彲浠ヨ闂綋鍓峵his瀹炰緥锛�
-  created() {
-    this.getUnitList();
-    this.getList();
-    this.getBaseInfoList();
-    this.getlistUser();
-    this.getCurFundType();
-  },
-  //鐢熷懡鍛ㄦ湡 - 鎸傝浇瀹屾垚锛堝彲浠ヨ闂瓺OM鍏冪礌锛�
-  mounted() {
-    this.selectReporters();
-    this.getUsermsg();
-    this.getlistExternalperson();
-  },
-  beforeCreate() { }, //鐢熷懡鍛ㄦ湡 - 鍒涘缓涔嬪墠
-  beforeMount() { }, //鐢熷懡鍛ㄦ湡 - 鎸傝浇涔嬪墠
-  beforeUpdate() { }, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠
-  updated() { }, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪悗
-  beforeDestroy() { }, //鐢熷懡鍛ㄦ湡 - 閿�姣佷箣鍓�
-  destroyed() { }, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴�
-  activated() { }, //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂
 };
+
 </script>
 <style scoped>
 /* @import url(); 寮曞叆鍏叡css绫� */

--
Gitblit v1.9.3