From 26c14f0c6defe02f2b6f15b498bcd454461ee7a8 Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期五, 05 一月 2024 14:01:43 +0800
Subject: [PATCH] yxh

---
 src/views/project/fund/performancedetails/index.vue |  695 +++++++++++++++++++++++----------------------------------
 1 files changed, 276 insertions(+), 419 deletions(-)

diff --git a/src/views/project/fund/performancedetails/index.vue b/src/views/project/fund/performancedetails/index.vue
index a1c7577..3345a27 100644
--- a/src/views/project/fund/performancedetails/index.vue
+++ b/src/views/project/fund/performancedetails/index.vue
@@ -6,75 +6,33 @@
       <el-form ref="form" :model="form" :rules="rules" label-width="120px">
         <el-row>
           <el-col :span="5">
-            <el-form-item label="鐢宠鏃ユ湡" prop="createTime">
-              <el-date-picker
-                clearable
-                style="width: 100%"
-                v-model="form.createTime"
-                type="date"
-                value-format="yyyy-MM-dd HH:mm:ss"
-                placeholder="鐢宠鏃ユ湡"
-              >
+            <el-form-item label="鐢宠鏃ユ湡" prop="applyTime">
+              <el-date-picker clearable style="width: 100%" v-model="form.applyTime" type="date"
+                value-format="yyyy-MM-dd HH:mm:ss" placeholder="鐢宠鏃ユ湡" disabled="true">
               </el-date-picker>
             </el-form-item>
           </el-col>
           <el-col :span="5">
             <el-form-item label="缁忓姙浜�" prop="username">
-              <el-select
-                v-model="form.username"
-                placeholder="鐢宠浜�"
-                clearable
-                filterable
-                allow-create
-                style="width: 100%"
-                @change="getUserAccount"
-              >
-                <el-option
-                  v-for="dict in userlist"
-                  :key="dict.index"
-                  :label="dict.nickname"
-                  :value="dict.nickname"
-                ></el-option>
+              <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>
             </el-form-item>
           </el-col>
           <el-col :span="5">
             <el-form-item label="鎵�灞炵粍鍒�" prop="deptmentname">
-              <el-input
-                v-model="form.deptmentname"
-                placeholder="璇疯緭鍏ユ墍灞炵粍鍒�"
-                clearable
-              />
+              <el-input v-model="form.deptmentname" placeholder="璇疯緭鍏ユ墍灞炵粍鍒�" clearable />
             </el-form-item>
           </el-col>
           <el-col :span="5">
             <el-form-item label="缁勯暱" prop="managername">
-              <el-input
-                v-model="form.managername"
-                placeholder="璇疯緭鍏ョ粍闀�"
-                clearable
-              />
+              <el-input v-model="form.managername" placeholder="璇疯緭鍏ョ粍闀�" clearable />
             </el-form-item>
           </el-col>
         </el-row>
         <el-row>
-          <el-col :span="5">
-            <el-form-item label="鐢宠鍗曠被鍨�">
-              <el-select
-                v-model="form.performancetype"
-                filterable
-                placeholder="璇烽�夋嫨鐢宠鍗曠姸鎬�"
-              >
-                <el-option
-                  v-for="item in PerformanceType"
-                  :key="item.id"
-                  :label="item.name"
-                  :value="item.id"
-                >
-                </el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
           <el-col :span="5">
             <el-form-item label="鑱旂郴鐢佃瘽" prop="phone">
               <el-input v-model="form.phone" placeholder="璇疯緭鍏ヨ仈绯荤數璇�" />
@@ -82,32 +40,19 @@
           </el-col>
           <el-col :span="5">
             <el-form-item label="鐢宠閲戦" prop="pretaxcost">
-              <el-input
-                v-model="form.pretaxcost"
-                placeholder="绋庡墠閲戦鍚堣"
-                :disabled="true"
-              />
+              <el-input v-model="form.pretaxcost" placeholder="绋庡墠閲戦鍚堣" :disabled="true" />
             </el-form-item>
           </el-col>
-        </el-row>
-        <el-row style="text-align: left">
           <el-col :span="5">
-            <el-form-item label="棰勫鐘舵��" prop="infoid">
-              <el-select
-                v-model="form.checkstatus"
-                filterable
-                placeholder="璇烽�夋嫨棰勫鐘舵��"
-              >
-                <el-option
-                  v-for="item in baselisttages"
-                  :key="item.id"
-                  :label="item.name"
-                  :value="item.id"
-                >
+            <el-form-item label="鐢宠鏉愭枡鐘舵��" prop="infoid">
+              <el-select v-model="form.checkstatus" filterable placeholder="璇烽�夋嫨鐢宠鏉愭枡鐘舵��">
+                <el-option v-for="item in baselisttages" :key="item.id" :label="item.name" :value="item.id">
                 </el-option>
               </el-select>
             </el-form-item>
           </el-col>
+        </el-row>
+        <el-row style="text-align: left">
           <el-col :span="8">
             <el-form-item label="鐢宠璇存槑" prop="remark">
               <el-input v-model="form.remark" placeholder="鐢宠璇存槑" />
@@ -116,226 +61,103 @@
         </el-row>
         <el-row style="margin-top: 5px; margin-bottom: 5px" />
         <el-row v-if="jurisdiction">
-          <el-alert
-            title="褰撳墠涓烘煡鐪嬬姸鎬侊紝涓嶆敮鎸佷慨鏀瑰瓨鍌ㄣ��"
-            type="warning"
-            show-icon
-          >
+          <el-alert title="褰撳墠涓烘煡鐪嬬姸鎬侊紝涓嶆敮鎸佷慨鏀瑰瓨鍌ㄣ��" type="warning" show-icon>
           </el-alert>
         </el-row>
         <el-row>
-          <el-col :span="3"
-            ><div style="margin-bottom: 15px;">
-              <el-button
-                type="success"
-                icon="el-icon-download"
-                @click="Batchentry"
-                >鎵归噺褰曞叆</el-button
-              >
-            </div></el-col
-          >
-        </el-row>
-        <el-row v-if="operationType == 'check'">
-          <el-col :span="3"
-            ><div style="margin-bottom: 15px;">
-              <el-button
-                type="success"
-                icon="el-icon-edit-outline"
-                @click="Manualcalculationfn"
-                >璁$畻鏄庣粏</el-button
-              >
-            </div></el-col
-          >
+          <el-col :span="3">
+            <div style="margin-bottom: 15px;">
+              <el-button type="primary" icon="el-icon-download" size="small" @click="Batchentry">鎵归噺褰曞叆浜哄憳</el-button>
+            </div>
+          </el-col>
+          <el-col :span="3" v-if="userprofile.nickName == '闄堟厱鍗�' && operationType == 'check'">
+            <div style="margin-bottom: 15px;">
+              <el-button type="success" icon="el-icon-edit-outline" size="small" @click="Manualcalculationfn">璁$畻涓◣</el-button>
+            </div>
+          </el-col>
         </el-row>
         <el-row>
-          <el-table
-            :data="rbDetails"
-            v-loading="loading"
-            max-height="800"
-            border
-            highlight-current-row
-          >
-            <el-table-column
-              prop="orderno"
-              align="center"
-              label="搴忓彿"
-              width="88"
-            >
+          <el-table :data="rbDetails" v-loading="loading" max-height="800" border highlight-current-row>
+            <el-table-column prop="orderno" align="center" label="搴忓彿" width="88">
               <template slot-scope="scope">
                 <el-input v-model="scope.row.orderno" placeholder="搴忓彿" />
               </template>
             </el-table-column>
-            <el-table-column
-              prop="applytype"
-              align="center"
-              label="鏈嶅姟绫诲瀷"
-              width="200"
-            >
+            <el-table-column prop="applytype" align="center" label="鏈嶅姟绫诲瀷" width="200">
               <template slot-scope="scope">
-                <el-select
-                  v-model="scope.row.applytype"
-                  placeholder="璇烽�夋嫨鏈嶅姟绫诲瀷"
-                  @change="verifyFeeItemType(scope.row)"
-                >
-                  <el-option
-                    v-for="dict in rowfeeItemTypes"
-                    :key="dict.value"
-                    :label="dict.label"
-                    :value="dict.value"
-                  ></el-option>
+                <el-select v-model="scope.row.applytype" placeholder="璇烽�夋嫨鏈嶅姟绫诲瀷" @change="verifyFeeItemType(scope.row)">
+                  <el-option v-for="dict in rowfeeItemTypes" :key="dict.value" :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)"
-                  :filter-method="val => searchItemType(val, scope)"
-                >
-                  <el-option
-                    v-for="dict in scope.row.itemlist"
-                    :key="dict.id"
-                    :label="dict.itemName"
-                    :value="dict.id"
-                  ></el-option>
+                <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.id" :label="dict.itemName"
+                    :value="dict.id"></el-option>
                 </el-select>
               </template>
             </el-table-column>
-            <el-table-column
-              prop="amount"
-              align="center"
-              label="绋庡墠閲戦"
-              width="120"
-            >
+            <el-table-column prop="amount" align="center" label="绋庡墠閲戦" width="120">
               <template slot-scope="scope">
-                <el-input
-                  v-model="scope.row.amount"
-                  placeholder="绋庡墠閲戦"
-                  @blur="
-                    val => {
-                      calculateTax(scope.row, 'A');
-                    }
-                  "
-                />
+                <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"
-            >
+            <el-table-column prop="taxedamount" align="center" label="绋庡悗閲戦" width="120">
               <template slot-scope="scope">
-                <el-input
-                  v-model="scope.row.taxedamount"
-                  placeholder="绋庡悗閲戦"
-                  @blur="
-                    val => {
-                      calculateTax(scope.row, 'B');
-                    }
-                  "
-                />
+                <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="250"
-            >
+            <el-table-column prop="beneficiaryname" align="center" label="缁╂晥浜哄憳鎴栧崟浣�" width="250">
               <template slot-scope="scope">
-                <el-button
-                  type="primary"
-                  plain
-                  @click="ShowDetailDialog(scope, 'expert')"
-                  >{{
-                    scope.row.beneficiaryname
-                      ? scope.row.beneficiaryname
-                      : "鐐瑰嚮閫夋嫨"
-                  }}</el-button
-                >
+                <el-button type="primary" plain @click="ShowDetailDialog(scope, 'expert')">{{
+                  scope.row.beneficiaryname
+                  ? scope.row.beneficiaryname
+                  : "鐐瑰嚮閫夋嫨"
+                }}</el-button>
+              </template>
+            </el-table-column>
+            <el-table-column prop="idcardno" align="center" label="韬唤璇佸彿" width="200">
+              <template slot-scope="scope">
+                <el-input v-model="scope.row.idcardno" placeholder="韬唤璇佸彿" />
               </template>
             </el-table-column>
 
-            <el-table-column
-              prop="depositbank"
-              align="center"
-              label="寮�鎴烽摱琛�"
-              width="200"
-            >
+            <el-table-column prop="depositbank" align="center" label="寮�鎴烽摱琛�" width="200">
               <template slot-scope="scope">
-                <el-input
-                  v-model="scope.row.depositbank"
-                  placeholder="寮�鎴烽摱琛�"
-                />
+                <el-input v-model="scope.row.depositbank" placeholder="寮�鎴烽摱琛�" />
               </template>
             </el-table-column>
-            <el-table-column
-              prop="bankcardno"
-              align="center"
-              label="閾惰甯愬彿"
-              width="210"
-            >
+            <el-table-column prop="bankcardno" align="center" label="閾惰甯愬彿" width="210">
               <template slot-scope="scope">
-                <el-input
-                  v-model="scope.row.bankcardno"
-                  placeholder="閾惰甯愬彿"
-                />
+                <el-input v-model="scope.row.bankcardno" placeholder="閾惰甯愬彿" />
               </template>
             </el-table-column>
-            <el-table-column
-              prop="remark"
-              align="center"
-              width="330"
-              label="澶囨敞"
-            >
+            <el-table-column prop="remark" align="center" width="330" label="澶囨敞">
               <template slot-scope="scope">
-                <el-input
-                  type="textarea"
-                  :rows="2"
-                  v-model="scope.row.remark"
-                  placeholder="澶囨敞"
-                />
+                <el-input type="textarea" :rows="2" v-model="scope.row.remark" placeholder="澶囨敞" />
               </template>
             </el-table-column>
-            <el-table-column
-              fixed="right"
-              align="center"
-              label="鎿嶄綔"
-              width="180"
-            >
+            <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' ||
-                      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' ||
-                      operationType == 'check'
-                  "
-                >
+                <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' ||
+    operationType == 'check'
+    ">
                   鍒犻櫎
                 </el-button>
               </template>
@@ -343,48 +165,23 @@
           </el-table>
         </el-row>
 
-        <el-row
-          v-if="
-            operationType == 'detail' ||
-              operationType == 'check' ||
-              operationType == 'update'
-          "
-        >
+        <el-row v-if="operationType == 'detail' ||
+          operationType == 'check' ||
+          operationType == 'update'
+          ">
           <el-table :data="fundflowList" border>
-            <el-table-column
-              label="瀹℃牳鏃ユ湡"
-              align="center"
-              width="160"
-              prop="createTime"
-            />
-            <el-table-column
-              label="瀹℃牳浜�"
-              align="center"
-              width="120"
-              prop="checkusername"
-            />
-            <el-table-column
-              label="瀹℃牳缁撴灉"
-              align="center"
-              width="200"
-              prop="flowconclusion"
-            >
+            <el-table-column label="瀹℃牳鏃ユ湡" align="center" width="160" prop="createTime" />
+            <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-column label="瀹℃牳澶囨敞" align="center" prop="flowcontent" />
           </el-table>
         </el-row>
-        <el-row
-          style="margin-top: 25px; margin-bottom: 5px"
-          v-if="operationType == 'check'"
-        >
+        <el-row style="margin-top: 25px; margin-bottom: 5px" v-if="operationType == 'check'">
           <el-col :span="7">
             <el-form-item label="瀹℃牳缁撴灉" align="left">
               <el-radio-group v-model="checkObj.flowlevelone" align="left">
@@ -403,78 +200,43 @@
         </el-row>
       </el-form>
       <div slot="footer" class="dialog-footer">
-        <el-button
-          type="primary"
-          @click="submitForm"
-          v-if="
-            operationType == 'add' ||
-              operationType == 'update' ||
-              ismanager == true ||
-              beforehandType == '1'
-          "
-          >鎻愪氦淇濆瓨</el-button
-        >
-        <el-button
-          type="success"
-          @click="handleup"
-          v-if="operationType == 'add' || operationType == 'update'"
-          >涓婃姤</el-button
-        >
-        <el-button
-          type="primary"
-          @click="checksubmit"
-          v-if="operationType == 'check' && beforehandType != '1'"
-          >鎻愪氦瀹℃牳</el-button
-        >
+        <el-button type="primary" @click="submitForm" v-if="operationType == 'add' ||
+          operationType == 'update' ||
+          ismanager == true ||
+          beforehandType == '1'
+          ">鎻愪氦淇濆瓨</el-button>
+        <el-button type="success" @click="handleup"
+          v-if="operationType == 'add' || operationType == 'update'">涓婃姤</el-button>
+        <el-button type="primary" @click="checksubmit"
+          v-if="operationType == 'check' && beforehandType != '1'">鎻愪氦瀹℃牳</el-button>
         <el-button @click="cancel">鍏� 闂�</el-button>
       </div>
     </div>
 
-    <el-dialog
-      :visible.sync="showSelectionDialog"
-      :close-on-click-modal="false"
-      :title="'涓汉淇℃伅閫夋嫨'"
-      width="500px"
-      style="text-align: center"
-      v-loading="loading"
-    >
+    <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-select
-            v-model="funddetailForm.userName"
-            filterable
-            remote
-            reserve-keyword
-            placeholder="璇疯緭鍏ュ叧閿瘝"
-            :remote-method="remoteMethod"
-            :loading="loadingperformance"
-          >
-            <el-option
-              v-for="item in optionsperformance"
-              :key="item.value"
-              :label="item.label"
-              :value="item.value"
-            >
-            </el-option>
-          </el-select>
+          <el-form-item label="璇疯緭鍏ラ�夋嫨锛�" prop="unitno" label-width="120px">
+            <el-select v-model="funddetailForm.userName" filterable remote reserve-keyword allow-create
+              default-first-option placeholder="璇疯緭鍏ュ鍚嶆垨鍗曚綅鍚嶇О" :remote-method="remoteMethod" :loading="loadingperformance"
+              style="width: 100%">
+              <el-option v-for="item in optionsperformance" :key="item.value" :label="item.label" :value="item.value">
+              </el-option>
+            </el-select>
+          </el-form-item>
         </el-row>
       </el-form>
       <span slot="footer" class="dialog-footer">
         <el-button @click="showSelectionDialog = false">鍙� 娑�</el-button>
-        <el-button type="primary" @click="ConfirmDetailDialog()"
-          >纭� 瀹�</el-button
-        >
+        <el-button type="primary" @click="ConfirmDetailDialog()">纭� 瀹�</el-button>
       </span>
     </el-dialog>
     <el-dialog title="鎻愮ず" :visible.sync="Savereminder" width="30%">
-      <el-alert
-        :title="
-          '鎮ㄥ凡娣诲姞' +
-            totalquantity +
-            '鏉℃暟鎹紝涓洪槻姝㈡暟鎹涪澶辨槸鍚︽彁浜や繚瀛樺啀缁х画娣诲姞銆�'
-        "
-        type="warning"
-      >
+      <el-alert :title="'鎮ㄥ凡娣诲姞' +
+        totalquantity +
+        '鏉℃暟鎹紝涓洪槻姝㈡暟鎹涪澶辨槸鍚︽彁浜や繚瀛樺啀缁х画娣诲姞銆�'
+        " type="warning">
       </el-alert>
       <span slot="footer" class="dialog-footer">
         <el-button @click="unsave">鍙� 娑�</el-button>
@@ -483,30 +245,20 @@
     </el-dialog>
 
     <!-- 鎵归噺閫夊彇 -->
-    <el-dialog
-      title="鎵归噺鐢熸垚鏄庣粏淇℃伅"
-      :visible.sync="batchdialogVisible"
-      width="40%"
-    >
+    <el-dialog title="鎵归噺鐢熸垚鏄庣粏淇℃伅" :visible.sync="batchdialogVisible" width="40%">
+      <div style="margin-bottom: 15px; margin-left: 10px;">
+        <el-radio-group v-model="Performanceclass">
+          <el-radio-button :label="68">鏈堝害缁╂晥</el-radio-button>
+          <el-radio-button :label="69">瀛e害缁╂晥</el-radio-button>
+          <el-radio-button :label="70">骞村害缁╂晥</el-radio-button>
+        </el-radio-group>
+      </div>
       <div style="max-height: 330px; overflow-y: auto">
-        <el-checkbox
-          :indeterminate="isIndeterminate"
-          v-model="checkAll"
-          @change="handleCheckAllChange"
-          >鍏ㄩ��</el-checkbox
-        >
+        <el-checkbox :indeterminate="isIndeterminate" v-model="checkAll" @change="handleCheckAllChange">鍏ㄩ��</el-checkbox>
         <div style="margin: 15px 0;"></div>
-        <el-checkbox-group
-          v-model="checkedCities"
-          @change="handleCheckedCitiesChange"
-        >
-          <el-checkbox
-            border
-            v-for="city in cityOptions"
-            :label="city"
-            :key="city.userNo"
-            >{{ city.userName }}</el-checkbox
-          >
+        <el-checkbox-group v-model="checkedCities" @change="handleCheckedCitiesChange">
+          <el-checkbox border v-for="city in cityOptions" :label="city" :key="city.userNo">{{ city.userName
+          }}</el-checkbox>
         </el-checkbox-group>
       </div>
 
@@ -593,6 +345,7 @@
       spocewl: "",
       //璐圭敤鐢宠琛ㄥ崟title
       title: "",
+
       //鐢宠鍗曠被鍨�
       businessType: "0",
       businessName: "",
@@ -623,6 +376,7 @@
       Personnelforname: null,
       unitforname: null,
       isIndeterminate: true,
+      Performanceclass: 68,
 
       //鏄惁鏄笓瀹惰垂鐨凮PO瀹℃壒浜哄憳
       ismanager: false,
@@ -631,11 +385,11 @@
       baselisttages: [
         {
           id: 1,
-          name: "寰呴瀹�"
+          name: "寰呯敵璇锋潗鏂�"
         },
         {
           id: 2,
-          name: "棰勫閫氳繃绛夊緟鏉愭枡"
+          name: "瀹℃牳閫氳繃绛夊緟閭瘎绾歌川鏉愭枡"
         },
         {
           id: 3,
@@ -693,9 +447,6 @@
 
       // 琛ㄥ崟鏍¢獙
       rules: {
-        createTime: [
-          { required: true, message: "璇疯緭鍏ュ~鎶ユ棩鏈�", trigger: "blur" }
-        ],
         reason: [
           { required: true, message: "璇疯緭鍏ュ嚭宸簨鐢�", trigger: "blur" }
         ],
@@ -826,13 +577,13 @@
   watch: {},
   //鏂规硶闆嗗悎
   methods: {
-    bbaaccss(val) {},
+    bbaaccss(val) { },
     // 娴忚鍣ㄩ〉闈㈠叧闂垨鍒锋柊鎻愮ず
     beforeunloadHandler(e) {
       if (
         (JSON.stringify(this.form) == sessionStorage.getItem("apiform") &&
           JSON.stringify(this.rbDetails) ==
-            sessionStorage.getItem("apifunddetail")) ||
+          sessionStorage.getItem("apifunddetail")) ||
         !sessionStorage.getItem("apifunddetail")
       ) {
       } else {
@@ -896,7 +647,7 @@
     /** 閫氳繃鍙傛暟鑾峰彇涓氬姟绫诲瀷 */
     getroute() {
       console.log(11);
-      //閫夋嫨涓氬姟绫诲瀷:1銆佹柊澧烇紱2銆佷慨鏀癸紱3銆佹煡鐪�
+      //閫夋嫨涓氬姟绫诲瀷:1銆佹柊澧烇紱2銆佷慨鏀癸紱3銆佸鍒讹紱4銆佹煡鐪�
       this.curId = this.$route.query.id;
       this.businessType = this.$route.query.businessType;
       this.operationType = this.$route.query.operationType;
@@ -913,8 +664,10 @@
         this.handleAdd();
       } else if (this.operationType == "update") {
         this.title = this.businessName + "淇敼";
-        console.log(this.title);
         this.handleUpdate();
+      } else if (this.operationType == "copy") {
+        this.title = this.businessName + "澶嶅埗";
+        this.handleCopy();
       } else if (this.operationType == "detail") {
         this.title = this.businessName + "鏌ョ湅";
         this.jurisdiction = true;
@@ -945,6 +698,7 @@
 
       getFund(this.curId).then(response => {
         this.form = response.data;
+
         sessionStorage.removeItem("apiform");
 
         sessionStorage.setItem("apiform", JSON.stringify(this.form));
@@ -952,7 +706,6 @@
         //鏄庣粏澶勭悊
         getownFundDetail(this.curId).then(res => {
           this.rbDetails = res.data;
-
           if (this.rbDetails.length > 0) {
             for (let m = 0; m < this.rbDetails.length; m++) {
               this.rbDetails[m].itemlist = [];
@@ -980,6 +733,71 @@
         listFundflow(listFundflowparams).then(res => {
           this.fundflowList = res.rows;
         });
+      });
+    },
+
+    /** 澶嶅埗鎸夐挳鎿嶄綔 */
+    handleCopy() {
+      this.isopen = 0;
+      this.reset();
+
+      getFund(this.curId).then(response => {
+        this.form = response.data;
+        sessionStorage.removeItem("apiform");
+        sessionStorage.setItem("apiform", JSON.stringify(this.form));
+
+        //鏄庣粏澶勭悊
+        getownFundDetail(this.curId).then(res => {
+          this.rbDetails = res.data;
+          if (this.rbDetails.length > 0) {
+            for (let m = 0; m < this.rbDetails.length; m++) {
+              this.rbDetails[m].itemlist = [];
+              this.getRowFeeItems(m, this.rbDetails[m]);
+
+              //鑾峰彇璐圭敤椤圭洰鐨勮缁嗕俊鎭�
+              this.rbDetails[m].rowfeeblocks = this.feeBlocks.filter(
+                r => r.itemid == this.rbDetails[m].itemid
+              );
+
+              //鍒濆鍖栨槑缁嗕俊鎭�
+              this.rbDetails[m].id = null;
+              this.rbDetails[m].fundid = null;
+              this.rbDetails[m].amount = 0;
+              this.rbDetails[m].taxamount = 0;
+              this.rbDetails[m].taxedamount = 0;
+            }
+
+            sessionStorage.removeItem("apifunddetail");
+            sessionStorage.setItem("apifunddetail", JSON.stringify(this.rbDetails));
+          } else {
+            this.addRow(0);
+          }
+        });
+
+        //鍒濆鍖栦富淇℃伅
+        this.curId = null;
+        this.form.id = null;
+        this.form.recordstatus = "-1";
+        this.form.checkstatus = null;
+        this.form.pretaxcost = 0;
+        this.form.istax = null;
+        this.form.fundtaxtime = null;
+        this.form.createTime = null;
+        this.form.updateTime = null;
+
+        this.form.flowlevel = null;
+        this.form.backflowlevel = null;
+
+        this.form.financedirector = null;
+        this.form.financechecher = null;
+        this.form.president = null;
+        this.form.finvicepresident = null;
+        this.form.busvicepresident = null;
+        this.form.zffs = null;
+        this.form.riqi = null;
+        this.form.bh = null;
+        this.form.istax = 0;
+        this.form.fundtaxtime = null;
       });
     },
 
@@ -1066,7 +884,7 @@
     handleDelete() {
       this.$modal
         .confirm("鏄惁纭鍒犻櫎璇ヨ褰曪紵")
-        .then(function() {
+        .then(function () {
           return delFund(this.curId);
         })
         .then(() => {
@@ -1079,7 +897,7 @@
           this.getfundList();
           this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
         })
-        .catch(() => {});
+        .catch(() => { });
     },
 
     /** 涓婃姤鎸夐挳鎿嶄綔 */
@@ -1087,7 +905,7 @@
       if (
         (JSON.stringify(this.form) == sessionStorage.getItem("apiform") &&
           JSON.stringify(this.rbDetails) ==
-            sessionStorage.getItem("apifunddetail")) ||
+          sessionStorage.getItem("apifunddetail")) ||
         !sessionStorage.getItem("apifunddetail")
       ) {
       } else {
@@ -1103,6 +921,9 @@
           //鏌ユ壘鏄惁瀛樺湪鐧昏瀹屾垚璁板綍
           //鍒ゆ柇鏄惁瀛樺湪涓婃姤璁板綍
           this.form.recordstatus = 0;
+          var currenttime = new Date();
+          this.form.applyTime = currenttime.getFullYear() + "-" + (currenttime.getMonth() + 1) + "-" + currenttime.getDate() + " " + currenttime.getHours() + ":" + currenttime.getMinutes() + ":" + currenttime.getSeconds();
+
           if (!this.form.id) {
             this.form.id = this.$route.query.id;
           }
@@ -1142,7 +963,7 @@
       return randomString;
     },
     /** 鎻愪氦鎸夐挳 */
-    submitForm: debounce(function() {
+    submitForm: debounce(function () {
       if (!this.randomnumber) {
         this.randomnumber = this.generateRandomString(9);
         this.form.randomnumber = this.randomnumber;
@@ -1158,8 +979,16 @@
             if (tempDetail.itemid == null) {
               this.$modal.msgWarning(
                 "鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
-                  (k + 1).toString() +
-                  "琛岀殑鏈嶅姟椤圭洰鏈�夋嫨锛岃鍏堥�夋嫨鏈嶅姟椤圭洰鍚庡啀鎻愪氦淇濆瓨锛�"
+                (k + 1).toString() +
+                "琛岀殑鏈嶅姟椤圭洰鏈�夋嫨锛岃鍏堥�夋嫨鏈嶅姟椤圭洰鍚庡啀鎻愪氦淇濆瓨锛�"
+              );
+              return;
+            }
+            if (tempDetail.idcardno == null) {
+              this.$modal.msgWarning(
+                "鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
+                (k + 1).toString() +
+                "琛岀殑韬唤璇佹湭瀹屽杽锛岃鍏堝~鍐欒韩浠借瘉鍚庡啀鎻愪氦淇濆瓨锛�"
               );
               return;
             }
@@ -1168,8 +997,8 @@
               if (tempDetail.servicesscope == null) {
                 this.$modal.msgWarning(
                   "鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
-                    (k + 1).toString() +
-                    "琛岀殑璐圭敤璇存槑鏈�夋嫨,璇烽�夋嫨璐圭敤璇存槑鍚庡啀鎻愪氦淇濆瓨锛�"
+                  (k + 1).toString() +
+                  "琛岀殑璐圭敤璇存槑鏈�夋嫨,璇烽�夋嫨璐圭敤璇存槑鍚庡啀鎻愪氦淇濆瓨锛�"
                 );
                 return;
               }
@@ -1177,8 +1006,8 @@
               if (tempDetail.beneficiaryno == null) {
                 this.$modal.msgWarning(
                   "鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
-                    (k + 1).toString() +
-                    "琛岀殑鏈嶅姟浜哄憳濮撳悕涓洪�夋嫨,璇烽�夋嫨浜哄憳鍚庡啀鎻愪氦淇濆瓨锛�"
+                  (k + 1).toString() +
+                  "琛岀殑鏈嶅姟浜哄憳濮撳悕涓洪�夋嫨,璇烽�夋嫨浜哄憳鍚庡啀鎻愪氦淇濆瓨锛�"
                 );
                 return;
               }
@@ -1224,8 +1053,8 @@
               ) {
                 this.$modal.msgWarning(
                   "鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
-                    (j + 1).toString() +
-                    "琛岀殑閲戦鏈緭鍏ワ紝璇峰厛杈撳叆閲戦鍚庡啀鎻愪氦淇濆瓨锛�"
+                  (j + 1).toString() +
+                  "琛岀殑閲戦鏈緭鍏ワ紝璇峰厛杈撳叆閲戦鍚庡啀鎻愪氦淇濆瓨锛�"
                 );
                 return;
               }
@@ -1239,8 +1068,8 @@
               ) {
                 this.$modal.msgWarning(
                   "鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
-                    (j + 1).toString() +
-                    "琛岀殑閲戦鏈緭鍏ワ紝璇峰厛杈撳叆閲戦鍚庡啀鎻愪氦淇濆瓨锛�"
+                  (j + 1).toString() +
+                  "琛岀殑閲戦鏈緭鍏ワ紝璇峰厛杈撳叆閲戦鍚庡啀鎻愪氦淇濆瓨锛�"
                 );
                 return;
               }
@@ -1267,6 +1096,19 @@
           if (this.form.id != null) {
           } else {
             this.form.recordstatus = -1;
+            var currenttime = new Date();
+            this.form.applyTime =
+              currenttime.getFullYear() +
+              "-" +
+              (currenttime.getMonth() + 1) +
+              "-" +
+              currenttime.getDate() +
+              " " +
+              currenttime.getHours() +
+              ":" +
+              currenttime.getMinutes() +
+              ":" +
+              currenttime.getSeconds();
           }
 
           sessionStorage.setItem(
@@ -1277,17 +1119,25 @@
           addorupdateFund(this.form).then(response => {
             console.log(response, "淇濆瓨杩斿弬");
             if (response.code === 200) {
-              this.$modal.msgSuccess("鐢宠鍗曚繚瀛樻垚鍔燂紒");
-              this.$store.dispatch("tagsView/delView", this.$route);
-              this.$router.push({
-                path: "/finance/performancedetails/",
-                query: {
-                  id: response.data,
-                  businessType: "5",
-                  operationType: "update"
-                }
-              });
+              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/performancedetails/",
+                  query: {
+                    id: response.data,
+                    businessType: "5",
+                    operationType: "update"
+                  }
+                });
+              }
               this.Routinglevel++;
+              this.form.id = response.data;
+              this.curId = response.data;
+              this.handleUpdate();
             } else {
               this.$modal.msgError("鐢宠鍗曚繚瀛樺け璐ワ細" + response.msg);
             }
@@ -1603,8 +1453,8 @@
             if (tempDetail.itemid == null) {
               this.$modal.msgWarning(
                 "鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
-                  (k + 1).toString() +
-                  "琛岀殑鏈嶅姟椤圭洰鏈�夋嫨锛岃鍏堥�夋嫨鏈嶅姟椤圭洰鍚庡啀鎻愪氦淇濆瓨锛�"
+                (k + 1).toString() +
+                "琛岀殑鏈嶅姟椤圭洰鏈�夋嫨锛岃鍏堥�夋嫨鏈嶅姟椤圭洰鍚庡啀鎻愪氦淇濆瓨锛�"
               );
               return;
             }
@@ -1613,8 +1463,8 @@
               if (tempDetail.servicesscope == null) {
                 this.$modal.msgWarning(
                   "鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
-                    (k + 1).toString() +
-                    "琛岀殑璐圭敤璇存槑鏈�夋嫨,璇烽�夋嫨璐圭敤璇存槑鍚庡啀鎻愪氦淇濆瓨锛�"
+                  (k + 1).toString() +
+                  "琛岀殑璐圭敤璇存槑鏈�夋嫨,璇烽�夋嫨璐圭敤璇存槑鍚庡啀鎻愪氦淇濆瓨锛�"
                 );
                 return;
               }
@@ -1622,8 +1472,8 @@
               if (tempDetail.beneficiaryno == null) {
                 this.$modal.msgWarning(
                   "鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
-                    (k + 1).toString() +
-                    "琛岀殑鏈嶅姟浜哄憳濮撳悕涓洪�夋嫨,璇烽�夋嫨浜哄憳鍚庡啀鎻愪氦淇濆瓨锛�"
+                  (k + 1).toString() +
+                  "琛岀殑鏈嶅姟浜哄憳濮撳悕涓洪�夋嫨,璇烽�夋嫨浜哄憳鍚庡啀鎻愪氦淇濆瓨锛�"
                 );
                 return;
               }
@@ -1668,8 +1518,8 @@
             ) {
               this.$modal.msgWarning(
                 "鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
-                  (j + 1).toString() +
-                  "琛岀殑閲戦鏈緭鍏ワ紝璇峰厛杈撳叆閲戦鍚庡啀鎻愪氦淇濆瓨锛�"
+                (j + 1).toString() +
+                "琛岀殑閲戦鏈緭鍏ワ紝璇峰厛杈撳叆閲戦鍚庡啀鎻愪氦淇濆瓨锛�"
               );
               return;
             }
@@ -1761,11 +1611,14 @@
         this.listperformancea = this.cityOptions.map(item => {
           return { value: item.userName, label: item.userName };
         });
-        console.log(this.cityOptions, "缁╂晥鎵归噺");
       });
     },
     // 纭褰曞叆
     BatchentryFn() {
+      console.log(this.rbDetails[0]);
+      if (!this.rbDetails[0].applytype) {
+        this.rbDetails = [];
+      }
       this.checkedCities.forEach(item => {
         let rowData = {
           orderno: null,
@@ -1788,7 +1641,7 @@
           annexregistform: null,
           applytype: "9",
           applytypename: "绠$悊鎴愭湰",
-          itemid: 68,
+          itemid: this.Performanceclass,
           itemcode: "68",
           itemname: "缁╂晥宸ヨ祫",
           itemtype: null,
@@ -1807,7 +1660,11 @@
           updateTime: null,
           uploadflag: null,
           uploadtime: null,
-          itemlist: [{ id: 68, itemName: "缁╂晥宸ヨ祫" }],
+          itemlist: [
+            { id: 68, itemName: "鏈堝害缁╂晥" },
+            { id: 69, itemName: "瀛e害缁╂晥" },
+            { id: 70, itemName: "骞村害缁╂晥" }
+          ],
           servicesscope: null,
           rowfeeblocks: [],
           annexfiles: null
@@ -1815,11 +1672,12 @@
 
         this.rbDetails.push(rowData);
       });
-      for (let i = 0; i < this.checkedCities.length + 1; i++) {
+      for (let i = 0; i < this.rbDetails.length; i++) {
         this.rbDetails[i].orderno = i + 1;
       }
       this.calculateTax();
       this.batchdialogVisible = false;
+      this.checkedCities = [];
       console.log(this.rowfeeItemTypes);
     },
     //鏂板涓�琛�
@@ -1935,7 +1793,6 @@
       this.selectionType = showType;
       this.selectionType = this.experthear;
       this.expertfrom = "1";
-      console.log(spoce);
       this.funddetailForm.index = spoce.$index;
       this.funddetailForm.beneficiaryno = spoce.row.beneficiaryno;
       this.funddetailForm.beneficiaryname = spoce.row.beneficiaryname;
@@ -1961,17 +1818,17 @@
       this.cityOptions.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.bankCardNo;
+          singleDetail.idcardno = res.idcardNo;
           singleDetail.phone = res.telephone;
           singleDetail.title = res.title;
           singleDetail.unitname = res.unitname;
           singleDetail.unitno = parseInt(res.unitno);
         }
       });
+      singleDetail.beneficiaryname = tempExpertName;
       this.rbDetails[tempIndex] = singleDetail;
       this.showSelectionDialog = false;
     },
@@ -2010,7 +1867,7 @@
   destroyed() {
     window.removeEventListener("beforeunload", e => this.beforeunloadFn(e));
   }, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴�
-  activated() {} //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂
+  activated() { } //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂
 };
 </script>
 
@@ -2093,7 +1950,7 @@
   line-height: 25px;
 }
 
-::v-deep .el-checkbox.is-bordered + .el-checkbox.is-bordered {
+::v-deep .el-checkbox.is-bordered+.el-checkbox.is-bordered {
   margin-left: 0 !important;
   margin-bottom: 10px;
 }

--
Gitblit v1.9.3