From 0548cc15e54656285baf36b3494f9456b16f975f Mon Sep 17 00:00:00 2001
From: zhizhijie <zhizhijie@users.noreply.gitee.com>
Date: 星期二, 08 九月 2026 17:14:40 +0800
Subject: [PATCH] fix: 8条整改落地——数据查看滚动加载/规则阈值联动通用化/旅客运政导入兼容.xls/审核月报弹窗删企业解释列/汇总大表导出无筛选自适应/报表Tab重组/筛选栏与月份年份顺序 + 测试报告与工作日结

---
 traffic-audit-web/src/views/DataView.vue |   36 ++++++++++++++++++++++++++++++++++++
 1 files changed, 36 insertions(+), 0 deletions(-)

diff --git a/traffic-audit-web/src/views/DataView.vue b/traffic-audit-web/src/views/DataView.vue
index 1ec3c5e..3dce26a 100644
--- a/traffic-audit-web/src/views/DataView.vue
+++ b/traffic-audit-web/src/views/DataView.vue
@@ -111,7 +111,19 @@
         this.$message.error('鏁版嵁鏌ヨ澶辫触')
       }).finally(() => {
         this.loading = false
+        this.$nextTick(() => this.attachBodyScroll())
       })
+    },
+    // el-table 鍥哄畾楂樺害鍚庯紝鐪熸鐨勭珫鍚戞粴鍔ㄥ鍣ㄦ槸鍐呴儴鐨� body-wrapper锛堥〉闈㈡湰韬笉婊氬姩锛�
+    attachBodyScroll() {
+      const wrap = this.$refs.tableWrap
+      if (!wrap) return
+      const bw = wrap.querySelector('.el-table__body-wrapper')
+      if (bw && bw._vwScrollHandler !== this.onScroll) {
+        if (bw._vwScrollHandler) bw.removeEventListener('scroll', bw._vwScrollHandler)
+        bw.addEventListener('scroll', this.onScroll, { passive: true })
+        bw._vwScrollHandler = this.onScroll
+      }
     },
     // 婊氬姩鍒板簳閮ㄨ嚜鍔ㄨ拷鍔犱笅涓�椤碉紙淇濈暀鎵嬪姩鍒嗛〉璺抽〉鑳藉姏锛�
     loadMore() {
@@ -143,6 +155,7 @@
         this.$message.error('鍔犺浇鏇村澶辫触')
       }).finally(() => {
         this.loadingMore = false
+        this.$nextTick(() => this.attachBodyScroll())
       })
     },
     onScroll(e) {
@@ -189,17 +202,39 @@
       // capture=true锛歟l-table 鍐呴儴 body-wrapper 鐨勬粴鍔ㄥ湪鎹曡幏闃舵涔熻兘鏀跺埌
       this.$refs.tableWrap.addEventListener('scroll', this.onScroll, { passive: true, capture: true })
     }
+    this.$nextTick(() => this.attachBodyScroll())
   },
   beforeDestroy() {
     window.removeEventListener('scroll', this.onScroll)
     if (this.$refs.tableWrap) {
       this.$refs.tableWrap.removeEventListener('scroll', this.onScroll, { capture: true })
+      const bw = this.$refs.tableWrap.querySelector('.el-table__body-wrapper')
+      if (bw && bw._vwScrollHandler) bw.removeEventListener('scroll', bw._vwScrollHandler)
     }
   }
 }
 </script>
 <style scoped>
 .el-header { background: #409EFF; color: white; line-height: 60px; font-size: 18px; }
+#app .table-wrap {
+  display: flex;
+  flex-direction: column;
+  height: calc(100vh - 330px);
+  min-height: 300px;
+}
+#app .table-area {
+  flex: 1 1 auto;
+  min-height: 0;
+  overflow: hidden;
+}
+#app .table-area .el-table {
+  width: 100%;
+  height: 100%;
+}
+#app .table-wrap .el-pagination {
+  flex: none;
+  margin-top: 8px;
+}
 #app .table-area:fullscreen {
   padding: 20px;
   background: #fff;
@@ -211,6 +246,7 @@
   overflow: auto;
   display: flex;
   flex-direction: column;
+  height: 100vh;
 }
 #app .table-wrap:fullscreen .table-area {
   flex: 1 1 auto;

--
Gitblit v1.9.1