From 78cbeb0c6e136b8cf3116264c546cfd320813d4c Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期五, 08 十二月 2023 15:49:37 +0800
Subject: [PATCH] 11

---
 src/views/project/fund/applyDetail/index.vue |  627 ++++++++++++++++++++++++++++++--------------------------
 1 files changed, 332 insertions(+), 295 deletions(-)

diff --git a/src/views/project/fund/applyDetail/index.vue b/src/views/project/fund/applyDetail/index.vue
index f4235ad..361efb0 100644
--- a/src/views/project/fund/applyDetail/index.vue
+++ b/src/views/project/fund/applyDetail/index.vue
@@ -87,7 +87,7 @@
               />
             </el-form-item>
           </el-col>
-          <el-col :span="5">
+          <el-col :span="5" v-if="ismanager == true">
             <el-form-item label="鐢宠閲戦" prop="pretaxcost">
               <el-input
                 v-model="form.pretaxcost"
@@ -150,7 +150,8 @@
             <div
               style="margin-bottom: 15px;"
               v-if="
-                userprofile.nickName == '闄堟厱鍗�' && operationType == 'check'
+                userprofile.nickName == '闄堟厱鍗�' &&
+                  (businessType == '1' || businessType == '2')
               "
             >
               <el-button
@@ -322,6 +323,23 @@
               </template>
             </el-table-column>
             <el-table-column
+              prop="taxamount"
+              align="center"
+              label="鎵g◣閲戦"
+              width="120"
+              v-if="
+                (this.ismanager == true) &
+                  (form.applytype == '1' || form.applytype == '2')
+              "
+            >
+              <template slot-scope="scope">
+                <el-input
+                  v-model="scope.row.taxamount"
+                  placeholder="鎵g◣閲戦"
+                />
+              </template>
+            </el-table-column>
+            <el-table-column
               prop="taxedamount"
               align="center"
               label="绋庡悗閲戦"
@@ -346,7 +364,7 @@
             <el-table-column
               prop="beneficiaryname"
               align="center"
-              label="濮撳悕"
+              label="涓撳/鍗曚綅"
               width="120"
               v-if="form.applytype == '1' || form.applytype == '2'"
             >
@@ -366,7 +384,7 @@
             <el-table-column
               prop="unitno"
               align="center"
-              label="鍗曚綅鍚嶇О"
+              label="涓撳鎵�鍦ㄥ崟浣�"
               width="250"
               v-if="form.applytype != '4' && form.applytype != '3'"
             >
@@ -448,7 +466,16 @@
               v-if="form.applytype == '1' || form.applytype == '2'"
             >
               <template slot-scope="scope">
-                <el-input v-model="scope.row.idcardno" placeholder="韬唤璇佸彿" />
+                <el-form-item :error="scope.row.error" label-width="0">
+                  <el-input
+                    :disabled="
+                      userprofile.nickName != '闄堟厱鍗�' && businessType == 1
+                    "
+                    v-model.number="scope.row.idcardno"
+                    @input="tableParValueChange1(scope.row)"
+                    placeholder="韬唤璇佸彿"
+                  />
+                </el-form-item>
               </template>
             </el-table-column>
             <el-table-column
@@ -460,6 +487,9 @@
               <!-- v-if="form.applytype != '4'" -->
               <template slot-scope="scope">
                 <el-input
+                  :disabled="
+                    userprofile.nickName != '闄堟厱鍗�' && businessType == 1
+                  "
                   v-model="scope.row.depositbank"
                   placeholder="寮�鎴烽摱琛�"
                 />
@@ -473,13 +503,16 @@
             >
               <template slot-scope="scope">
                 <el-input
+                  :disabled="
+                    userprofile.nickName != '闄堟厱鍗�' && businessType == 1
+                  "
                   v-model="scope.row.bankcardno"
                   placeholder="閾惰甯愬彿"
                 />
               </template>
             </el-table-column>
             <el-table-column
-              prop="itemdescribe"
+              prop="itemdescrisca"
               align="center"
               width="330"
               label="椤圭洰璇存槑"
@@ -498,6 +531,12 @@
               align="center"
               width="330"
               label="澶囨敞"
+              v-if="
+                businessType == 2 ||
+                  businessType == 3 ||
+                  businessType == 4 ||
+                  ismanager == true
+              "
             >
               <template slot-scope="scope">
                 <el-input
@@ -546,7 +585,9 @@
                   "
                   type="text"
                   size="small"
-                  v-if="businessType == 3 || businessType == 4"
+                  v-if="
+                    businessType == 3 || businessType == 2 || businessType == 4
+                  "
                   >绁ㄦ嵁</el-button
                 >
               </template>
@@ -678,15 +719,11 @@
 
         <el-row
           style="margin-top: 25px; margin-bottom: 5px"
-          v-if="operationType == 'check'"
+          v-if="operationType == 'check' && userprofile.nickName == '闄堟厱鍗�'"
         >
           <el-col :span="7">
             <el-form-item label="鐢宠鏉愭枡鐘舵��" prop="infoid">
-              <el-radio-group
-                v-model="form.checkstatus"
-                align="left"
-                :disabled="userprofile.nickName != '闄堟厱鍗�'"
-              >
+              <el-radio-group v-model="form.checkstatus" align="left">
                 <el-radio :label="1">寰呯敵璇锋潗鏂�</el-radio>
                 <el-radio :label="2">鐢宠鏉愭枡閫氳繃绛夊緟鏉愭枡</el-radio>
                 <el-radio :label="3">宸叉敹鍒版姤閿�鏉愭枡</el-radio>
@@ -751,7 +788,7 @@
       style="text-align: center"
       v-loading="loading"
     >
-      <el-form ref="funddetailForm" :model="funddetailForm">
+      <el-form ref="funddetailForm" :rules="funddrules" :model="funddetailForm">
         <el-row v-if="businessType != 4 && businessType != 3">
           <el-col
             :span="24"
@@ -855,7 +892,7 @@
           </el-col>
           <el-col :span="24" v-if="experthear == 'unit'">
             <el-form-item
-              label="浜哄憳濮撳悕"
+              label="涓撳/鍗曚綅"
               prop="beneficiaryname"
               label-width="80px"
             >
@@ -1144,15 +1181,14 @@
                     label="鍚嶇О"
                   >
                     <template slot-scope="scope">
-                      <i style="color:#409EFF" class=" el-icon-s-order" />{{
-                        scope.row.name
-                      }}
+                      <i style="color:#409EFF" class=" el-icon-s-order" />
+                      <span>{{ scope.row.name }}</span>
                     </template>
                   </el-table-column>
 
                   <el-table-column
                     prop="name"
-                    width="180"
+                    width="190"
                     :show-overflow-tooltip="true"
                     label="鍔熻兘"
                   >
@@ -1169,6 +1205,13 @@
                         @click.native.prevent.stop="moveupdowfile(scope.row)"
                         >涓婄Щ</el-button
                       >
+                      <el-button
+                        type="success"
+                        size="mini"
+                        icon="el-icon-search"
+                        circle
+                        @click.native.prevent.stop="Downloadfile(scope.row)"
+                      ></el-button>
                     </template>
                   </el-table-column>
                 </el-table>
@@ -1241,15 +1284,14 @@
                     label="鍚嶇О"
                   >
                     <template slot-scope="scope">
-                      <i style="color:#409EFF" class=" el-icon-s-order" />{{
-                        scope.row.name
-                      }}
+                      <i style="color:#409EFF" class=" el-icon-s-order" />
+                      <span>{{ scope.row.name }}</span>
                     </template>
                   </el-table-column>
 
                   <el-table-column
                     prop="name"
-                    width="180"
+                    width="190"
                     :show-overflow-tooltip="true"
                     label="鍔熻兘"
                   >
@@ -1266,6 +1308,13 @@
                         @click.native.prevent.stop="moveupdowfile(scope.row)"
                         >涓婄Щ</el-button
                       >
+                      <el-button
+                        type="success"
+                        size="mini"
+                        icon="el-icon-search"
+                        circle
+                        @click.native.prevent.stop="Downloadfile(scope.row)"
+                      ></el-button>
                     </template>
                   </el-table-column>
                 </el-table>
@@ -1444,6 +1493,14 @@
   ],
 
   data() {
+    var validatePass = (rule, value, callback) => {
+      const regex = /^[1-9]\d{5}(19|20)\d{2}(0[1-9]|1[012])(0[1-9]|[12]\d|3[01])\d{3}([0-9]|X)$/;
+      if (regex.test(value)) {
+        callback();
+      } else {
+        callback(new Error("韬唤璇佸彿鐮佹牸寮忛敊璇�"));
+      }
+    };
     //杩欓噷瀛樻斁鏁版嵁
     return {
       // 閬僵灞�
@@ -1555,6 +1612,18 @@
         ],
         deptmentname: [
           { required: true, message: "璇疯緭鍏ユ墍灞炰笟鍔$粍", trigger: "blur" }
+        ]
+      },
+      funddrules: {
+        // expertidcardno: [{ validator: validatePass, trigger: "blur" }],
+        expertdepositbank: [
+          { required: true, message: "璇疯緭鍏ュ紑鎴烽摱琛�", trigger: "change" }
+        ],
+        expertbankcardno: [
+          { required: true, message: "璇疯緭鍏ラ摱琛屽崱鍙�", trigger: "change" }
+        ],
+        expertunitno: [
+          { required: true, message: "璇烽�夋嫨鍗曚綅鍚嶇О", trigger: "change" }
         ]
       },
 
@@ -2094,6 +2163,8 @@
               );
               return;
             }
+
+            /*
             if (
               tempDetail.idcardno == null &&
               this.businessType != "3" &&
@@ -2107,6 +2178,7 @@
               );
               return;
             }
+            */
 
             if (this.businessType == "1") {
               if (tempDetail.servicesscope == null) {
@@ -2127,26 +2199,7 @@
                 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 (list.length > 0) {
-          //   this.form.annexfiles = list.map(item => item.url).join(",");
-          // }
 
           //澶勭悊鏄庣粏
           for (let i = 0; i < this.rbDetails.length; i++) {
@@ -2267,28 +2320,37 @@
             JSON.stringify(this.rbDetails)
           );
           sessionStorage.setItem("apiform", JSON.stringify(this.form));
-          addorupdateFund(this.form).then(response => {
-            console.log(this.form);
-            console.log(response, "淇濆瓨杩斿弬");
-            if (response.code === 200) {
-              if (this.userprofile.nickName != "闄堟厱鍗�") {
-                this.$modal.msgSuccess("鐢宠鍗曚繚瀛樻垚鍔燂紒");
-              }
-              this.$store.dispatch("tagsView/delView", this.$route);
-              this.$router.push({
-                path: "/finance/applyDetail/",
-                query: {
-                  id: response.data,
-                  businessType: "2",
-                  operationType: "update",
-                  curCase: this.curCase
+          addorupdateFund(this.form)
+            .then(response => {
+              console.log(this.form);
+              console.log(response, "淇濆瓨杩斿弬");
+              if (response.code === 200) {
+                if (this.form.id) {
+                  this.$modal.msgSuccess("鐢宠鍗曚慨鏀规垚鍔燂紒");
+                  this.$router.go(-1);
+                } else {
+                  this.$modal.msgSuccess("鐢宠鍗曚繚瀛樻垚鍔燂紒");
+                  this.$store.dispatch("tagsView/delView", this.$route);
+                  this.$router.push({
+                    path: "/finance/applyDetail/",
+                    query: {
+                      id: response.data,
+                      businessType: "2",
+                      operationType: "update",
+                      curCase: this.curCase
+                    }
+                  });
                 }
-              });
-              this.Routinglevel++;
-            } else {
-              this.$modal.msgError("鐢宠鍗曚繚瀛樺け璐ワ細" + response.msg);
-            }
-          });
+                this.form.id = response.data;
+                this.curId = response.data;
+                this.handleUpdate();
+              } else {
+                this.$modal.msgError("鐢宠鍗曚繚瀛樺け璐ワ細" + response.msg);
+              }
+            })
+            .catch(res => {
+              this.$modal.msgError("鐢宠鍗曚繚瀛樺け璐ワ細" + res);
+            });
           //鍏抽棴绐楀彛
           this.loading = false;
           // this.getfundList();
@@ -2297,6 +2359,19 @@
     }, 500),
 
     //瀹℃壒鎻愪氦
+    // checksubmit() {
+    //   console.log(this.checkObj.flowlevelone);
+    //   if (
+    //     this.form.checkstatus != 3 &&
+    //     this.userprofile.nickName == "闄堟厱鍗�" &&
+    //     this.checkObj.flowlevelone == 1
+    //   ) {
+    //     this.$modal.msgError("璇烽�夌‘璁ゆ潗鏂欑姸鎬佸凡鏀跺埌锛�");
+    //     return;
+    //   }
+    //   this.Savenow();
+    //   console.log("淇濆瓨骞跺鎵�");
+    // },
     checksubmit() {
       console.log(this.checkObj.flowlevelone);
       if (
@@ -2304,33 +2379,26 @@
         this.userprofile.nickName == "闄堟厱鍗�" &&
         this.checkObj.flowlevelone == 1
       ) {
-        this.$modal.msgError("璇烽�夌‘璁ゆ潗鏂欑姸鎬佸凡鏀跺埌锛�");
+        this.$modal.msgError("璇风‘璁ゆ姤閿�鐨勭焊璐ㄦ潗鏂欏凡缁忔敹鍒帮紒");
+        return;
+      } else if (
+        (this.form.applytype == "1" || this.form.applytype == "2") &&
+        this.form.fundtaxtime == null
+      ) {
+        this.$modal.msgError(
+          "鎻愪氦涓撳璐圭敤鐢宠鍗曘�佷鸡鐞嗕笓瀹剁敵璇疯垂鐢ㄧ敵璇峰崟瀹℃牳锛岄渶瑕佸厛瀹屾垚涓◣璁$畻锛�"
+        );
         return;
       }
-      let checkFundObj = {
-        // fundid: this.checkObj.fundid,
-        fundid: this.curId,
-        flowconclusion: this.checkObj.flowlevelone,
-        flowcontent: this.checkObj.flowconclusion
-      };
-      checkfund(checkFundObj).then(res => {
-        //鍏抽棴绐楀彛
-        this.reset();
-        this.$modal.msgSuccess("瀹℃牳瀹屾垚!");
-        if (this.userprofile.nickName == "闄堟厱鍗�") {
-          this.submitForm();
-        }
-        this.$store.dispatch("tagsView/delView", this.$route);
-        this.$router.go(-1);
-      });
+
+      this.Savenow();
+      console.log("淇濆瓨骞跺鎵�");
     },
 
     // 鍙栨秷鎸夐挳
     cancel() {
-      // this.reset();
-      console.log(-this.Routinglevel);
       this.$store.dispatch("tagsView/delView", this.$route);
-      this.$router.go(-this.Routinglevel);
+      this.$router.go(-1);
     },
 
     //鑾峰彇褰撳墠鐢ㄦ埛淇℃伅
@@ -2747,20 +2815,6 @@
                 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;
-            // }
           }
 
           //澶勭悊鏄庣粏
@@ -2792,44 +2846,6 @@
               ].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") {
@@ -2874,11 +2890,6 @@
             }
           }
 
-          //璐圭敤鍚堣
-          // 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;
@@ -2888,36 +2899,28 @@
           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("鐢宠鍗曚繚瀛樻垚鍔燂紒");
+              // 闈炴彁閱掔姸鎬佷笅鎵ц瀹℃壒瑙e喅寮傛璋冪敤寤惰繜闂
+              if (!this.Savereminder) {
+                let checkFundObj = {
+                  // fundid: this.checkObj.fundid,
+                  fundid: this.curId,
+                  flowconclusion: this.checkObj.flowlevelone,
+                  flowcontent: this.checkObj.flowconclusion
+                };
+                checkfund(checkFundObj).then(res => {
+                  //鍏抽棴绐楀彛
+                  this.$modal.msgSuccess("瀹℃牳瀹屾垚!");
+                  this.$store.dispatch("tagsView/delView", this.$route);
+                  this.$router.go(-1);
+                });
+              }
               this.Getnetworkheader();
               this.getroute();
               this.getExternalList();
@@ -2956,12 +2959,23 @@
             JSON.stringify(this.rbDetails)
           );
           sessionStorage.setItem("apiform", JSON.stringify(this.form));
-          this.$router.go(0);
-        } else {
-          // this.$message({
-          //   type: "error",
-          //   message: "鐢宠澶辫触"
+          // this.$router.go(0);
+          // this.$router.push({
+          //   path: "/finance/applyDetail/",
+          //   query: {
+          //     id: this.curId,
+          //     businessType: this.businessType,
+          //     operationType: this.operationType,
+          //     curCase: this.curCase
+          //   }
           // });
+          this.$modal.msgSuccess("璁$畻鎴愬姛");
+          this.handleCheck();
+        } else {
+          this.$message({
+            type: "error",
+            message: "璁$畻閿欒"
+          });
         }
       });
     },
@@ -3249,6 +3263,8 @@
     uploadSccess(response, file, fileList) {
       this.rbDetails;
       //鑾峰彇绁ㄦ嵁淇℃伅浣嶇疆
+      console.log(response);
+      console.log(file);
       if (this.activeName == 1) {
         if (response.code == 200) {
           // this.form.filename = file.raw.name;
@@ -3436,6 +3452,10 @@
         this.invoicefileListto.splice(index - 1, 0, item); // 灏唅tem鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣�
       }
     },
+    Downloadfile(row) {
+      console.log(row);
+      window.location.href = this.Networkheader + "/prod-api" + row.url;
+    },
     //涓撳/鍖荤枟鏈烘瀯/璐圭敤鎶ラ攢鏈烘瀯閫夋嫨
     ShowDetailDialog(spoce, showType) {
       this.spocewl = spoce;
@@ -3443,10 +3463,7 @@
       if (this.businessType == 4 || this.businessType == 3 || !showType) {
         this.selectionType = this.experthear;
       }
-      // if (!showType) {
-      //   this.selectionType = this.experthear;
 
-      // }
       this.expertfrom = "1";
       console.log(spoce);
       this.funddetailForm.index = spoce.$index;
@@ -3467,145 +3484,161 @@
 
     //涓撳/鍖荤枟鏈烘瀯/璐圭敤鎶ラ攢鏈烘瀯閫夋嫨
     ConfirmDetailDialog() {
-      // if (this.businessType == 4) {
-      //   if (this.experthear == "expert") {
-      //     this.funddetailForm.beneficiaryname = this.unitforname;
-      //   } else {
-      //     this.funddetailForm.beneficiaryname = this.Personnelforname;
-      //   }
-      // }
-      let tempIndex = this.funddetailForm.index;
-      let tempExpertName = this.funddetailForm.beneficiaryname;
-      let tempUnitname = this.funddetailForm.unitname;
-      let singleDetail = this.rbDetails[tempIndex];
+      this.$refs["funddetailForm"].validate(valid => {
+        let tempIndex = this.funddetailForm.index;
+        let tempExpertName = this.funddetailForm.beneficiaryname;
+        let tempUnitname = this.funddetailForm.unitname;
+        let singleDetail = this.rbDetails[tempIndex];
 
-      if (
-        this.selectionType == "expert" ||
-        this.businessType == 4 ||
-        this.businessType == 3
-      ) {
-        if (this.expertfrom == "1" || this.experthear == "unit") {
-          //浠庝笓瀹跺垪琛ㄨ幏鍙栦俊鎭�
-          this.personlist.map(res => {
-            if (tempExpertName == 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 {
-          //淇濆瓨鏂板涓撳
-          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;
+        if (
+          this.selectionType == "expert" ||
+          this.businessType == 4 ||
+          this.businessType == 3
+        ) {
+          if (this.expertfrom == "1" || this.experthear == "unit") {
+            //浠庝笓瀹跺垪琛ㄨ幏鍙栦俊鎭�
+            this.personlist.map(res => {
+              if (tempExpertName == 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 {
+            //淇濆瓨鏂板涓撳
+            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.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;
             }
-          } catch {
-            this.expertform.unitname = this.expertform.unitno;
-          }
-          this.expertform.title = this.funddetailForm.experttitle;
-          this.expertform.personnelunitno = null;
+            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";
+            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("鏂板涓撳淇℃伅鎴愬姛锛�");
+            addExternalperson(this.expertform).then(response => {
+              if (response.code == 200) {
+                this.$modal.msgSuccess("鏂板涓撳淇℃伅鎴愬姛锛�");
 
-              listExternalperson().then(res => {
-                this.personlist = res.rows;
-                //浠庝笓瀹跺垪琛ㄨ幏鍙栦俊鎭�
-                this.personlist.map(res => {
-                  if (res.username == this.funddetailForm.expertname) {
-                    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);
-                  }
+                listExternalperson().then(res => {
+                  this.personlist = res.rows;
+                  //浠庝笓瀹跺垪琛ㄨ幏鍙栦俊鎭�
+                  this.personlist.map(res => {
+                    if (res.username == this.funddetailForm.expertname) {
+                      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.selectionType == "unit") {
-        singleDetail.unitno = this.funddetailForm.unitno;
-        if (this.businessType == 1 || this.businessType == 2) {
-          try {
-            let unitIndex = this.unitList.findIndex(
-              item => singleDetail.unitno == item.organizationid
-            );
-            if (unitIndex > -1) {
-              singleDetail.unitname = this.unitList[unitIndex].organizationname;
-            } else {
+              }
+            });
+          }
+        } else if (this.selectionType == "unit") {
+          singleDetail.unitno = this.funddetailForm.unitno;
+          if (this.businessType == 1 || this.businessType == 2) {
+            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;
             }
-          } catch {
-            singleDetail.unitname = singleDetail.unitno;
-          }
-        } else if (this.businessType == 3 || this.businessType == 4) {
-          try {
-            let unitIndex = this.feeUnitList.findIndex(
-              item => singleDetail.unitno == item.reportNo
-            );
-            if (unitIndex > -1) {
-              singleDetail.unitname = this.feeUnitList[unitIndex].reportName;
-              singleDetail.depositbank = this.feeUnitList[
-                unitIndex
-              ].depositbank;
-              singleDetail.bankcardno = this.feeUnitList[unitIndex].bankcardno;
-            } else {
+          } else if (this.businessType == 3 || this.businessType == 4) {
+            try {
+              let unitIndex = this.feeUnitList.findIndex(
+                item => singleDetail.unitno == item.reportNo
+              );
+              if (unitIndex > -1) {
+                singleDetail.unitname = this.feeUnitList[unitIndex].reportName;
+                singleDetail.depositbank = this.feeUnitList[
+                  unitIndex
+                ].depositbank;
+                singleDetail.bankcardno = this.feeUnitList[
+                  unitIndex
+                ].bankcardno;
+              } else {
+                singleDetail.unitname = singleDetail.unitno;
+              }
+            } catch {
               singleDetail.unitname = singleDetail.unitno;
             }
-          } catch {
-            singleDetail.unitname = singleDetail.unitno;
           }
         }
-      }
 
-      // if (this.experthear == "unit") {
-      //   singleDetail.unitname = "";
-      // }
-      if (this.businessType == 4 || this.businessType == 3) {
-        singleDetail.beneficiaryname = this.funddetailForm.beneficiaryname;
+        // if (this.experthear == "unit") {
+        //   singleDetail.unitname = "";
+        // }
+        if (this.businessType == 4 || this.businessType == 3) {
+          singleDetail.beneficiaryname = this.funddetailForm.beneficiaryname;
+        }
+        this.rbDetails[tempIndex] = singleDetail;
+        this.showSelectionDialog = false;
+      });
+    },
+    tableParValueChange(row, tto) {
+      const regex = /^[1-9]\d{5}(19|20)\d{2}(0[1-9]|1[012])(0[1-9]|[12]\d|3[01])\d{3}([0-9]|X)$/;
+      if (tto) {
+        if (regex.test(funddetailForm.expertidcardno)) {
+          row.error = "";
+        } else {
+          row.error = "韬唤璇佸彿鐮佹牸寮忛敊璇�";
+        }
+        return;
       }
-      this.rbDetails[tempIndex] = singleDetail;
-      this.showSelectionDialog = false;
+      console.log(11);
+      if (regex.test(row.idcardno)) {
+        row.error = "";
+      } else {
+        row.error = "韬唤璇佸彿鐮佹牸寮忛敊璇�";
+      }
     }
   },
 
@@ -3628,7 +3661,11 @@
 
     // this.getFeeUnitList();
   },
-
+  beforeRouteLeave(to, from, next) {
+    // 鎵ц閿�姣佹搷浣�
+    this.$destroy();
+    next();
+  },
   beforeCreate() {}, //鐢熷懡鍛ㄦ湡 - 鍒涘缓涔嬪墠
   beforeMount() {}, //鐢熷懡鍛ㄦ湡 - 鎸傝浇涔嬪墠
   beforeUpdate() {}, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠

--
Gitblit v1.9.3