From a2f16cbdc7b6ee0623d9071e1b7ab41285667eed Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期五, 01 九月 2023 18:42:52 +0800
Subject: [PATCH] 修改了个税计算和办公费用类型

---
 src/views/project/fund/applyDetail/index.vue |  979 ++++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 646 insertions(+), 333 deletions(-)

diff --git a/src/views/project/fund/applyDetail/index.vue b/src/views/project/fund/applyDetail/index.vue
index f640a34..99a162f 100644
--- a/src/views/project/fund/applyDetail/index.vue
+++ b/src/views/project/fund/applyDetail/index.vue
@@ -14,7 +14,8 @@
           </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-select v-model="form.username" placeholder="鐢宠浜�" clearable filterable allow-create style="width: 100%"
+                @change="getUserAccount">
                 <el-option v-for="dict in userlist" :key="dict.index" :label="dict.nickname"
                   :value="dict.nickname"></el-option>
               </el-select>
@@ -46,9 +47,12 @@
               }}</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-col :span="5">
+            <el-form-item label="閾惰鍚嶇О" prop="bankname">
+              <el-input v-model="form.bankname" placeholder="璇疯緭鍏ラ摱琛屽悕绉�" />
+            </el-form-item> </el-col><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">
@@ -70,20 +74,25 @@
               <el-input v-model="form.pretaxcost" placeholder="绋庡墠閲戦鍚堣" :disabled="true" />
             </el-form-item>
           </el-col>
+          <!--
           <el-col :span="5">
             <el-form-item label="搴旂即绋�" prop="taxcost" v-if="businessType == '1' || businessType == '2'">
               <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="10">
+            <el-form-item label="鐢宠璇存槑" prop="remark">
+              <el-input v-model="form.remark" placeholder="鐢宠璇存槑" />
+            </el-form-item>
+          </el-col>
           <el-col :span="5">
             <el-form-item label="鎹愮尞鑰�" prop="name">
-              <el-input :disabled="true" v-model="form.name" placeholder="璇疯緭鍏ユ崘鐚�呭鍚�" />
+              <el-input :disabled="true" v-model="form.donorname" placeholder="璇疯緭鍏ユ崘鐚�呭鍚�" />
             </el-form-item>
           </el-col>
           <!-- 
@@ -99,7 +108,7 @@
         <el-row style="margin-top: 5px; margin-bottom: 5px" />
         <el-row style="margin-bottom: 10px" v-if="businessType == '1'">
           <el-col :span="4">
-            <el-button @click.native.prevent="addAllItems" type="primary" size="small">
+            <el-button @click.native.prevent="importFeeItems" type="primary" size="small">
               瀵煎叆鏈嶅姟椤圭洰
             </el-button>
           </el-col>
@@ -111,36 +120,37 @@
                 <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="itemcode" align="center" label="椤圭洰缂栧彿" show-overflow-tooltip=""
+              v-if="form.applytype == '1'">
+            </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-select v-model="scope.row.applytype" placeholder="鏈嶅姟绫诲瀷" @change="verifyFeeItemType(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">
+            <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)"
+                <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="form.applytype == '1'">
-            </el-table-column>
-            <el-table-column prop="servicesscope" align="center" label="璐圭敤璇存槑" v-if="form.applytype == '1'" width="180">
+            <el-table-column prop="servicesscope" align="center" label="鏈嶅姟璇存槑" v-if="form.applytype == '1'" width="180">
               <template slot-scope="scope">
-                <el-select v-model="scope.row.servicesscope" placeholder="璐圭敤璇存槑" clearable allow-create filterable
-                  @change="selectedRemark(scope.row)">
+                <el-select v-model="scope.row.servicesscope" placeholder="鏈嶅姟璇存槑" clearable allow-create
+                  @change="verifyFeeRemark(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 prop="price" align="center" label="鍗曚环" width="120" v-if="0">
+            <el-table-column prop="price" align="center" label="鍗曚环" width="120" v-if="businessType == 4">
               <template slot-scope="scope">
                 <el-input v-model="scope.row.price" placeholder="鍗曚环" @blur="val => {
                   sumTotalFee(scope.row);
@@ -148,7 +158,7 @@
                   " />
               </template>
             </el-table-column>
-            <el-table-column prop="quantity" align="center" label="鏁伴噺" width="120" v-if="0">
+            <el-table-column prop="quantity" align="center" label="鏁伴噺" width="120" v-if="businessType == 4">
               <template slot-scope="scope">
                 <el-input v-model="scope.row.quantity" placeholder="鏁伴噺" @blur="val => {
                   sumTotalFee(scope.row);
@@ -156,8 +166,11 @@
                   " />
               </template>
             </el-table-column>
-            <el-table-column v-if="businessType == 3 || businessType == 4 || ismanager == true" prop="amount"
-              align="center" label="绋庡墠閲戦" width="120">
+            <el-table-column v-if="businessType == 2 ||
+              businessType == 3 ||
+              businessType == 4 ||
+              ismanager == true
+              " prop="amount" align="center" :label="amountLabel" width="120">
               <template slot-scope="scope">
                 <!--
                   <el-select v-model="scope.row.amount" placeholder="绋庡墠閲戦" clearable filterable allow-create
@@ -166,27 +179,28 @@
                     :value="dict.expense"></el-option>
                 </el-select>
               -->
-                <el-input v-model="scope.row.amount" placeholder="绋庡墠閲戦" />
+                <el-input v-model="scope.row.amount" placeholder="閲戦" @blur="val => { calculateTax(scope.row, 'A'); }" />
               </template>
             </el-table-column>
             <el-table-column prop="taxedamount" align="center" label="绋庡悗閲戦" width="120" v-if="(this.ismanager == true) &
               (form.applytype == '1' || form.applytype == '2')
               ">
               <template slot-scope="scope">
-                <el-input v-model="scope.row.taxedamount" placeholder="绋庡悗閲戦" />
+                <el-input v-model="scope.row.taxedamount" placeholder="绋庡悗閲戦"
+                  @blur="val => { calculateTax(scope.row, 'B'); }" />
               </template>
             </el-table-column>
-            <el-table-column prop="beneficiaryname" align="center" label="濮撳悕" width="100"
+            <el-table-column prop="beneficiaryname" align="center" label="濮撳悕" width="120"
               v-if="form.applytype == '1' || form.applytype == '2'">
               <template slot-scope="scope">
-                <el-button type="primary" plain @click="ShowDetailDialog(scope, 'name')">{{ scope.row.beneficiaryname
+                <el-button type="primary" plain @click="ShowDetailDialog(scope, 'expert')">{{ scope.row.beneficiaryname
                 }}</el-button>
                 <!-- <el-select
                   filterable
                   allow-create
                   ref="getReportname"
                   default-first-option
-                  @change="selectpersonmsg(scope.row)"
+                  @change="selectExpert(scope.row)"
                   v-model="scope.row.beneficiaryname"
                   placeholder="璇烽�夋嫨"
                 >
@@ -200,7 +214,7 @@
                                       </el-select> -->
               </template>
             </el-table-column>
-            <el-table-column prop="unitno" align="center" label="鍗曚綅鍚嶇О" v-if="form.applytype != '4'">
+            <el-table-column prop="unitno" align="center" label="鍗曚綅鍚嶇О" width="250">
               <template slot-scope="scope">
                 <el-button type="primary" plain @click="ShowDetailDialog(scope, 'unit')">{{ scope.row.unitname
                 }}</el-button>
@@ -242,23 +256,28 @@
                 <el-input v-model="scope.row.bankcardno" placeholder="閾惰甯愬彿" />
               </template>
             </el-table-column>
-            <el-table-column prop="remark" align="center" label="澶囨敞" v-if="form.applytype == '4'">
+            <el-table-column prop="remark" align="center" label="澶囨敞">
               <template slot-scope="scope">
                 <el-input v-model="scope.row.remark" placeholder="澶囨敞" />
               </template>
             </el-table-column>
             <el-table-column fixed="right" align="center" label="鎿嶄綔" width="180">
               <template slot-scope="scope">
-                <el-button type="text" size="mini" @click="addRow(scope.$index)"
-                  v-if="operationType == 'add' || operationType == 'update'">鏂板</el-button>
+                <el-button type="text" size="mini" @click="addRow(scope.$index)" v-if="operationType == 'add' ||
+                  operationType == 'update' ||
+                  operationType == 'check'
+                  ">鏂板</el-button>
                 <el-button @click.native.prevent="
                   deleteRows(scope.row, scope.$index, rbDetails)
-                  " type="text" size="small" v-if="operationType == 'add' || operationType == 'update'">
+                  " type="text" size="small" v-if="operationType == 'add' ||
+    operationType == 'update' ||
+    operationType == 'check'
+    ">
                   鍒犻櫎
                 </el-button>
                 <el-button @click.native.prevent="
                   Filepopup(scope.$index, rbDetails, scope.row)
-                  " type="text" size="small">绁ㄦ嵁</el-button>
+                  " type="text" size="small" v-if="businessType == 3 || businessType == 4">绁ㄦ嵁</el-button>
               </template>
             </el-table-column>
           </el-table>
@@ -312,18 +331,20 @@
                   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-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' || operationType == 'check'">
           <el-table :data="fundflowList" border>
-            <el-table-column label="瀹℃牳浜�" align="center" width="120" prop="checkusername" />
             <el-table-column label="瀹℃牳鏃ユ湡" align="center" width="160" prop="createTime" />
-            <el-table-column label="瀹℃牳缁撴灉" align="center" width="200" prop="flowconclusion"><template
-                slot-scope="scope"><span v-if="scope.row.flowconclusion == 1">閫氳繃</span><span
-                  v-if="scope.row.flowconclusion == 2">涓嶉�氳繃</span></template>
+            <el-table-column label="瀹℃牳浜�" align="center" width="120" prop="checkusername" />
+            <el-table-column label="瀹℃牳缁撴灉" align="center" width="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>
@@ -347,18 +368,20 @@
         </el-row>
       </el-form>
       <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="submitForm" v-if="operationType == 'add' || operationType == 'update'">淇�
-          瀛�</el-button>
-        <el-button type="primary" @click="checksubmit" v-if="operationType == 'check'">淇� 瀛�</el-button>
-        <el-button @click="cancel" v-if="operationType == 'detail'">閫� 鍑�</el-button>
+        <el-button type="primary" @click="submitForm" v-if="operationType == 'add' ||
+          operationType == 'update' ||
+          ismanager == true
+          ">鎻愪氦淇濆瓨</el-button>
+        <el-button type="primary" @click="checksubmit" v-if="operationType == 'check'">鎻愪氦瀹℃牳</el-button>
+        <el-button @click="cancel">鍏� 闂�</el-button>
       </div>
     </div>
 
-    <el-dialog :visible.sync="showDetailInfoDialog" :close-on-click-modal="false" :title="'鍗曚綅/涓撳淇℃伅閫夋嫨'" width="500px"
+    <el-dialog :visible.sync="showSelectionDialog" :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="showDetailInfoType == 'name'">
+          <el-col :span="24" v-if="selectionType == 'expert'">
             <el-form-item label="璇烽�夋嫨涓撳淇℃伅锛�" prop="expertfrom">
               <el-radio-group v-model="expertfrom" style="margin-bottom: 0">
                 <el-radio label="1">涓撳搴�</el-radio>
@@ -366,17 +389,17 @@
               </el-radio-group>
             </el-form-item>
           </el-col>
-          <el-col :span="24" v-if="showDetailInfoType == 'name' && expertfrom == '1'">
+          <el-col :span="24" v-if="selectionType == 'expert' && 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 v-for="item in expertlist" :key="item.expertNo" :label="item.exportName"
+                  :value="item.exportName">
                 </el-option>
               </el-select>
             </el-form-item>
           </el-col>
-          <el-col :span="24" v-if="showDetailInfoType == 'unit'">
+          <el-col :span="24" v-if="selectionType == 'unit'">
             <el-form-item label="鍗曚綅鍚嶇О" prop="unitno" label-width="120px" v-if="businessType == 1 || businessType == 2">
               <el-select v-model="funddetailForm.unitno" placeholder="鍗曚綅鍚嶇О" clearable filterable allow-create
                 style="width: 100%">
@@ -450,7 +473,7 @@
         </el-row>
       </el-form>
       <span slot="footer" class="dialog-footer">
-        <el-button @click="showDetailInfoDialog = false">鍙� 娑�</el-button>
+        <el-button @click="showSelectionDialog = false">鍙� 娑�</el-button>
         <el-button type="primary" @click="ConfirmDetailDialog()">纭� 瀹�</el-button>
       </span>
     </el-dialog>
@@ -463,7 +486,7 @@
                 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-button :disabled="operationType == 'detail'" size="small" type="primary">涓婁紶绁ㄦ嵁</el-button>
             </el-upload>
           </div>
           <!-- <div
@@ -477,10 +500,23 @@
         </div>
 
         <div v-if="this.previewpdf" class="pdfimgmin">
-          <img :src="pdfimg" />
+          <!-- <img :src="pdfimg" /> -->
+          <el-image style="width: 95%; height: 90%" :src="pdfimg" :preview-src-list="pdfimgsrcList">
+          </el-image>
         </div>
         <div v-else class="pdfimgmins">{{ hintitle }}</div>
       </div>
+    </el-dialog>
+    <el-dialog title="鎻愮ず" :visible.sync="Savereminder" width="30%">
+      <el-alert :title="'鎮ㄥ凡娣诲姞' +
+        totalquantity +
+        '鏉℃暟鎹紝涓洪槻姝㈡暟鎹涪澶辨槸鍚︽彁浜や繚瀛樺啀缁х画娣诲姞銆�'
+        " type="warning">
+      </el-alert>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="unsave">鍙� 娑�</el-button>
+        <el-button type="primary" @click="Savenow">纭� 瀹�</el-button>
+      </span>
     </el-dialog>
   </div>
 </template>
@@ -619,6 +655,8 @@
       unitList: [],
       //璐圭敤鎶ラ攢鏈烘瀯鍒楄〃
       feeUnitList: [],
+      // 缃戠粶璇锋眰澶�
+      Networkheader: null,
 
       itemlist: [],
 
@@ -627,11 +665,9 @@
       //涓撳璐归�夋嫨锛�1鏄笓瀹跺簱锛�2鏄柊澧�
       expertfrom: "1",
 
-      //鎹愮尞妗堜緥鍒楄〃鏁版嵁
-      donatebaseinfoList: [],
+      //鎹愮尞妗堜緥鍒楄〃
+      donateList: [],
 
-      // 鎹愮尞浜洪亾鎱伴棶閲戣〃鏍兼暟鎹�
-      donateconsolationfundList: [],
       //璐圭敤鏄庣粏鍒楄〃
       rbDetails: [],
       formData: {},
@@ -640,17 +676,22 @@
       totalAfterTaxAmount: 0.0,
       totalAmount: 0.0,
 
-      //琛岃褰曠殑璐圭敤绫诲瀷鏁扮粍
-      rowfeeItemTypes: [],
       //璐圭敤绫诲瀷鏁扮粍
       feeItemTypes: [],
+
+      //琛岃褰曠殑璐圭敤绫诲瀷鏁扮粍
+      rowfeeItemTypes: [],
+
       //璐圭敤璇存槑
       rowfeeblocks: [],
 
       fundflowList: [],
 
-      showDetailInfoDialog: false,
-      showDetailInfoType: "",
+      //涓撳/鍗曚綅閫夋嫨锛歟xpert/unit
+      selectionType: "",
+      showSelectionDialog: false,
+      //绋庡墠閲戦鏍囬锛氫笓瀹惰垂-绋庡墠閲戦锛涘尰瀛︽垚鏈�佸姙鍏垂鐢�-閲戦
+      amountLabel: "绋庡墠閲戦",
 
       // 琛ㄥ崟鏍¢獙
       rules: {
@@ -711,7 +752,7 @@
       checkObj: {
         flowlevelone: null,
         flowconclusion: null,
-        fundid: null,
+        fundid: null
       },
 
       // 鏌ヨ鍙傛暟
@@ -767,40 +808,20 @@
       //绁ㄦ嵁鏂囦欢
       pdftitle: "",
       pdfimg: "",
+      pdfimgsrcList: [],
       pdfVisible: false,
       previewpdf: false,
       hintitle: "閫変腑宸︿晶宸蹭笂浼犳枃浠堕瑙堟煡鐪�",
-      atpresent: ""
+      atpresent: "",
+      Savereminder: false, //鎻愰啋淇濆瓨寮规
+      Reminderquantity: 0, //鎻愰啋鏁伴噺
+      totalquantity: 0 //鎬绘暟閲�
     };
   },
   //鐩戝惉灞炴�� 绫讳技浜巇ata姒傚康
   computed: {},
   //鐩戞帶data涓殑鏁版嵁鍙樺寲
   watch: {},
-  //鐢熷懡鍛ㄦ湡 - 鍒涘缓瀹屾垚锛堝彲浠ヨ闂綋鍓峵his瀹炰緥锛�
-
-  created() {
-    //鑾峰彇璺敱鍙傛暟
-    this.getroute();
-    this.getUserProfile();
-    this.getFeeUnitList();
-  },
-
-  //鐢熷懡鍛ㄦ湡 - 鎸傝浇瀹屾垚锛堝彲浠ヨ闂瓺OM鍏冪礌锛�
-  mounted() {
-    this.getUserList();
-    this.getBaseInfoList();
-    this.getExternalList();
-  },
-
-  beforeCreate() { }, //鐢熷懡鍛ㄦ湡 - 鍒涘缓涔嬪墠
-  beforeMount() { }, //鐢熷懡鍛ㄦ湡 - 鎸傝浇涔嬪墠
-  beforeUpdate() { }, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠
-  updated() { }, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪悗
-  beforeDestroy() { }, //鐢熷懡鍛ㄦ湡 - 閿�姣佷箣鍓�
-  destroyed() { }, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴�
-  activated() { }, //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂
-
   //鏂规硶闆嗗悎
   methods: {
     // 琛ㄥ崟閲嶇疆
@@ -852,33 +873,55 @@
       //娓呯┖闄勪欢
       this.fileList = [];
     },
+    // 鑾峰彇璇锋眰澶�
+    Getnetworkheader() {
+      console.log(window.location.href);
+      let string = window.location.href;
+      if (string.includes("9091")) {
+        const index = string.indexOf("9091");
+        this.Networkheader = string.slice(0, index + 4); // 鎴彇9091鍙婂叾鍓嶉儴瀛楃
+        console.log(this.Networkheader);
+      } else {
+        const index = string.indexOf("8032");
+        this.Networkheader = string.slice(0, index + 4); // 鎴彇8032鍙婂叾鍓嶉儴瀛楃
+        console.log(this.Networkheader);
+      }
+    },
     /** 閫氳繃鍙傛暟鑾峰彇涓氬姟绫诲瀷 */
     getroute() {
       //閫夋嫨涓氬姟绫诲瀷:1銆佹柊澧烇紱2銆佷慨鏀癸紱3銆佹煡鐪�
       this.curId = this.$route.query.id;
       this.businessType = this.$route.query.businessType;
       this.operationType = this.$route.query.operationType;
-      console.log(this.businessType, this.operationType);
 
       //鑾峰彇璐圭敤椤圭洰绫诲瀷
-      this.getFundType();
+      this.getFeeTypes();
 
       // if (!this.businessType && !this.operationType) {
       if (this.businessType == "1") {
-        this.curCase = this.$route.query.curCase;
         this.businessName = "涓撳鍔冲姟璐圭敵璇峰崟";
+        this.amountLabel = "绋庡墠閲戦";
+        this.getUnitList();
       } else if (this.businessType == "2") {
-        this.curCase = this.$route.query.curCase;
         this.businessName = "浼︾悊涓撳鍔冲姟璐圭敵璇峰崟";
+        this.amountLabel = "绋庡墠閲戦";
+        this.getUnitList();
       } else if (this.businessType == "3") {
-        if (this.operationType != "check") { this.curCase = this.$route.query.curCase; }
         this.businessName = "鍖诲鎴愭湰鎶ラ攢鍗�";
+        this.amountLabel = "閲戦";
       } else if (this.businessType == "4") {
-        this.businessName = "鏉傞」璐圭敤鎶ラ攢鍗�";
+        this.businessName = "鍔炲叕璐圭敤鎶ラ攢鍗�";
+        this.amountLabel = "閲戦";
+
+        // this.getBaseInfoList();
       }
 
       if (this.operationType == "add") {
         this.title = this.businessName + "鏂板缓";
+        if (this.operationType != "4") {
+          this.curCase = this.$route.query.curCase;
+          console.log("this.curCase", this.curCase);
+        }
         this.handleAdd();
       } else if (this.operationType == "update") {
         this.title = this.businessName + "淇敼";
@@ -902,14 +945,13 @@
       this.istrue += 2;
       this.reset();
 
-      /** businessType锛�1锛氫笓瀹惰垂锛�2锛氫鸡鐞嗕笓瀹惰垂锛�3锛氬尰瀛︽垚鏈紱4锛氭潅椤硅垂鐢�*/
+      /** businessType锛�1锛氫笓瀹惰垂锛�2锛氫鸡鐞嗕笓瀹惰垂锛�3锛氬尰瀛︽垚鏈紱4锛氬姙鍏垂鐢�*/
       this.form.applytype = this.businessType;
       if (
         this.businessType == "1" ||
         this.businessType == "2" ||
         this.businessType == "3"
       ) {
-        console.log("", this.curCase);
         this.form.infoid = this.curCase.id;
         this.form.donorname = this.curCase.name;
         this.form.donorno = this.curCase.donorno;
@@ -935,13 +977,10 @@
         //鏄庣粏澶勭悊
         getownFundDetail(this.curId).then(res => {
           this.rbDetails = res.data;
-          console.log(res);
-
-          console.log(this.curId, res.data);
           if (this.rbDetails.length > 0) {
             for (let m = 0; m < this.rbDetails.length; m++) {
               this.rbDetails[m].itemlist = [];
-              this.getitemlist(m, this.rbDetails[m]);
+              this.getFeeItems(m, this.rbDetails[m]);
 
               //鑾峰彇璐圭敤椤圭洰鐨勮缁嗕俊鎭�
               this.rbDetails[m].rowfeeblocks = [];
@@ -969,6 +1008,50 @@
         });
       });
     },
+
+    /** 鏌ョ湅鎸夐挳鎿嶄綔 */
+    handleDetail() {
+      this.isopen = 0;
+      this.reset();
+
+      getFund(this.curId).then(response => {
+        this.form = response.data;
+        console.log("response.data", response.data);
+        //闄勪欢澶勭悊
+        // this.fileList = this.form.annexbankcard ? this.form.annexbankcard.split(",").map(item => ({ url: item, name: item })) : []
+
+        //涓氬姟鏄庣粏
+        getownFundDetail(this.curId).then(res => {
+          this.rbDetails = res.data;
+          for (let m = 0; m < this.rbDetails.length; m++) {
+            this.rbDetails[m].itemlist = [];
+            this.getFeeItems(m, this.rbDetails[m]);
+
+            this.rbDetails[m].rowfeeblocks = [];
+            this.rbDetails[m].rowfeeblocks.push({
+              servicesscope: this.rbDetails[m].servicesscope,
+              expensedescribe: this.rbDetails[m].servicesscopename,
+              expense: this.rbDetails[m].expense,
+              remark: this.rbDetails[m].servicesscopename
+            });
+          }
+
+          if (this.rbDetails.length == 0) {
+            this.addRow(0);
+          }
+        });
+
+        //涓氬姟娴佺▼
+        let listFundflowparams = {
+          fundid: this.curId,
+          fundtype: 2
+        };
+        listFundflow(listFundflowparams).then(res => {
+          this.fundflowList = res.rows;
+        });
+      });
+    },
+
     /** 淇敼鎸夐挳鎿嶄綔 */
     handleCheck() {
       this.isopen = 0;
@@ -981,56 +1064,17 @@
 
         //涓氬姟鏄庣粏
         getownFundDetail(this.curId).then(res => {
-          console.log(res);
           this.rbDetails = res.data;
           for (let m = 0; m < this.rbDetails.length; m++) {
             this.rbDetails[m].itemlist = [];
-            this.getitemlist(m, this.rbDetails[m]);
+            this.getFeeItems(m, this.rbDetails[m]);
+
             this.rbDetails[m].rowfeeblocks = [];
             this.rbDetails[m].rowfeeblocks.push({
-              expense: this.rbDetails[m].expense,
+              servicesscope: this.rbDetails[m].servicesscope,
               expensedescribe: this.rbDetails[m].servicesscopename,
-              remark: this.rbDetails[m].servicesscope,
-              servicesscope: this.rbDetails[m].servicesscope
-            });
-          }
-        });
-
-        //涓氬姟娴佺▼        
-        let listFundflowparams = {
-          fundid: this.curId,
-          fundtype: 2
-        };
-        listFundflow(listFundflowparams).then(res => {
-          this.fundflowList = res.rows;
-        });
-      });
-
-    },
-
-    /** 鏌ョ湅鎸夐挳鎿嶄綔 */
-    handleDetail() {
-      this.isopen = 0;
-      this.reset();
-
-      getFund(this.curId).then(response => {
-        this.form = response.data;
-        //闄勪欢澶勭悊
-        // this.fileList = this.form.annexbankcard ? this.form.annexbankcard.split(",").map(item => ({ url: item, name: item })) : []
-
-        //涓氬姟鏄庣粏
-        getownFundDetail(this.curId).then(res => {
-          console.log(res);
-          this.rbDetails = res.data;
-          for (let m = 0; m < this.rbDetails.length; m++) {
-            this.rbDetails[m].itemlist = [];
-            this.getitemlist(m, this.rbDetails[m]);
-            this.rbDetails[m].rowfeeblocks = [];
-            this.rbDetails[m].rowfeeblocks.push({
               expense: this.rbDetails[m].expense,
-              expensedescribe: this.rbDetails[m].servicesscopename,
-              remark: this.rbDetails[m].servicesscope,
-              servicesscope: this.rbDetails[m].servicesscope
+              remark: this.rbDetails[m].servicesscopename
             });
           }
 
@@ -1039,7 +1083,7 @@
           }
         });
 
-        //涓氬姟娴佺▼        
+        //涓氬姟娴佺▼
         let listFundflowparams = {
           fundid: this.curId,
           fundtype: 2
@@ -1050,6 +1094,7 @@
       });
     },
 
+    /** 鍒犻櫎鎸夐挳鎿嶄綔 */
     handleDelete() {
       this.$modal
         .confirm("鏄惁纭鍒犻櫎璇ヨ褰曪紵")
@@ -1127,7 +1172,7 @@
               return;
             }
 
-            if (this.businessType == "1" || this.businessType == "2") {
+            if (this.businessType == "1") {
               if (tempDetail.servicesscope == null) {
                 this.$modal.msgWarning(
                   "鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
@@ -1137,7 +1182,10 @@
                 return;
               }
 
-              if (tempDetail.beneficiaryno == null) {
+              if (
+                tempDetail.beneficiaryno == null ||
+                tempDetail.beneficiaryno == "鐐瑰嚮閫夋嫨"
+              ) {
                 this.$modal.msgWarning(
                   "鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
                   (k + 1).toString() +
@@ -1146,6 +1194,7 @@
                 return;
               }
             }
+
             // //鍒ゆ柇鍗曚綅 unitSel
             // try {
             //   let unitIndex = this.unitList.findIndex(
@@ -1163,7 +1212,6 @@
 
           //闄勪欢澶勭悊
           let list = this.fileList;
-          console.log(list);
           // if (list.length > 0) {
           //   this.form.annexfiles = list.map(item => item.url).join(",");
           // }
@@ -1197,45 +1245,49 @@
               ].subjecttypename;
             }
             this.rbDetails[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.rbDetails[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.rbDetails[k] = tempDetail;
-           
-                  this.totalAfterTaxAmount += parseFloat(tempDetail.taxedamount);
-                  this.totalAmount += parseFloat(tempDetail.amount);
-                }
-              });
-            }
-            */
           }
+          //璁$畻褰撳墠琛屾姤閿�鍐呭璐圭敤鍚堣锛岀◣鍓嶉噾棰濓紙amount锛夈�佹墸绋庨噾棰濓紙taxamount锛夈�佺◣鍚庨噾棰濓紙taxedamount锛�
+          if (this.businessType == "2") {
+            for (let j = 0; j < this.rbDetails.length; j++) {
+              let tempDetail = this.rbDetails[j];
+              if (
+                isNaN(parseFloat(tempDetail.amount)) ||
+                parseFloat(tempDetail.amount) == 0
+              ) {
+                this.$modal.msgWarning(
+                  "鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
+                  (j + 1).toString() +
+                  "琛岀殑閲戦鏈緭鍏ワ紝璇峰厛杈撳叆閲戦鍚庡啀鎻愪氦淇濆瓨锛�"
+                );
+                return;
+              }
+            }
+          } else if (this.businessType == "3" || this.businessType == "4") {
+            for (let j = 0; j < this.rbDetails.length; j++) {
+              let tempDetail = this.rbDetails[j];
+              if (
+                isNaN(parseFloat(tempDetail.amount)) ||
+                parseFloat(tempDetail.amount) == 0
+              ) {
+                this.$modal.msgWarning(
+                  "鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
+                  (j + 1).toString() +
+                  "琛岀殑閲戦鏈緭鍏ワ紝璇峰厛杈撳叆閲戦鍚庡啀鎻愪氦淇濆瓨锛�"
+                );
+                return;
+              }
+              if (
+                isNaN(parseFloat(tempDetail.taxamount)) ||
+                parseFloat(tempDetail.taxamount) == 0
+              ) {
+                tempDetail.taxedamount = tempDetail.amount;
+              } else {
+                tempDetail.taxedamount =
+                  tempDetail.amount + tempDetail.taxamount;
+              }
+            }
+          }
+
           //璐圭敤鍚堣
           // this.form.pretaxcost = parseFloat(this.totalPreTaxAmount).toFixed(2);
           // this.form.taxedcost = parseFloat(this.totalAfterTaxAmount).toFixed(2);
@@ -1280,7 +1332,6 @@
 
           addorupdateFund(this.form).then(response => {
             if (response.code === 200) {
-              this.selectDonotor(this.curCase);
               this.$modal.msgSuccess("鐢宠鍗曚繚瀛樻垚鍔燂紒");
             } else {
               this.$modal.msgError("鐢宠鍗曚繚瀛樺け璐ワ細" + response.msg);
@@ -1288,9 +1339,9 @@
           });
 
           //鍏抽棴绐楀彛
-          // this.loading = false;
+          this.loading = false;
           // this.getfundList();
-          // this.selectDonotor(this.curCase);
+          this.$store.dispatch("tagsView/delView", this.$route);
           this.$router.go(-1);
         }
       });
@@ -1302,17 +1353,21 @@
         // fundid: this.checkObj.fundid,
         fundid: this.curId,
         flowconclusion: this.checkObj.flowlevelone,
-        flowcontent: this.checkObj.flowconclusion,
+        flowcontent: this.checkObj.flowconclusion
       };
-      checkfund(checkFundObj).then((res) => {
+      checkfund(checkFundObj).then(res => {
+        //鍏抽棴绐楀彛
         this.reset();
         this.$modal.msgSuccess("瀹℃牳瀹屾垚!");
+        this.$store.dispatch("tagsView/delView", this.$route);
+        this.$router.go(-1);
       });
     },
 
     // 鍙栨秷鎸夐挳
     cancel() {
       // this.reset();
+      this.$store.dispatch("tagsView/delView", this.$route);
       this.$router.go(-1);
     },
 
@@ -1322,31 +1377,33 @@
         this.userprofile = res.data;
         this.standardlevel = res.data.standardlevel;
         if (
-          this.userprofile.createBy == "admin" ||
-          this.userprofile.createBy == "001" ||
-          this.userprofile.createBy == "002"
+          this.userprofile.userName == "admin" ||
+          this.userprofile.userName == "001" ||
+          this.userprofile.userName == "047"
         ) {
           this.ismanager = true;
         } else {
           this.ismanager = false;
         }
-        // this.form.applytype = this.businessType;
-        // this.form.createTime = new Date();
-        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;
+        console.log(this.userprofile, this.ismanager);
+        if (this.operationType == "add") {
+          this.form.username = this.userprofile.nickName;
+          this.form.userno = this.userprofile.userName;
+          this.form.deptmentname = this.userprofile.dept.deptName;
+          this.form.deptmentno = this.userprofile.dept.deptId;
+          this.form.managername = this.userprofile.dept.leader;
+          this.form.phone = this.userprofile.phonenumber;
+          // this.form.applytype = this.businessType;
+          // this.form.createTime = new Date();
+
+          if (this.businessType == "4") {
+            this.getUserAccount();
+          }
+        }
       });
     },
 
     //鑾峰彇绯荤粺鐢ㄦ埛鍒楄〃
-    getUserList() {
-      listUser().then(res => {
-        this.userlist = res.data;
-      });
-    }, //鑾峰彇绯荤粺鐢ㄦ埛鍒楄〃
     getUserList() {
       listUser().then(res => {
         this.userlist = res.data;
@@ -1376,6 +1433,17 @@
               exportName: this.personlist[j].username
             });
           }
+        }
+      });
+    },
+
+    //鑾峰彇缁忓姙浜鸿处鍙蜂俊鎭�
+    getUserAccount() {
+      this.personlist.map(res => {
+        if (res.username == this.form.username) {
+          this.form.bankname = res.depositbank; //res.branchbankname銆乺es.depositbank;
+          this.form.bankcardno = res.bankcardno;
+          this.form.phone = res.telephone;
         }
       });
     },
@@ -1418,8 +1486,18 @@
       });
     },
 
+    //鑾峰彇鎹愮尞妗堜緥鍒楄〃
+    getBaseInfoList() {
+      this.loading = true;
+      listDonatebaseinfo(this.queryParams).then(response => {
+        this.donateList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+
     //鑾峰彇璐圭敤绫诲瀷
-    getFundType() {
+    getFeeTypes() {
       getFundTypeAll(this.businessType).then(res => {
         let dataList = res.data;
         this.feeItemTypes = dataList;
@@ -1435,7 +1513,7 @@
       });
     },
 
-    getitemlist(rowindex, row) {
+    getFeeItems(rowindex, row) {
       let list = this.feeItemTypes.filter(r => r.itemType == row.applytype);
       row.itemlist = list[0].itemDetails;
       this.$set(this.rbDetails, rowindex, row);
@@ -1447,28 +1525,23 @@
       // });
     },
 
-    //鑾峰彇鎹愮尞妗堜緥鍒楄〃
-    getBaseInfoList() {
-      this.loading = true;
-      listDonatebaseinfo(this.queryParams).then(response => {
-        this.donatebaseinfoList = response.rows;
-        this.total = response.total;
-        this.loading = false;
-      });
-    },
-    //鑾峰彇鐢宠鍗曚俊鎭�
-    getfundList() {
-      this.loading = true;
-      this.reset();
-      this.fundQueryParam.infoid = this.curCase.id;
-      listFund(this.fundQueryParam).then(response => {
-        this.loading = false;
-        this.donateconsolationfundList = response.rows;
-      });
+    //鍔犺浇鏈嶅姟椤圭洰
+    verifyFeeItemType(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();
+      // });
     },
 
     //鑾峰彇璐圭敤椤圭洰鐨勫娉ㄤ俊鎭�
-    selectedRemark(row) {
+    verifyFeeRemark(row) {
       row.rowfeeblocks.forEach((item, i) => {
         if (item.servicesscope === row.servicesscope) {
           row.servicesscopename = item.expensedescribe;
@@ -1476,10 +1549,17 @@
             row.amount = 0.0;
             row.taxamount = 0.0;
             row.taxedamount = item.expense;
+
+            //璁$畻绋庡墠閲戦
+            this.calculateTax(row, "B");
+
           } else {
             row.amount = item.expense;
             row.taxamount = 0.0;
             row.taxedamount = 0.0;
+
+            //璁$畻绋庡悗閲戦
+            this.calculateTax(row, "A");
           }
 
           this.form.serviceFunddetails = 0;
@@ -1490,7 +1570,7 @@
       });
     },
 
-    //鏍¢獙鏀惰垂椤圭洰鏄惁閲嶅
+    //鏍¢獙鏀惰垂椤圭洰
     verifyFeeItem(row) {
       row.itemlist.map(res => {
         if (row.itemid === res.id) {
@@ -1498,14 +1578,18 @@
           row.itemcode = res.itemCode;
         }
       });
-      var repeatNum = 0;
-      this.rbDetails.map(res => {
-        if (res.applytype === row.applytype && res.itemid == row.itemid) {
-          repeatNum++;
+
+      //鍒ゆ柇鏀惰垂椤圭洰鏄惁閲嶅
+      if (this.businessType == "1") {
+        var repeatNum = 0;
+        this.rbDetails.map(res => {
+          if (res.applytype === row.applytype && res.itemid == row.itemid) {
+            repeatNum++;
+          }
+        });
+        if (repeatNum > 1) {
+          this.$modal.msgWarning("鎮ㄥ凡缁忔彁浜よ繃璇ユ湇鍔¢」鐩簡");
         }
-      });
-      if (repeatNum > 1) {
-        this.$modal.msgWarning("鎮ㄥ凡缁忔彁浜よ繃璇ユ湇鍔¢」鐩簡");
       }
 
       //鑾峰彇璐圭敤椤圭洰鐨勮缁嗕俊鎭�
@@ -1527,6 +1611,27 @@
       });
     },
 
+    //绛涙煡鍑哄搴旂殑璐圭敤椤圭洰
+    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.rbDetails, rowindex, row);
+        });
+      }
+    },
     //鍚堣璐圭敤
     selectamount(row) {
       this.rowfeeblocks.forEach((item, i) => {
@@ -1536,14 +1641,58 @@
       });
     },
 
-    //鐐瑰嚮鎹愮尞妗堜緥鍒楄〃瑙﹀彂鏂规硶
-    selectDonotor(row, column, event) {
-      this.curCase = row;
-      this.getfundList();
+    selectExpert(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;
+        }
+      });
+    },
+
+
+    //璁$畻涓◣锛歵ype(A:宸茬煡绋庡墠閲戦锛岃绠楃◣鍚庨噾棰濓紱B锛氬凡鐭ョ◣鍚庨噾棰濓紝璁$畻绋庡墠閲戦)
+    calculateTax(row, type) {
+      //if (isNaN(parseFloat(tempDetail.taxedamount)))
+      //鑾峰彇鍙傛暟
+      this.taxParam.beneficiaryNo = row.beneficiaryno;
+      this.taxParam.startTime = this.form.createTime.substring(0, 10);
+
+      if (type == 'A') {
+        // 璁$畻涓◣銆佺◣鍚庨噾棰�
+        this.taxParam.money = row.amount.toString();
+        getTaxByBeneFiciaryNo(this.taxParam).then((res) => {
+          if (res.code == 200) {
+            row.taxamount = res.data;
+            row.taxedamount = row.amount - row.taxamount;
+            this.rbDetails[k] = row;
+          }
+        });
+      } else {
+        // 璁$畻绋庡墠銆佷釜绋庨噾棰�
+        this.taxParam.money = row.taxedamount.toString();
+        getTaxBeforeByAfterMoney(this.taxParam).then((res) => {
+          if (res.code == 200) {
+            row.taxamount = res.data.nowTax;
+            row.amount = parseFloat(res.data.nowTaxBeforeMoney);
+          }
+        });
+      }
     },
 
     //瀵煎叆鎵�鏈夐」鐩�
-    addAllItems() {
+    importFeeItems() {
       this.loading = true;
       this.rbDetails = this.rbDetails.filter(
         r => r.applytype != "" && r.applytype != null
@@ -1610,28 +1759,215 @@
       // });
     },
 
-    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;
+    unsave() {
+      this.Savereminder = false;
+      this.Reminderquantity = 0;
+    },
+    // 鎺ュ彈鎻愰啋绔嬪埢淇濆瓨
+    Savenow() {
+      this.Savereminder = false;
+      this.Reminderquantity = 0;
+      this.totalquantity = 0;
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          this.formData = this.form;
+          // let totalPreTaxAmount = 0.0;
+          // let totalAfterTaxAmount = 0.0;
+          // let totalAmount = 0.0;
 
-          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;
+          //淇濆瓨鍓嶆牎楠屾暟鎹�
+          for (let k = 0; k < this.rbDetails.length; k++) {
+            let tempDetail = this.rbDetails[k];
+            if (tempDetail.itemid == null) {
+              this.$modal.msgWarning(
+                "鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
+                (k + 1).toString() +
+                "琛岀殑鏈嶅姟椤圭洰鏈�夋嫨锛岃鍏堥�夋嫨鏈嶅姟椤圭洰鍚庡啀鎻愪氦淇濆瓨锛�"
+              );
+              return;
+            }
+
+            if (this.businessType == "1") {
+              if (tempDetail.servicesscope == null) {
+                this.$modal.msgWarning(
+                  "鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
+                  (k + 1).toString() +
+                  "琛岀殑璐圭敤璇存槑鏈�夋嫨,璇烽�夋嫨璐圭敤璇存槑鍚庡啀鎻愪氦淇濆瓨锛�"
+                );
+                return;
+              }
+
+              if (
+                tempDetail.beneficiaryno == null ||
+                tempDetail.beneficiaryno == "鐐瑰嚮閫夋嫨"
+              ) {
+                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.rbDetails.length; i++) {
+            let tempDetail = this.rbDetails[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.rbDetails[i] = tempDetail;
+            /*
+            //璁$畻涓◣
+            // 璁$畻绋庡悗閲戦
+            if (tempDetail.taxedamount == undefined || tempDetail.taxedamount == null || tempDetail.taxedamount == 0 || tempDetail.taxedamount == '') {
+              calculateTax(tempDetail,"A")
+            }
+           
+            // 璁$畻绋庡墠銆佺◣璐广�佺◣鍚庨噾棰�
+            if (tempDetail.amount == undefined || tempDetail.amount == null || tempDetail.amount == 0 || tempDetail.amount == '') {
+              calculateTax(tempDetail,"B")
+            }
+            */
+          }
+          //璁$畻褰撳墠琛屾姤閿�鍐呭璐圭敤鍚堣锛岀◣鍓嶉噾棰濓紙amount锛夈�佹墸绋庨噾棰濓紙taxamount锛夈�佺◣鍚庨噾棰濓紙taxedamount锛�
+          if (this.businessType == "2") {
+            for (let j = 0; j < this.rbDetails.length; j++) {
+              let tempDetail = this.rbDetails[j];
+              if (
+                isNaN(parseFloat(tempDetail.amount)) ||
+                parseFloat(tempDetail.amount) == 0
+              ) {
+                this.$modal.msgWarning(
+                  "鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
+                  (j + 1).toString() +
+                  "琛岀殑閲戦鏈緭鍏ワ紝璇峰厛杈撳叆閲戦鍚庡啀鎻愪氦淇濆瓨锛�"
+                );
+                return;
+              }
+            }
+          } else if (this.businessType == "3" || this.businessType == "4") {
+            for (let j = 0; j < this.rbDetails.length; j++) {
+              let tempDetail = this.rbDetails[j];
+              if (
+                isNaN(parseFloat(tempDetail.amount)) ||
+                parseFloat(tempDetail.amount) == 0
+              ) {
+                this.$modal.msgWarning(
+                  "鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
+                  (j + 1).toString() +
+                  "琛岀殑閲戦鏈緭鍏ワ紝璇峰厛杈撳叆閲戦鍚庡啀鎻愪氦淇濆瓨锛�"
+                );
+                return;
+              }
+              if (
+                isNaN(parseFloat(tempDetail.taxamount)) ||
+                parseFloat(tempDetail.taxamount) == 0
+              ) {
+                tempDetail.taxedamount = tempDetail.amount;
+              } else {
+                tempDetail.taxedamount =
+                  tempDetail.amount + tempDetail.taxamount;
+              }
+            }
+          }
+
+          //璐圭敤鍚堣
+          // 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.rbDetails.map(item => {
+            this.form.serviceFunddetails += item.amount;
           });
+          console.log(this.rbDetails);
+          this.form.serviceFunddetails = this.rbDetails;
+
+          if (this.form.id != null) {
+            // updateFund(this.form).then((response) => {
+            //   if (response.code === 200) {
+            //     this.loading = false;
+            //     for (let m = 0; m < this.rbDetails.length; m++) {
+            //       if (this.rbDetails[m].id > 0) {
+            //         updateFunddetail(this.rbDetails[m]).then((response2) => { if (response.code != 200) { this.$modal.msgError("涓撳鍔冲姟璐逛繚瀛樺け璐�1锛�" + response.msg); } });
+            //       } else {
+            //         addFunddetail(this.rbDetails[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.$modal.msgSuccess("鐢宠鍗曚繚瀛樻垚鍔燂紒");
+            } else {
+              this.$modal.msgError("鐢宠鍗曚繚瀛樺け璐ワ細" + response.msg);
+            }
+          });
+
+          //鍏抽棴绐楀彛
+          this.loading = false;
+          // this.getfundList();
         }
       });
     },
@@ -1682,70 +2018,19 @@
         rowfeeblocks: [],
         annexfiles: null
       };
+      if (this.Reminderquantity >= 5) {
+        this.Savereminder = true;
+        return;
+      }
       if (rowIndex == undefined || rowIndex == null || rowIndex < 0) {
         this.rbDetails.push(rowData);
       } else {
         this.rbDetails.splice(rowIndex + 1, 0, rowData);
       }
+      this.Reminderquantity++;
+      this.totalquantity++;
       for (let i = 0; i < this.rbDetails.length; i++) {
         this.rbDetails[i].orderno = i + 1;
-      }
-    },
-
-    //鍔犺浇鏈嶅姟椤圭洰
-    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();
-      // });
-    },
-
-    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;
-        }
-      });
-    },
-
-    //绛涙煡鍑哄搴旂殑璐圭敤椤圭洰
-    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.rbDetails, rowindex, row);
-        });
       }
     },
 
@@ -1794,9 +2079,6 @@
       }
     },
 
-    //璁$畻涓◣
-    calculateTax() { },
-
     //璁$畻鎬婚噾棰�
     sumTotalFee(row) {
       let allSum = 0;
@@ -1840,12 +2122,12 @@
     },
 
     mixExport(scope) {
-      this.dayin(scope.row.id);
-      //this.totaldayin(id);
+      this.print(scope.row.id);
+      //this.totalprint(id);
     },
 
     //涓撳璐瑰姵鍔℃墦鍗�
-    dayin(id) {
+    print(id) {
       getdownloadLW(id).then(res => {
         if (res.downloadUrl) {
           var fileUrl = res;
@@ -1867,7 +2149,7 @@
     },
 
     //姹囨�绘墦鍗�
-    totaldayin(e) {
+    totalprint(e) {
       // const id =this.row.id
       getdownloadBX(e).then(res => {
         if (res.downloadUrl) {
@@ -1934,19 +2216,23 @@
         this.form.filename = file.raw.name;
 
         this.$modal.msgSuccess(response.msg);
-        this.fileListto.push({ name: file.name, url: response.url });
+        this.fileListto.push({ name: file.name, url: response.fileName });
         this.rbDetails[this.atpresent].annexfilesList = this.fileListto;
       } else {
         console.log(response.msg);
       }
     },
 
-    // 鐐瑰嚮鏂囦欢
+    // 鐐瑰嚮绁ㄦ嵁
     Filepopup(index, rows, row) {
       this.atpresent = index;
       this.pdfVisible = true;
       if (this.rbDetails[index].annexfilesList) {
         this.fileListto = this.rbDetails[index].annexfilesList;
+        this.pdfimg = this.Networkheader + "/prod-api" + this.fileListto[0].url;
+        this.pdfimgsrcList = [];
+        this.pdfimgsrcList.push(this.pdfimg);
+        console.log(this.pdfimg);
       } else {
         this.fileListto = [];
         this.pdfimg = "";
@@ -1964,9 +2250,12 @@
       } else if (name[1] == "jpg" || "png") {
         this.previewpdf = true;
         if (item.url) {
-          this.pdfimg = item.url;
+          this.pdfimg = this.Networkheader + "/prod-api" + item.url;
+          this.pdfimgsrcList = [];
+          this.pdfimgsrcList.push(this.pdfimg);
+          console.log(this.pdfimg);
         } else {
-          this.pdfimg = item.response.url;
+          this.pdfimg = this.Networkheader + "/prod-api" + item.response.url;
         }
       } else {
         this.hintitle = "褰撳墠鏂囦欢鏆備笉鏀寔棰勮";
@@ -1977,10 +2266,12 @@
 
     //涓撳/鍖荤枟鏈烘瀯/璐圭敤鎶ラ攢鏈烘瀯閫夋嫨
     ShowDetailDialog(spoce, showType) {
+      this.selectionType = showType;
       this.expertfrom = "1";
+
       this.funddetailForm.index = spoce.$index;
-      this.funddetailForm.beneficiaryname = spoce.row.beneficiaryname;
       this.funddetailForm.beneficiaryno = spoce.row.beneficiaryno;
+      this.funddetailForm.beneficiaryname = spoce.row.beneficiaryname;
       this.funddetailForm.unitno = spoce.row.unitno;
       this.funddetailForm.unitname = spoce.row.unitname;
       this.funddetailForm.expertname = "";
@@ -1991,22 +2282,21 @@
       this.funddetailForm.expertdepositbank = "";
       this.funddetailForm.expertbankcardno = "";
 
-      this.showDetailInfoDialog = true;
-      this.showDetailInfoType = showType;
+      this.showSelectionDialog = true;
     },
 
     //涓撳/鍖荤枟鏈烘瀯/璐圭敤鎶ラ攢鏈烘瀯閫夋嫨
     ConfirmDetailDialog() {
       let tempIndex = this.funddetailForm.index;
-      let tempName = this.funddetailForm.beneficiaryname;
+      let tempExpertName = this.funddetailForm.beneficiaryname;
       let tempUnitname = this.funddetailForm.unitname;
       let singleDetail = this.rbDetails[tempIndex];
 
-      if (this.showDetailInfoType == "name") {
+      if (this.selectionType == "expert") {
         if (this.expertfrom == "1") {
           //浠庝笓瀹跺垪琛ㄨ幏鍙栦俊鎭�
           this.personlist.map(res => {
-            if (tempName == res.username) {
+            if (tempExpertName == res.username) {
               singleDetail.beneficiaryno = res.userno;
               singleDetail.beneficiaryname = res.username;
               singleDetail.bankcardno = res.bankcardno;
@@ -2082,7 +2372,7 @@
             }
           });
         }
-      } else if (this.showDetailInfoType == "unit") {
+      } else if (this.selectionType == "unit") {
         singleDetail.unitno = this.funddetailForm.unitno;
         if (this.businessType == 1 || this.businessType == 2) {
           try {
@@ -2119,9 +2409,32 @@
       }
 
       this.rbDetails[tempIndex] = singleDetail;
-      this.showDetailInfoDialog = false;
+      this.showSelectionDialog = false;
     }
-  }
+  },
+
+  //鐢熷懡鍛ㄦ湡 - 鍒涘缓瀹屾垚锛堝彲浠ヨ闂綋鍓峵his瀹炰緥锛�
+  created() {
+    //鑾峰彇璺敱鍙傛暟
+    this.Getnetworkheader();
+    this.getroute();
+    this.getExternalList();
+  },
+
+  //鐢熷懡鍛ㄦ湡 - 鎸傝浇瀹屾垚锛堝彲浠ヨ闂瓺OM鍏冪礌锛�
+  mounted() {
+    this.getUserList();
+    this.getUserProfile();
+    // this.getFeeUnitList();
+  },
+
+  beforeCreate() { }, //鐢熷懡鍛ㄦ湡 - 鍒涘缓涔嬪墠
+  beforeMount() { }, //鐢熷懡鍛ㄦ湡 - 鎸傝浇涔嬪墠
+  beforeUpdate() { }, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠
+  updated() { }, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪悗
+  beforeDestroy() { }, //鐢熷懡鍛ㄦ湡 - 閿�姣佷箣鍓�
+  destroyed() { }, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴�
+  activated() { } //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂
 };
 </script>
 

--
Gitblit v1.9.3