From bd02920548b2c867704f64d6feff0d96e0227fcc Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期三, 17 五月 2023 09:41:51 +0800
Subject: [PATCH] 修改了财务审批

---
 src/views/project/travelexpenseslistrecord/index.vue |  678 ++++++++++++++++++++++++++++++++------------------------
 1 files changed, 385 insertions(+), 293 deletions(-)

diff --git a/src/views/project/travelexpenseslistrecord/index.vue b/src/views/project/travelexpenseslistrecord/index.vue
index 653e8be..203a29e 100644
--- a/src/views/project/travelexpenseslistrecord/index.vue
+++ b/src/views/project/travelexpenseslistrecord/index.vue
@@ -3,15 +3,16 @@
   <div class="app-container">
     <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
       <el-row>
+        <!--
         <el-col :span="6">
           <el-form-item label="鍑哄樊浜�" prop="travelers">
             <el-input v-model="queryParams.travelers" placeholder="璇疯緭鍏ュ嚭宸汉" clearable size="small"
               @keyup.enter.native="handleQuery" />
           </el-form-item>
         </el-col>
-
+-->
         <el-col :span="6">
-          <el-form-item label="鎶ラ攢浜�" prop="username">
+          <el-form-item label="缁忓姙浜�" prop="username">
             <el-input v-model="queryParams.username" placeholder="璇疯緭鍏ユ姤閿�浜�" clearable size="small"
               @keyup.enter.native="handleQuery" />
           </el-form-item>
@@ -27,13 +28,11 @@
             </el-select>
           </el-form-item>
         </el-col>
-      </el-row>
-
-      <el-row>
         <el-col :span="8">
-          <el-form-item label="鎶ラ攢鏃ユ湡" prop="createTime">
+          <el-form-item label="鐢宠鏃ユ湡" prop="createTime">
             <el-date-picker format="yyyy-MM-dd" value-format="yyyy-MM-dd" v-model="value1" type="daterange" @blur="onpick"
-              range-separator="鑷�" start-placeholder="鎶ラ攢寮�濮嬫棩鏈�" end-placeholder="鎶ラ攢缁撴潫鏃ユ湡" @keyup.enter.native="handleQuery">
+              range-separator="鑷�" start-placeholder="鎶ラ攢鐢宠寮�濮嬫棩鏈�" end-placeholder="鎶ラ攢鐢宠缁撴潫鏃ユ湡"
+              @keyup.enter.native="handleQuery">
             </el-date-picker>
           </el-form-item>
         </el-col>
@@ -58,30 +57,33 @@
     <el-table border v-loading="loading" :data="reimbursementList" @selection-change="handleSelectionChange">
       <!-- <el-table-column type="selection" width="55" align="center" /> -->
 
-      <el-table-column label="瀹℃壒鐘舵��" width="120" align="center" prop="checkFlag">
-        <template slot-scope="scope">
-          <span v-if="scope.row.checkFlag == 0"><i class="el-icon-check"
-              style="color: #5fb878; font-weight: bold"></i></span>
-          <!-- <span v-else>寰呭鏍�</span> -->
-        </template>
-      </el-table-column>
+
+      <!--
       <el-table-column label="鎶ラ攢褰掔被" width="120" align="center" prop="costtype">
         <template slot-scope="scope">
           <dict-tag :options="dict.type.sys_travelexpensebelong" :value="scope.row.costtype" />
         </template>
-      </el-table-column>
+      </el-table-column>-->
       <el-table-column label="鐢宠鏃ユ湡" width="120" align="center" prop="createTime">
         <template slot-scope="scope">
           <span>{{ parseTime(scope.row.createTime, "{y}-{m}-{d}") }}</span>
         </template>
       </el-table-column>
-      <el-table-column label="鎶ラ攢浜�" width="120" align="center" prop="username">
+      <el-table-column label="瀹℃壒鐘舵��" width="120" align="center" prop="checkFlag">
+        <template slot-scope="scope">
+          <dict-tag :options="dict.type.sys_recordstatus" :value="scope.row.recordstatus" />
+        </template>
       </el-table-column>
-      <el-table-column label="鍑哄樊浜�" width="180" align="center" prop="travelers">
+      <el-table-column label="缁忓姙浜�" width="120" align="center" prop="username">
       </el-table-column>
       <el-table-column label="鎶ラ攢閲戦" width="120" align="center" prop="amountrequested">
       </el-table-column>
-      <el-table-column label="鍑哄樊浜嬬敱" align="center" width="280" prop="reason">
+      <el-table-column label="鍑哄樊浜嬬敱" align="center" prop="reason">
+      </el-table-column>
+      <el-table-column label="鎹愮尞鑰�" width="120" align="center" prop="donorname">
+      </el-table-column>
+      <!-- 
+      <el-table-column label="鍑哄樊浜�" width="180" align="center" prop="travelers">
       </el-table-column>
       <el-table-column label="鑱旂郴鐢佃瘽" width="120" align="center" prop="phone">
       </el-table-column>
@@ -89,12 +91,13 @@
       </el-table-column>
       <el-table-column label="閾惰鍗″彿" width="180" align="center" prop="bankcardno">
       </el-table-column>
-      <!-- <el-table-column label="鎶ラ攢鍚堣" align="center" prop="financechecher">
-      </el-table-column> -->
-      <el-table-column label="璐㈠姟瀹℃牳" width="120" align="center" prop="financechecher">
-      </el-table-column>
-      <el-table-column label="鎹愮尞鑰�" width="120" align="center" prop="donorname">
-      </el-table-column>
+       
+      <el-table-column label="缁勯暱瀹℃壒" align="center" prop="managername"/>      
+      <el-table-column label="涓氬姟鏍稿" align="center" prop="opochecher"/>          
+      <el-table-column label="涓氬姟瀹℃壒" align="center" prop="officedirector"/>      
+      <el-table-column label="璐㈠姟鏍稿" align="center" prop="financechecher"/>
+      <el-table-column label="璐㈠姟瀹℃牳" width="120" align="center" prop="financedirector"/>
+-->
       <el-table-column label="鎿嶄綔" align="center" fixed="right" class-name="small-padding fixed-width" width="270">
         <template slot-scope="scope">
           <el-button size="mini" type="text" icon="el-icon-edit" v-if="scope.row.checkFlag == 1"
@@ -120,43 +123,41 @@
     <el-dialog :title="title" :visible.sync="open" width="1400px" append-to-body>
       <el-form ref="form" :model="form" label-width="120px">
         <el-row>
-          <el-col :span="7">
-            <el-form-item label="鎹愮尞鑰�" prop="infoid">
-              <el-select v-model="form.infoid" @change="selectbaseinfo" filterable disabled placeholder="璇烽�夋嫨鎹愮尞鑰�">
-                <el-option v-for="item in baselist" :key="item.index" :label="item.name" :value="item.infoid">
-                </el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-          <el-col :span="8">
-            <el-form-item label="鎹愮尞缂栧彿" prop="donorno">
-              <el-input disabled v-model="form.donorno" placeholder="鎹愮尞缂栧彿" />
-            </el-form-item>
-          </el-col>
-          <el-col :span="7">
+          <el-col :span="5">
             <el-form-item label="鐢宠鏃ユ湡" prop="createTime">
               <el-date-picker style="width: 100%" v-model="form.createTime" disabled type="date"
                 value-format="yyyy-MM-dd HH:mm:ss" placeholder="鐢宠鏃ユ湡">
               </el-date-picker>
             </el-form-item>
           </el-col>
-        </el-row>
-        <el-row>
-          <!-- donorname -->
-          <el-col :span="7">
-            <el-form-item label="鎶ラ攢浜�" prop="username">
+          <el-col :span="5">
+            <el-form-item label="缁忓姙浜�" prop="username">
               <el-input v-model="form.username" placeholder="鎶ラ攢浜�" />
             </el-form-item>
           </el-col>
+          <el-col :span="5">
+            <el-form-item label="鍖哄煙缁勯暱" prop="managerno">
+              <el-input v-model="form.managerno" placeholder="鍖哄煙缁勯暱" />
+            </el-form-item> </el-col>
+          <el-col :span="5"><el-form-item label="鎹愮尞鑰�" prop="donorname">
+              <el-input v-model="form.donorname" placeholder="鎹愮尞鑰�" />
+            </el-form-item>
+
+          </el-col></el-row> <!--
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="鎹愮尞缂栧彿" prop="donorno">
+              <el-input disabled v-model="form.donorno" placeholder="鎹愮尞缂栧彿" />
+            </el-form-item>
+          </el-col>
+          
+
           <el-col :span="8">
             <el-form-item label="鍑哄樊浜�" prop="travelers">
               <el-input v-model="form.travelers" placeholder="鍑哄樊浜�" />
             </el-form-item>
           </el-col>
-          <el-col :span="7">
-            <el-form-item label="鍖哄煙缁勯暱" prop="managerno">
-              <el-input v-model="form.managerno" placeholder="鍖哄煙缁勯暱" />
-            </el-form-item> </el-col></el-row>
+        </el-row>
         <el-row>
           <el-col :span="7">
             <el-form-item label="寮�鎴烽摱琛�" prop="depositbank">
@@ -170,132 +171,211 @@
             <el-form-item label="鑱旂郴鐢佃瘽" prop="phone">
               <el-input v-model="form.phone" placeholder="鑱旂郴鐢佃瘽" />
             </el-form-item>
-          </el-col> </el-row><el-row>
-          <el-col :span="21">
+          </el-col>          
+        </el-row>-->
+
+        <el-row style="margin-top: 10px">
+          <el-col :span="5">
+            <el-form-item label="鎶ラ攢閲戦" prop="amountrequested">
+              <el-input v-model="form.amountrequested" placeholder="鎶ラ攢鍚堣" />
+            </el-form-item>
+          </el-col>
+
+          <el-col :span="10">
+            <el-form-item label="澶у啓閲戦" prop="bigstrmoney">
+              <el-input v-model="form.bigstrmoney" placeholder="棰嗘閲戦" />
+            </el-form-item>
+          </el-col><!-- 
+          <el-col :span="6">
+            <el-form-item label="棰嗘閲戦" prop="amountrequested">
+              <el-input v-model="form.amountrequested" placeholder="棰嗘閲戦" />
+            </el-form-item>
+          </el-col><el-col :span="12">
+            <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="flowlevel">
+              <el-select v-model="form.recordstatus" placeholder="璇烽�夋嫨瀹℃牳鐘舵��" clearable :disabled="true" size="small">
+                <el-option v-for="dict in dict.type.sys_recordstatus" :key="dict.value" :label="dict.label"
+                  :value="dict.value" />
+              </el-select>
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="20">
             <el-form-item label="鍑哄樊浜嬬敱" prop="reason">
               <el-input v-model="form.reason" placeholder="鍑哄樊浜嬬敱" />
             </el-form-item>
           </el-col>
         </el-row>
-        <el-row>
-          <el-col :span="21">
-            <el-form-item label="澶囨敞" prop="remark">
-              <el-input v-model="form.remark" placeholder="涓撹亴浜哄憳 鍗忚皟鍛�" />
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="8"> </el-col>
-        </el-row>
-
         <el-row type="flex" :gutter="10" align="right" class="mb8">
           <el-col :span="6">
             <el-button type="primary" plain icon="el-icon-plus" size="mini" disabled @click="addRow">鏂板涓�琛�</el-button>
           </el-col>
+        </el-row> <el-row>
+          <el-col :span="20">鎶ラ攢鏄庣粏淇℃伅锛�</el-col>
         </el-row>
         <el-row>
           <el-table :data="rbDetails" border highlight-current-row>
-            <el-table-column prop="starttime" slot="" label="鍑哄彂鏃ユ湡" align="center" width="150">
+            <el-table-column prop="orderno" slot="" label="搴忓彿" align="center" fixed width="65">
               <template slot-scope="scope">
-                <el-date-picker clearable size="small" style="width: 100%" v-model="scope.row.starttime" type="date"
-                  value-format="yyyy-MM-dd HH:mm:ss" placeholder="鍑哄彂鏃ユ湡" @change="getStandard(scope.row)">
-                </el-date-picker>
+                <el-input v-model="scope.row.orderno" placeholder="搴忓彿" />
+              </template>
+            </el-table-column>
+            <!--涓婚敭銆佸涓嶅睍绀�-->
+            <el-table-column prop="id" slot="" label="涓婚敭" align="center" fixed width="95" v-if="false">
+              <template slot-scope="scope">
+                <el-input v-model="scope.row.id" placeholder="id" />
+              </template>
+            </el-table-column>
+            <el-table-column prop="rbid" slot="" label="澶栭敭" align="center" fixed width="95" v-if="false">
+              <template slot-scope="scope">
+                <el-input v-model="scope.row.rbid" placeholder="rbid" />
               </template>
             </el-table-column>
 
-            <el-table-column prop="departure" slot="" label="鍑哄彂鍦扮偣" align="center" width="120">
+            <el-table-column prop="persontype" slot="" label="浜哄憳绫诲埆" align="center" fixed width="130">
               <template slot-scope="scope">
-                <el-input v-model="scope.row.departure" placeholder="鍑哄彂鍦扮偣" />
+                <el-select v-model="scope.row.persontype" value-key="value" placeholder="浜哄憳绫诲埆"
+                  @change="getPersons(scope.row)">
+                  <el-option v-for="dict in dict.type.sys_travelexpensebelong" :key="dict.value" :label="dict.label"
+                    :value="dict.label"></el-option>
+
+                </el-select>
               </template>
             </el-table-column>
-            <el-table-column prop="endtime" slot="" label="鍒拌揪鏃ユ湡" align="center" width="150">
+            <el-table-column prop="personname" slot="" label="璐圭敤浜哄憳" align="center" fixed width="110">
               <template slot-scope="scope">
-                <el-date-picker clearable size="small" style="width: 100%" v-model="scope.row.endtime" type="date"
-                  value-format="yyyy-MM-dd HH:mm:ss" placeholder="鍒拌揪鏃ユ湡">
+                <el-select v-model="scope.row.personname" clearable filterable allow-create default-first-option
+                  placeholder="璇烽�夋嫨" @focus1="getPersons(scope.row)">
+                  <el-option v-for="item in personsSel" :key="item.reportNo" :label="item.reportName"
+                    :value="item.reportName">
+                  </el-option>
+                </el-select>
+              </template>
+            </el-table-column>
+            <el-table-column prop="starttime" slot="" label="寮�濮嬫棩鏈�" fixed align="center" width="150">
+              <template slot-scope="scope">
+                <el-date-picker :picker-options="{
+                  disabledDate: time => {
+                    if (scope.row.endtime) { return time.getTime() > new Date(scope.row.endtime.replace(/-/g, '/')) }
+                  }
+                }" clearable size="small" style="width: 100%" v-model="scope.row.starttime" type="date"
+                  value-format="yyyy-MM-dd HH:mm:ss" placeholder="寮�濮嬫棩鏈�" @blur="getallowance(scope.row)">
                 </el-date-picker>
               </template>
             </el-table-column>
-            <!-- <el-table-column
-              label="鍒拌揪鍦扮偣"
-              prop="destination"
-              align="center"
-              width="320"
-            >
+            <el-table-column prop="endtime" slot="" label="缁撴潫鏃ユ湡" align="center" fixed width="150">
               <template slot-scope="scope">
-                <li_area_select
-                  :ref="'residenceSelect_' + scope.row.index"
-                  v-model="scope.row.searchAddress"
-                  @change="selcetdestination(scope.row)"
-                ></li_area_select>
-              </template>
-            </el-table-column> --><el-table-column label="鍒拌揪鍦扮偣" prop="destination" align="center" width="320">
-              <template slot-scope="scope">
-                <el-input v-model="scope.row.destination" placeholder="鍑哄彂鍦扮偣" />
+                <el-date-picker :picker-options="{
+                  disabledDate: time => {
+                    if (scope.row.starttime) { return time.getTime() < new Date(scope.row.starttime.replace(/-/g, '/')) }
+                  }
+                }" clearable size="small" style="width: 100%" v-model="scope.row.endtime" type="date"
+                  value-format="yyyy-MM-dd HH:mm:ss" placeholder="缁撴潫鏃ユ湡" @blur="getallowance(scope.row)">
+                </el-date-picker>
               </template>
             </el-table-column>
-            <el-table-column prop="days" label="澶╂暟" width="80" align="center">
+            <el-table-column prop="departure" slot="" label="鍑哄彂鍦�" align="center" width="100">
+              <template slot-scope="scope">
+                <el-input v-model="scope.row.departure" placeholder="鍑哄彂鍦�" />
+              </template>
+            </el-table-column>
+            <el-table-column label="鍒拌揪鍦�" prop="destination2" align="center" width="140">
+              <template slot-scope="scope">
+                <!--  <el-input v-model="scope.row.destination" placeholder="鍒拌揪鍦�" @blur="getallowance(scope.row)" /> -->
+
+                <el-select filterable allow-create v-model="scope.row.destination" value-key="value" placeholder="鍒拌揪鍦�"
+                  @change="getallowance2(scope.row, scope.row.destination)">
+                  <el-option v-for="dict in dict.type.sys_area_name" :key="dict.value" :label="dict.label"
+                    :value="dict.value"></el-option>
+
+                </el-select>
+              </template>
+            </el-table-column>
+            <el-table-column prop="days" label="澶╂暟" width="65" align="center">
               <template slot-scope="scope">
                 <el-input v-model="scope.row.days" @blur="getStandard(scope.row)" placeholder="澶╂暟" />
               </template>
             </el-table-column>
-            <el-table-column prop="traffictype" label="浜ら�氬伐鍏�" align="center" width="120">
+            <el-table-column prop="traffictype" label="鍑哄彂浜ら�氬伐鍏�" align="center" width="100">
               <template slot-scope="scope">
-                <el-input v-model="scope.row.traffictype" placeholder="浜ら�氬伐鍏�" />
+                <el-select v-model="scope.row.traffictype" placeholder="鍑哄彂浜ら�氬伐鍏�">
+                  <el-option v-for="dict in dict.type.sys_traffictype" :key="dict.value" :label="dict.label"
+                    :value="dict.label"></el-option>
+                </el-select>
               </template>
             </el-table-column>
-            <el-table-column prop="trafficexpense" label="浜ら�氳垂" align="center" width="100">
+            <el-table-column prop="traffictype2" label="杩斿洖浜ら�氬伐鍏�" align="center" width="100">
+              <template slot-scope="scope">
+                <el-select v-model="scope.row.traffictype2" placeholder="杩斿洖浜ら�氬伐鍏�">
+                  <el-option v-for="dict in dict.type.sys_traffictype" :key="dict.value" :label="dict.label"
+                    :value="dict.label"></el-option>
+                </el-select>
+              </template>
+            </el-table-column>
+            <el-table-column prop="trafficexpense" label="浜ら�氳垂" align="center" width="80">
               <template slot-scope="scope">
                 <el-input v-model="scope.row.trafficexpense" placeholder="浜ら�氳垂" @blur="(val) => {
-                    sumTotalFee(scope.row);
-                  }
+                  sumTotalFee();
+                }
                   " />
               </template>
             </el-table-column>
+            <!--
             <el-table-column prop="cityfee" label="甯傚唴浜ら�氳垂" align="center" width="100">
               <template slot-scope="scope">
-                <el-input v-model="scope.row.cityfee" placeholder="甯傚唴浜ら�氳垂" @blur="(val) => {
-                    sumTotalFee(scope.row);
+                <el-input v-model="scope.row.cityfee" placeholder="甯傚唴浜ら�氳垂" @blur="
+                  (val) => {
+                    sumTotalFee();
                   }
-                  ">{{ Number(scope.row.cityfee).toFixed(2) }}
+                ">{{ Number(scope.row.cityfee).toFixed(2) }}
                 </el-input>
               </template>
             </el-table-column>
-            <el-table-column prop="hotelexpense" label="浣忓璐�" align="center" width="100">
+                                                                                                                                      -->
+            <el-table-column prop="hotelexpense" label="浣忓璐�" align="center" width="80">
               <template slot-scope="scope">
                 <el-input v-model="scope.row.hotelexpense" placeholder="浣忓璐�" @blur="(val) => {
-                    sumTotalFee(scope.row);
-                  }
+                  sumTotalFee();
+                }
                   " />
               </template>
             </el-table-column>
-            <el-table-column prop="otherexpense" label="鏉傝垂" align="center" width="100">
-              <template slot-scope="scope">
-                <el-input v-model="scope.row.otherexpense" placeholder="鏉傝垂" @blur="(val) => {
-                    sumTotalFee(scope.row);
-                  }
-                  " />
-              </template>
-            </el-table-column>
-            <el-table-column prop="foodexpenses" label="浼欓璐规姤閿�" align="center" width="100">
+
+            <el-table-column prop="foodexpenses" label="椁愯垂鎶ラ攢" align="center" width="80">
               <template slot-scope="scope">
                 <el-input v-model="scope.row.foodexpenses" placeholder="浼欓璐规姤閿�" @blur="(val) => {
-                    sumTotalFee(scope.row);
-                  }
+                  sumTotalFee();
+                }
                   " />
               </template>
             </el-table-column>
-            <el-table-column prop="foodallowance" label="浼欓璐硅ˉ鍔�" align="center" width="100">
+            <el-table-column prop="foodallowance" label="浼欓琛ュ姪" align="center" width="80">
               <template slot-scope="scope">
                 <el-input v-model="scope.row.foodallowance" placeholder="浼欓璐硅ˉ鍔�" @blur="(val) => {
-                    sumTotalFee(scope.row);
-                  }
+                  sumTotalFee();
+                }
                   " />
-              </template> </el-table-column><el-table-column prop="otherfeeamount" label="鍏朵粬璐圭敤" align="center"
-              width="100">
+              </template>
+            </el-table-column>
+            <el-table-column prop="otherexpense" label="鍏潅璐硅ˉ鍔�" align="center" width="80">
+              <template slot-scope="scope">
+                <el-input v-model="scope.row.otherexpense" placeholder="鏉傝垂" @blur="(val) => {
+                  sumTotalFee();
+                }
+                  " />
+              </template>
+            </el-table-column>
+
+            <el-table-column prop="otherfeeamount" label="鍏朵粬璐圭敤" align="center" width="90">
               <template slot-scope="scope">
                 <el-input v-model="scope.row.otherfeeamount" placeholder="鍏朵粬璐圭敤" @blur="(val) => {
-                    sumTotalFee(scope.row);
-                  }
+                  sumTotalFee();
+                }
                   " />
               </template>
             </el-table-column>
@@ -304,14 +384,13 @@
                 <el-input v-model="scope.row.otherfeedesc" placeholder="鍏朵粬璐圭敤璇存槑" />
               </template>
             </el-table-column>
-            <el-table-column prop="total" label="鍚堣" align="center" width="140">
+
+            <el-table-column prop="total" label="鍚堣" align="center" width="110">
               <template slot-scope="scope">
                 <el-input v-model="scope.row.total" placeholder="鍚堣" />
               </template>
             </el-table-column>
             <el-table-column fixed="right" label="鎿嶄綔" align="center" width="120">
-              <!-- deleteRow(scope.$index, rbDetails) -->
-
               <template slot-scope="scope">
                 <el-button @click.native.prevent="
                   deleteRow(scope.$index, rbDetails, scope.row)
@@ -323,28 +402,7 @@
           </el-table>
         </el-row>
 
-        <el-row style="margin-top: 10px">
-          <el-col :span="6">
-            <el-form-item label="鎶ラ攢鍚堣" prop="amountrequested">
-              <el-input v-model="form.amountrequested" placeholder="鎶ラ攢鍚堣" />
-            </el-form-item>
-          </el-col>
-          <el-col :span="6">
-            <el-form-item label="棰嗘閲戦" prop="amountrequested">
-              <el-input v-model="form.amountrequested" placeholder="棰嗘閲戦" />
-            </el-form-item>
-          </el-col>
-          <el-col :span="6">
-            <el-form-item label="澶у啓" prop="bigstrmoney">
-              <el-input v-model="form.bigstrmoney" placeholder="棰嗘閲戦" />
-            </el-form-item>
-          </el-col>
-          <!-- <el-col :span="6">
-            <el-form-item label="瀹℃牳鎰忚" prop="recordstatus">
-              <el-input v-model="form.recordstatus" placeholder="瀹℃牳鎰忚" />
-            </el-form-item>
-          </el-col> -->
-        </el-row>
+        <!--
         <el-row>
           <el-col :span="6">
             <el-form-item label="涓績璐熻矗浜�" prop="opochecker">
@@ -375,8 +433,108 @@
             <el-form-item label="璐㈠姟瀹℃牳" prop="financechecher">
               <el-input v-model="form.financechecher" placeholder="璐㈠姟瀹℃牳" />
             </el-form-item> </el-col></el-row>
+          -->
+        <el-row>
+          <el-col :span="20">鎶ラ攢璇锋鏄庣粏锛�</el-col>
+        </el-row>
+        <el-row style="margin-top: 30px">
+          <el-table :data="rbPayees" border highlight-current-row>
+            <el-table-column prop="orderno" slot="" label="搴忓彿" align="center" fixed width="65">
+              <template slot-scope="scope">
+                <el-input v-model="scope.row.orderno" placeholder="搴忓彿" />
+              </template>
+            </el-table-column>
+
+            <!--涓婚敭銆佸閿笉灞曠ず-->
+            <el-table-column prop="id" slot="" label="涓婚敭" align="center" fixed width="95" v-if="false">
+              <template slot-scope="scope">
+                <el-input v-model="scope.row.id" placeholder="id" />
+              </template>
+            </el-table-column>
+            <el-table-column prop="rbid" slot="" label="澶栭敭" align="center" fixed width="95" v-if="false">
+              <template slot-scope="scope">
+                <el-input v-model="scope.row.rbid" placeholder="rbid" />
+              </template>
+            </el-table-column>
+
+            <el-table-column prop="persontype" slot="" label="浜哄憳绫诲埆" align="center" fixed width="130">
+              <template slot-scope="scope">
+                <el-select v-model="scope.row.persontype" value-key="value" placeholder="浜哄憳绫诲埆"
+                  @change="getPersons(scope.row)">
+                  <el-option v-for="dict in dict.type.sys_travelexpensebelong" :key="dict.value" :label="dict.label"
+                    :value="dict.label"></el-option>
+                </el-select>
+              </template>
+            </el-table-column>
+            <el-table-column prop="personname" slot="" label="鏀舵浜�" align="center" fixed width="110">
+              <template slot-scope="scope">
+                <el-select v-model="scope.row.personname" clearable filterable allow-create ref="getReportname"
+                  default-first-option placeholder="璇烽�夋嫨" @change="getAccountinfo2(scope.row, scope.row.persontype)">
+                  <el-option v-for="item in personsSel" :key="item.reportNo" :label="item.reportName"
+                    :value="item.reportName">
+                  </el-option>
+                </el-select>
+              </template>
+            </el-table-column>
+            <el-table-column prop="bankname" slot="" label="閾惰鍚嶇О" align="center" fixed width="200">
+              <template slot-scope="scope">
+                <el-input v-model="scope.row.bankname" placeholder="閾惰鍚嶇О" />
+              </template>
+            </el-table-column>
+            <el-table-column prop="bankcardno" slot="" label="閾惰鍗″彿" align="center" fixed width="200">
+              <template slot-scope="scope">
+                <el-input v-model="scope.row.bankcardno" placeholder="閾惰鍗″彿" />
+              </template>
+            </el-table-column>
+            <el-table-column prop="amount" slot="" label="鎵撴閲戦" align="center" fixed width="130">
+              <template slot-scope="scope">
+                <el-input v-model="scope.row.amount" placeholder="鎵撴閲戦" />
+              </template>
+            </el-table-column>
+            <el-table-column prop="remark" slot="" label="璇锋璇存槑" align="center" fixed width="280">
+              <template slot-scope="scope">
+                <el-input v-model="scope.row.remark" placeholder="璇存槑" />
+              </template>
+            </el-table-column><el-table-column prop="paiddate" slot="" label="鎵撴鏃ユ湡" fixed align="center" width="150">
+              <template slot-scope="scope">
+                <el-date-picker clearable size="small" style="width: 100%" v-model="scope.row.paiddate" type="date"
+                  value-format="yyyy-MM-dd HH:mm:ss" placeholder="鎵撴鏃ユ湡" :disabled="true" @blur="getallowance(scope.row)">
+                </el-date-picker>
+              </template>
+            </el-table-column>
+            <el-table-column label="鎿嶄綔" align="center" width="100" v-if="dialogType == 'edit'">
+              <template slot-scope="scope">
+                <el-button type="text" size="mini" @click="addPayeeRow(scope.$index)">鏂板</el-button>
+                <el-button @click.native.prevent="deletePayeeRow(scope.$index, rbPayees, scope.row)
+                  " type="text" size="small">
+                  鍒犻櫎
+                </el-button>
+              </template>
+            </el-table-column>
+          </el-table>
+        </el-row>
+        <el-row>
+          <el-col :span="20">鎶ラ攢闄勪欢锛�</el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="14">
+            <el-form-item label="鏂囦欢涓婁紶" align="left" prop="annexfiles">
+              <!-- <file-upload ref="fileUpload" :fileType=fileType :limit="1" :on-success="handleUploadSuccess"></file-upload> -->
+              <el-upload size="mini" class="upload-demo" :action="uploadFileUrl" :file-list="fileList" multiple :limit="5"
+                :headers="headers" :on-success="(response, file, fileList) =>
+                  uploadSccess(response, file, fileList)
+                  " :on-preview="downFile" :disabled='dialogType == "detail"' :on-error="handleUploadError"
+                :on-exceed="handleExceed" :on-remove="remove" accept="image/*,.pdf">
+                <el-button :disabled='dialogType == "detail"' size="small" type="primary">涓婁紶</el-button>
+              </el-upload>
+            </el-form-item>
+          </el-col>
+        </el-row>
       </el-form>
       <el-form label-width="120px">
+        <el-row>
+          <el-col :span="20">鎶ラ攢瀹℃壒璁板綍锛�</el-col>
+        </el-row>
         <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" />
@@ -390,7 +548,7 @@
         <el-row style="margin-top: 25px; margin-bottom: 5px" v-if="dialogType == 'edit'">
           <el-col :span="7">
             <el-form-item label="瀹℃牳缁撴灉" align="left">
-              <el-radio-group v-model="newobj.flowlevelone" align="left">
+              <el-radio-group v-model="checkObj.flowlevelone" align="left">
                 <el-radio label="1">閫氳繃</el-radio>
                 <el-radio label="2">涓嶉�氳繃</el-radio>
               </el-radio-group>
@@ -400,7 +558,7 @@
         <el-row v-if="dialogType == 'edit'">
           <el-col :span="17">
             <el-form-item label="瀹℃牳澶囨敞" align="left">
-              <el-input v-model="newobj.flowconclusion" placeholder="澶囨敞" />
+              <el-input v-model="checkObj.flowconclusion" placeholder="澶囨敞" />
             </el-form-item>
           </el-col>
         </el-row>
@@ -426,7 +584,7 @@
   //鑾峰彇鍦板競瀵瑰簲鍩哄噯閲戦
   getstandardRMB,
   checkfund,
-  listbypowerone,
+  listbypowerone, addShareData
 } from "@/api/project/reimbursement";
 import {
   provinceAndCityData,
@@ -456,6 +614,7 @@
   exportReimbursementdetail,
   getTravelStandard,
 } from "@/api/project/reimbursementdetail";
+import { listReimbursementpayee, addReimbursementpayee, updateReimbursementpayee } from "@/api/project/reimbursementpayee";
 import Li_area_select from "@/components/Address";
 import { getUserProfile } from "@/api/system/user";
 
@@ -474,7 +633,7 @@
   ],
   data() {
     return {
-      newobj: {
+      checkObj: {
         flowlevelone: null,
         flowconclusion: null,
         fundid: null,
@@ -532,6 +691,10 @@
         APPLICATIONENDTIME: null,
         CHECKFLAG: 1,
       },
+      //鏌ヨ浠樻
+      queryParamsPayee: {
+        rbid: null,
+      },
       // 琛ㄥ崟鍙傛暟
       form: {},
       reimbursementList: [],
@@ -545,8 +708,11 @@
         bigstrmoney: null,
       },
       rbDetails: [],
+      rbPayees: [],
       baselist: [],
       balist: [],
+      //闄勪欢鏂囦欢
+      fileList: [],
       standardlevel: 0,
       createTime: [],
       //寮圭獥璇︽儏--show锛沞dit
@@ -562,163 +728,52 @@
   },
   methods: {
     selectapplication() {
-      console.log("鏃堕棿", this.createTime);
       this.queryParams.APPLICATIONBEGTIME = this.createTime[0];
       this.queryParams.APPLICATIONENDTIME = this.createTime[1];
     },
     getList() {
       this.loading = true;
       listbypowerone(this.queryParams).then((response) => {
-        console.log("宸梾璐规暟鎹垪琛�:", response);
-        debugger;
         this.reimbursementList = response.rows;
         this.total = response.total;
         this.loading = false;
       });
     },
-    getgetUserProfile() {
+
+    getUserProfile() {
       getUserProfile().then((response) => {
         this.standardlevel = response.data.standardlevel;
       });
     },
-    getlistDonatebaseinfo() {
-      listDonatebaseinfo().then((res) => {
-        let list = res.rows;
-        let baseinfolist = [];
-        this.balist = list;
-        list.forEach((element) => {
-          baseinfolist.push({
-            infoid: element.id,
-            name: element.name,
-          });
-        });
-        console.log("缁勫悎鐨勬柊鏁扮粍", baseinfolist);
-        if (baseinfolist != 0) {
-          this.baselist = baseinfolist;
-          console.log("11111111", this.baselist);
-        }
-      });
-    },
+
     checksubmit() {
-      console.log("formformform", this.newobj);
       let checkfundobj = {
-        flowconclusion: this.newobj.flowlevelone,
-        flowcontent: this.newobj.flowconclusion,
-        fundid: this.newobj.fundid,
+        flowconclusion: this.checkObj.flowlevelone,
+        flowcontent: this.checkObj.flowconclusion,
+        fundid: this.checkObj.fundid,
       };
+
       if (
         checkfundobj.flowconclusion == null ||
         checkfundobj.flowconclusion == undefined ||
         checkfundobj.flowconclusion == ""
       ) {
-        this.$modal.msgError("璇烽�夋嫨瀹℃牳缁撹!");
+        this.$modal.msgError("璇烽�夋嫨瀹℃牳缁撹鍚庡啀淇濆瓨瀹℃壒缁撴灉!");
         return;
       }
+
       checkfund(checkfundobj).then((res) => {
         this.reset();
         this.open = false;
         this.getList();
         this.$modal.msgSuccess("瀹℃牳瀹屾垚!");
+      });
+    },
 
-      });
-    },
-    getStandard(row) {
-      if (
-        row.searchAddress.sheng != "" &&
-        row.searchAddress.shi != "" &&
-        row.searchAddress.qu != "" &&
-        row.starttime != "" &&
-        row.starttime != null &&
-        row.days != ""
-      ) {
-        //璁$畻浣忓璐�
-        let info = {
-          pabegindate: this.$moment(row.starttime).format("YYYY-MM-DD"),
-          pacitycode: this.$refs["residenceSelect_" + row.index].getShi(),
-          paenddate: this.$moment(row.starttime)
-            .add(row.days, "day")
-            .format("YYYY-MM-DD"),
-          paprovincecode: this.$refs["residenceSelect_" + row.index].getSheng(),
-          patowncode: this.$refs["residenceSelect_" + row.index].getQu(),
-          standardlevel: this.standardlevel,
-        };
-        getTravelStandard(info)
-          .then((response) => {
-            let fee = 0;
-            for (let i = 0; i < response.data.length; i++) {
-              fee += response.data[i].reimbursementamout;
-            }
-            row.hotelexpense = fee;
-          })
-          .finally(() => {
-            this.sumTotalFee(row);
-          });
-      }
-    },
-    selcetdestination(row) {
-      console.log("鐩殑鍦伴�夋嫨浜嬩欢", row, row.searchAddress);
-      //row.searchAddress = this.searchAddress;
-      if (
-        row.searchAddress.sheng != "" &&
-        row.searchAddress.shi != "" &&
-        row.searchAddress.qu != ""
-      ) {
-        row.destination =
-          row.searchAddress.sheng +
-          row.searchAddress.shi +
-          row.searchAddress.qu;
-        row.travelprovincename = row.searchAddress.sheng;
-        row.travelprovince =
-          this.$refs["residenceSelect_" + row.index].getSheng();
-        row.travelcityname = row.searchAddress.shi;
-        row.travelcity = this.$refs["residenceSelect_" + row.index].getShi();
-        row.traveltownname = row.searchAddress.qu;
-        row.traveltown = this.$refs["residenceSelect_" + row.index].getQu();
-        this.getStandard(row);
-      }
-    },
-    getCityData(e) {
-      console.log("dwadwadwadawda", e, this.selectedOptions);
-      let a = this.getCodeToText(this.selectedOptions);
-      e.destination = a;
-      console.log("寰楀埌鐨勫湴甯�", e.destination);
-    },
-    getCodeToText(codeArray) {
-      let area = "";
-      switch (codeArray.length) {
-        case 1:
-          area += CodeToText[codeArray[0]];
-          break;
-        case 2:
-          area += CodeToText[codeArray[0]] + "/" + CodeToText[codeArray[1]];
-          break;
-        case 3:
-          area +=
-            CodeToText[codeArray[0]] +
-            "/" +
-            CodeToText[codeArray[1]] +
-            "/" +
-            CodeToText[codeArray[2]];
-          break;
-        default:
-          break;
-      }
-      return area;
-    },
-    selectbaseinfo() {
-      console.log("infoid", this.form.infoid);
-      let list = this.balist;
-      list.forEach((item) => {
-        if ((item.id = this.form.infoid)) {
-          //  console.log('鐩稿悓鐨�',item.id,item)
-          this.form.donorno = item.donorno;
-          this.form.donorname = item.name;
-        }
-      });
-    },
     onpick(e) {
       // console.log(e,this.value1)
     },
+
     gettable(e) {
       const id = e.id;
       getdownload(e.id).then((res) => {
@@ -734,15 +789,16 @@
         aEle.click();
       });
     },
-    /** 鏌ヨ鎶ラ攢鐢宠鍒楄〃 */
 
     // 鍙栨秷鎸夐挳
     cancel() {
       this.open = false;
       this.reset();
     },
+
     // 琛ㄥ崟閲嶇疆
     reset() {
+      this.fileList = [];
       this.form = {
         bigstrmoney: null,
         id: null,
@@ -783,6 +839,7 @@
         uploadflag: null,
         uploadtime: null,
       };
+
       this.rbDetails = [
         {
           index: 0,
@@ -818,25 +875,38 @@
           total: 0,
         },
       ];
+
+      this.rbDetails = [{
+        id: null,
+        personType: null,
+        personname: null,
+        bankname: null,
+        bankcardno: null,
+        paiddate: null,
+        remark: null,
+        orderno: null,
+        personname: null,
+        amount: null,
+      },
+      ];
       this.resetForm("form");
     },
     //
     handup(e) {
       console.log("涓婃姤", e);
     },
+
     tojust(row) {
-      console.log("row", row);
       this.checkopen = true;
-      this.newobj.fundid = row;
-      console.log("111111", this.newobj.fundid);
-      // this.newobj.fundid=row.id;
+      this.checkObj.fundid = row;
+      // this.checkObj.fundid=row.id;
       let listFundflowparams = {
         // fundid:row.id,
         fundid: 75,
         fundtype: 1,
       };
+
       listFundflow(listFundflowparams).then((res) => {
-        console.log("聽fundtype:聽1", res);
         this.fundflowList = res.rows;
       });
     },
@@ -870,7 +940,7 @@
     handleUpdate(row) {
       this.dialogType = "edit";
       const id = row.id || this.ids;
-      this.newobj.fundid = id;
+      this.checkObj.fundid = id;
       let listFundflowparams = {
         fundid: row.id,
         fundtype: 1,
@@ -879,16 +949,15 @@
         this.fundflowList = res.rows;
       });
       this.reset();
-      debugger
       getReimbursement(id).then((response1) => {
         this.form = response1.data;
-        console.log(this.form);
-        console.log(response1.data);
         this.open = true;
         this.title = "淇敼鎶ラ攢鐢宠";
         let ids = response1.data.id;
+
+        this.fileList = this.form.annexfiles ? this.form.annexfiles.split(",").map(item => ({ url: item, name: item })) : []
+
         getReimbursementdetaillist(ids).then((res2) => {
-          console.log("淇敼鐨刣etails鏁版嵁", res2);
           this.rbDetails = res2.data;
           for (let i = 0; i < this.rbDetails.length; i++) {
             this.rbDetails[i].index = i;
@@ -899,6 +968,12 @@
             };
           }
           //this.sumTotalFee();
+        });
+        //鑾峰彇鎶ラ攢鎵撴淇℃伅
+        this.queryParamsPayee.rbid = ids;
+        listReimbursementpayee(this.queryParamsPayee).then((res) => {
+          this.rbPayees = res.rows;
+          if (this.rbPayees.length == 0) { this.addPayeeRow(0); }
         });
       });
     },
@@ -920,6 +995,7 @@
         let ids = response.data.id;
         getReimbursementdetaillist(ids).then((res) => {
           this.rbDetails = res.data;
+          console.log("getReimbursementdetaillist", res);
           for (let i = 0; i < this.rbDetails.length; i++) {
             this.rbDetails[i].index = i;
             this.rbDetails[i].searchAddress = {
@@ -928,7 +1004,13 @@
               qu: this.rbDetails[i].traveltownname,
             };
           }
-          this.sumTotalFee();
+        });
+
+        //鑾峰彇鎶ラ攢鎵撴淇℃伅
+        this.queryParamsPayee.rbid = ids;
+        listReimbursementpayee(this.queryParamsPayee).then((res) => {
+          this.rbPayees = res.rows;
+          if (this.rbPayees.length == 0) { this.addPayeeRow(0); }
         });
       });
     },
@@ -941,15 +1023,11 @@
           //  })
 
           if (this.form.id != null) {
-            console.log("澶у啓", this.form.bigstrmoney);
             updateReimbursement(this.form).then((response) => {
-              // console.log('鏇存柊涓昏〃鐨勪俊鎭�',response);
               for (let i = 0; i < this.rbDetails.length; i++) {
-                console.log("浣犲ソ", this.rbDetails[i].rbid);
                 if (this.rbDetails[i].rbid != null) {
                   updateReimbursementdetail(this.rbDetails[i]);
                 } else {
-                  console.log("淇敼鏃舵柊澧炵殑id", this.form.id);
                   this.rbDetails[i].rbid = this.form.id;
                   addReimbursementdetail(this.rbDetails[i]);
                 }
@@ -963,22 +1041,15 @@
               this.$modal.msgSuccess("鏂板鎴愬姛");
               this.open = false;
               this.getList();
-              console.log(
-                "涓昏〃鏂板鎴愬姛浜嗭細",
-                response,
-                this.rbDetails
-              );
               listReimbursementdetailid().then((res) => {
                 let id = res.data;
                 for (let i = 0; i < this.rbDetails.length; i++) {
                   this.rbDetails[i].rbid = id;
                   addReimbursementdetail(this.rbDetails[i]);
                 }
-                console.log("idaaaaaa:", res);
               });
               //details鏂板
-
-              // rbDetails
+              //rbDetails
             });
           }
         }
@@ -1056,8 +1127,6 @@
     },
 
     deleteRow(index, rows, row) {
-      // console.log('rows',rows)
-
       this.$confirm("鏄惁纭鍒犻櫎?", "鎻愮ず", {
         confirmButtonText: "纭畾",
         cancelButtonText: "鍙栨秷",
@@ -1074,7 +1143,6 @@
 
     //璁$畻璐圭敤鍚堣
     sumTotalFee(scope) {
-      // debugger;
       let allSum = 0;
       try {
         for (let i = 0; i < this.rbDetails.length; i++) {
@@ -1215,6 +1283,30 @@
       }
       return chineseStr;
     },
+
+    //闄勪欢澶勭悊
+    handleUploadError() { },
+
+    remove(file) {
+      this.fileList.splice(this.fileList.indexOf(file), 1)
+    },
+
+    handleExceed() {
+      this.$message.error(`涓婁紶鏂囦欢鏁伴噺涓嶈兘瓒呰繃 ${5} 涓�!`);
+    },
+
+    //鏂囦欢涓婁紶鎴愬姛鍥炶皟
+    uploadSccess(response, file, fileList) {
+      //鑾峰彇闄勪欢淇℃伅浣嶇疆
+      if (response.code == 200) {
+        this.form.filename = file.raw.name;
+        //console.log(file);
+        this.$modal.msgSuccess(response.msg);
+        this.fileList.push({ name: response.fileName, url: response.fileName });
+      } else {
+        this.$modal.msgError(response.msg);
+      }
+    },
   },
 };
 </script>
\ No newline at end of file

--
Gitblit v1.9.3