From fb16e99d60035949b870d0bed7f38b452458000a Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期四, 15 十月 2026 15:10:00 +0800
Subject: [PATCH] 修改了专家费校验和附件名字校验

---
 src/views/project/fundcheck/expertFeeCheck/index.vue |   81 ++++++++++++++++++++++++----------------
 1 files changed, 49 insertions(+), 32 deletions(-)

diff --git a/src/views/project/fundcheck/expertFeeCheck/index.vue b/src/views/project/fundcheck/expertFeeCheck/index.vue
index d904327..8eb7723 100644
--- a/src/views/project/fundcheck/expertFeeCheck/index.vue
+++ b/src/views/project/fundcheck/expertFeeCheck/index.vue
@@ -26,15 +26,8 @@
         </el-col>
         <el-col :span="5">
           <el-form-item align="left" label="涓氬姟缁�" prop="deptnos">
-            <el-select
-              v-model="queryParams.deptnos"
-              placeholder="璇烽�夋嫨妗堜緥鐘舵��"
-            >
-              <el-option
-                v-for="item in deptList"
-                :label="item.deptName"
-                :value="item.deptId"
-              >
+            <el-select v-model="queryParams.deptnos" placeholder="璇烽�夋嫨妗堜緥鐘舵��">
+              <el-option v-for="item in deptList" :label="item.deptName" :value="item.deptId">
               </el-option>
             </el-select>
           </el-form-item>
@@ -55,7 +48,7 @@
         </el-col>
         <el-col :span="8">
           <el-form-item label="鐢宠鏃ユ湡" prop="createTime">
-            <el-date-picker format="yyyy-MM-dd" @change="selectapplication" value-format="yyyy-MM-dd"
+            <el-date-picker format="yyyy-MM-dd" @change="selectapplication" value-format="yyyy-MM-dd HH:mm:ss"
               v-model="createTime" type="daterange" range-separator="鑷�" start-placeholder="鐢宠寮�濮嬫棩鏈�"
               end-placeholder="鐢宠缁撴潫鏃ユ湡" @keyup.enter.native="flowconclusion">
             </el-date-picker>
@@ -104,40 +97,40 @@
             </template>
           </el-table-column> -->
           <el-table-column label="鎶ラ攢鍗曞彿" align="center" prop="bh" width="150px" />
-          <el-table-column label="鐢宠鏃ユ湡" width="120" align="center" prop="applyTime">
+          <el-table-column label="鐢宠鏃ユ湡" width="120px" align="center" prop="applyTime">
             <template slot-scope="scope">
               <span>{{ parseTime(scope.row.applyTime, "{y}-{m}-{d}") }}</span>
             </template>
           </el-table-column>
-          <el-table-column label="鐢宠閲戦" align="center" prop="pretaxcost" width="200px" />
-          <el-table-column label="缁忓姙浜�" align="center" prop="username" width="150px" />
+          <el-table-column label="鐢宠閲戦" align="center" prop="pretaxcost" width="120px" />
+          <el-table-column label="缁忓姙浜�" align="center" prop="username" width="90px" />
           <!-- <el-table-column label="宸ヤ綔鍗曚綅" align="center"  prop="unitname" width="230px" /> -->
           <!-- <el-table-column label="鑱旂郴鐢佃瘽" align="center"  prop="phone"  width="160"  /> -->
           <!-- <el-table-column label="绋庡悗閲戦" align="center" prop="taxedcost" width="120px" />
           <el-table-column label="鐢宠閲戦" align="center" prop="amountrequested" width="120px" />
           <el-table-column label="棰勬敮璐圭敤" align="center" prop="prepaidamount" width="120px" /> -->
-          <el-table-column label="鐢宠鏉愭枡鐘舵��" width="140" align="center" prop="checkstatus">
+          <el-table-column label="鏉愭枡棰勫鐘舵��" align="center" prop="checkstatus" width="140px">
             <template slot-scope="scope">
               <dict-tag :options="dict.type.sys_stage_type" :value="scope.row.checkstatus" />
             </template>
           </el-table-column>
-          <el-table-column label="瀹℃牳鐘舵��" align="center" prop="recordstatus" width="200">
+          <el-table-column label="瀹℃牳鐘舵��" align="center" prop="recordstatus" width="120px">
             <template slot-scope="scope">
               <dict-tag :options="dict.type.sys_recordstatus" :value="scope.row.recordstatus" />
             </template>
           </el-table-column>
-          <el-table-column label="涓◣璁$畻鏃ユ湡" width="120" align="center" prop="fundtaxtime">
+          <el-table-column label="涓◣璁$畻鏃ユ湡" width="120px" align="center" prop="fundtaxtime">
             <template slot-scope="scope">
               <span>{{ parseTime(scope.row.fundtaxtime, "{y}-{m}-{d}") }}</span>
             </template>
           </el-table-column>
-          <el-table-column label="鎵�灞炵粍鍒�" align="center" prop="deptmentname" width="200px" />
-          <el-table-column label="缁勯暱" align="center" prop="managername" width="150px" />
-          <el-table-column label="鎹愮尞鑰�" align="center" prop="donorname" width="120px" />
+          <el-table-column label="鎵�灞炵粍鍒�" align="center" prop="deptmentname" width="140px" />
+          <el-table-column label="缁勯暱" align="center" prop="managername" width="90px" />
+          <el-table-column label="鎹愮尞鑰�" align="center" prop="donorname" width="90px" />
           <el-table-column label="澶囨敞" align="center" prop="remark" />
           <!--<el-table-column label="鎹愮尞缂栧彿" align="center" prop="donorno" />
           <el-table-column label="璐㈠姟瀹℃牳" align="center" prop="financechecher" width="140" />-->
-          <el-table-column label="鎿嶄綔" fixed="right" align="center" class-name="small-padding fixed-width" width="260px">
+          <el-table-column label="鎿嶄綔" fixed="right" align="center" class-name="small-padding fixed-width" width="200px">
             <template slot-scope="scope">
               <el-button size="mini" type="text" icon="el-icon-edit" v-if="scope.row.checkFlag == 0"
                 @click="handleDetail(scope.row)">璇︽儏</el-button>
@@ -164,7 +157,7 @@
           <el-col :span="5">
             <el-form-item label="鐢宠鏃ユ湡" prop="createTime">
               <!-- <el-input v-model="form.donorno" placeholder="璇疯緭鍏ョ敵璇锋棩鏈�" /> -->
-              <el-date-picker clearable style="width: 100%" v-model="form.createTime" type="date"
+              <el-date-picker clearable style="width: 100%" v-model="form.createTime" type="date" format="yyyy-MM-dd"
                 value-format="yyyy-MM-dd HH:mm:ss" placeholder="鐢宠鏃ユ湡">
               </el-date-picker>
             </el-form-item>
@@ -404,7 +397,7 @@
         </el-row>
       </el-form>
       <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="dundcheck" v-if="dialogType == 'edit'">淇濆瓨</el-button>
+        <el-button type="primary" :loading="checkSubmitLoading" :disabled="checkSubmitLoading" @click="dundcheck" v-if="dialogType == 'edit'">淇濆瓨</el-button>
         <el-button @click="cancel">鍙栨秷</el-button>
       </div>
     </el-dialog>
@@ -428,7 +421,8 @@
   checkfund,
   listbypower,
   addFundSharedInfo,
-  TotalcalculationFn
+  TotalcalculationFn,
+  validateExpertFee
 } from "@/api/project/fund";
 import {
   onelistFunds,
@@ -501,6 +495,7 @@
   ],
   data() {
     return {
+      checkSubmitLoading: false,
       arrr2: [],
       arrr3: [],
       personlist: [],
@@ -572,11 +567,11 @@
       checkmaterials: [
         {
           value: 1,
-          label: "鏉愭枡寰呭鏍�"
+          label: "寰呭鏍�"
         },
         {
           value: 2,
-          label: "瀹℃煡閫氳繃绛夊緟閭瘎绾歌川鏉愭枡"
+          label: "瀹℃煡閫氳繃绛夊緟绾歌川鏉愭枡"
         },
         {
           value: 3,
@@ -694,9 +689,10 @@
     getUsermsg() {
       getUserProfile().then(response => {
         if (
-          response.data.userName === "053" ||
           response.data.userName === "002" ||
-          response.data.userName === "012" ||
+          response.data.userName === "047" ||
+          response.data.userName === "053" ||
+          response.data.userName === "056" ||
           response.data.userName === "admin"
         ) {
           this.show = 1;
@@ -729,6 +725,7 @@
       });
     },
     dundcheck() {
+      if (this.checkSubmitLoading) return;
       // this.$em
 
       let checkfundobj = {
@@ -744,18 +741,38 @@
         this.$modal.msgError("璇烽�夋嫨瀹℃牳缁撹!");
         return;
       }
+
+      // 瀹℃牳鈥滈�氳繃鈥濆墠锛氬厛鍋氫笓瀹跺姵鍔¤垂 9 鏉¤垂鐢ㄦ帶鍒舵牎楠岋紙涓庡悗绔嫤鎴悓鍙e緞锛�
+      if (checkfundobj.flowconclusion == 1) {
+        validateExpertFee({ id: this.form.id }).then(valid => {
+          const errors = (valid && valid.errors) || [];
+          const warnings = (valid && valid.warnings) || [];
+          if (warnings.length > 0) {
+            this.$modal.msgWarning(warnings.join("锛�"));
+          }
+          if (errors.length > 0) {
+            this.$modal.msgError("涓嶈兘瀹℃牳閫氳繃锛�" + errors.join("锛�"));
+            return;
+          }
+          this.doCheckfund(checkfundobj);
+        });
+        return;
+      }
+      // 涓嶉�氳繃锛氭棤闇�鏍¢獙闄愰
+      this.doCheckfund(checkfundobj);
+    },
+    doCheckfund(checkfundobj) {
+      this.checkSubmitLoading = true;
       checkfund(checkfundobj).then(res => {
+        this.checkSubmitLoading = false;
         if (res.code == 200) {
           this.reset();
           this.$modal.msgSuccess("瀹℃牳瀹屾垚!");
           this.getlistbypower();
           this.dialogOpen = false;
         } else {
-          if (res.msg) {
-            this.$modal.msgError("鎿嶄綔澶辫");
-          } else {
-            this.$modal.msgError(res.msg);
-          }
+          // 鍚庣杩斿洖鐨勫叿浣撳師鍥狅紙濡傝秴闄愰锛変紭鍏堝睍绀�
+          this.$modal.msgError(res.msg || "鎿嶄綔澶辫");
         }
       });
     },

--
Gitblit v1.9.3