Parcourir la source

feat: 预收预付增加tab

liujt il y a 3 semaines
Parent
commit
db2506528e

+ 5 - 1
src/views/financialManage/advanceReceipt/components/searchForm.vue

@@ -1,6 +1,6 @@
 <!-- 预收款搜索表单 -->
 <template>
-  <seekPage :seekList="seekList" :formLength="3" @search="search"></seekPage>
+  <seekPage ref="seekPage" :seekList="seekList" :formLength="3" @search="search"></seekPage>
 </template>
 
 <script>
@@ -59,6 +59,10 @@
     methods: {
       search(e) {
         this.$emit('search', { ...e });
+      },
+      // 清空搜索条件
+      reset() {
+        this.$refs.seekPage.reset();
       }
     }
   };

+ 32 - 6
src/views/financialManage/advanceReceipt/index.vue

@@ -2,8 +2,17 @@
   <div class="ele-body">
     <el-card shadow="never" v-loading="loading">
       <div class="ele-border-lighter form-content" v-loading="loading">
-        <search-form @search="reload"> </search-form>
-
+        <search-form ref="searchFormRef" @search="reload"> </search-form>
+        <el-tabs @tab-click="tabClick" v-model="activeName" style="margin-bottom: 10px;">
+          <el-tab-pane
+            v-for="tab in tabOptions"
+            :key="tab.name"
+            :label="tab.label"
+            :name="tab.name"
+            v-if="!tab.permission || $hasPermission(tab.permission)"
+          >
+          </el-tab-pane>
+        </el-tabs>
         <!-- 数据表格 -->
         <ele-pro-table
           ref="table"
@@ -75,8 +84,9 @@
                 撤销
               </el-link>
             </template>
-            <template v-else-if="row.approvalStatus === 2">
+            <template v-else-if="row.status == 0">
               <el-link
+                v-if="$hasPermission('eom:finadvance:collect')"
                 type="primary"
                 :underline="false"
                 @click="handleCollect(row)"
@@ -92,9 +102,6 @@
                 完结
               </el-link>
             </template>
-            <template v-else>
-              <span>--</span>
-            </template>
           </template>
         </ele-pro-table>
       </div>
@@ -125,6 +132,17 @@
     },
     data() {
       return {
+        tabOptions: [
+          {
+            label: '未完结',
+            name: '0'
+          },
+          {
+            label: '完结',
+            name: '1',
+          },
+        ],
+        activeName: '0',
         selection: [],
         loading: false,
         columns: [
@@ -318,10 +336,18 @@
         return advanceReceiptPageList({
           pageNum: page,
           size: limit,
+          tab: this.activeName,
           ...where
         });
       },
 
+      tabClick() {
+        // 切换 tab 时清空搜索条件并重新查询数据
+        if (this.$refs.searchFormRef) {
+          this.$refs.searchFormRef.reset();
+        }
+      },
+
       /* 刷新表格 */
       reload(where) {
         this.$refs.table.reload({ page: 1, where });

+ 5 - 1
src/views/financialManage/prepayment/components/searchForm.vue

@@ -1,6 +1,6 @@
 <!-- 预付款搜索表单 -->
 <template>
-  <seekPage :seekList="seekList" :formLength="3" @search="search"></seekPage>
+  <seekPage ref="seekPage" :seekList="seekList" :formLength="3" @search="search"></seekPage>
 </template>
 
 <script>
@@ -59,6 +59,10 @@
     methods: {
       search(e) {
         this.$emit('search', { ...e });
+      },
+      // 清空搜索条件
+      reset() {
+        this.$refs.seekPage.reset();
       }
     }
   };

+ 31 - 1
src/views/financialManage/prepayment/index.vue

@@ -2,7 +2,18 @@
   <div class="ele-body">
     <el-card shadow="never" v-loading="loading">
       <div class="ele-border-lighter form-content" v-loading="loading">
-        <search-form @search="reload"> </search-form>
+        <search-form ref="searchFormRef" @search="reload"> </search-form>
+
+        <el-tabs @tab-click="tabClick" v-model="activeName" style="margin-bottom: 10px;">
+          <el-tab-pane
+            v-for="tab in tabOptions"
+            :key="tab.name"
+            :label="tab.label"
+            :name="tab.name"
+            v-if="!tab.permission || $hasPermission(tab.permission)"
+          >
+          </el-tab-pane>
+        </el-tabs>
 
         <!-- 数据表格 -->
         <ele-pro-table
@@ -143,6 +154,17 @@
     },
     data() {
       return {
+        tabOptions: [
+          {
+            label: '未完结',
+            name: '0'
+          },
+          {
+            label: '已完结',
+            name: '1'
+          }
+        ],
+        activeName: '0',
         selection: [],
         loading: false,
         processSubmitDialogFlag: false,
@@ -334,6 +356,7 @@
         return prepaymentPageList({
           pageNum: page,
           size: limit,
+          tab: this.activeName,
           ...where
         });
       },
@@ -343,6 +366,13 @@
         this.$refs.table.reload({ page: 1, where });
       },
 
+      // 切换 tab 时清空搜索条件并重新查询数据
+      tabClick() {
+        if (this.$refs.searchFormRef) {
+          this.$refs.searchFormRef.reset();
+        }
+      },
+
       // 新增编辑
       openEdit(type, row) {
         this.$refs.addDialogRef.open(type, row);