From bc1f1fe60d4ce20de619275806483a5d0b07f939 Mon Sep 17 00:00:00 2001
From: zhizhijie <zhizhijie@users.noreply.gitee.com>
Date: 星期五, 04 九月 2026 20:33:53 +0800
Subject: [PATCH] \ feat: 汇总大表生成支持toMonth裁剪(1-6月生成+1-7月扩列)及验证产物与测试报告\
---
traffic-audit-web/src/views/DataView.vue | 79 ++++++++++++++++++++++++++++++---------
1 files changed, 61 insertions(+), 18 deletions(-)
diff --git a/traffic-audit-web/src/views/DataView.vue b/traffic-audit-web/src/views/DataView.vue
index 1ece0a6..8ef5b0d 100644
--- a/traffic-audit-web/src/views/DataView.vue
+++ b/traffic-audit-web/src/views/DataView.vue
@@ -1,9 +1,9 @@
<template>
- <el-container>
- <el-header>浜ら�氱粺璁℃姤琛ㄥ鏍哥郴缁� - 鏁版嵁鏌ョ湅</el-header>
+ <el-container direction="vertical">
+ <app-header title="浜ら�氱粺璁℃姤琛ㄥ鏍哥郴缁� - 鏁版嵁鏌ョ湅"></app-header>
<el-container>
<el-aside width="200px">
- <el-menu router default-active="/data">
+ <el-menu ref="sideMenu" router :default-active="$route.path" @select="onMenuSelect">
<el-menu-item index="/dashboard">宸ヤ綔鍙�</el-menu-item>
<el-menu-item index="/import">鏁版嵁瀵煎叆</el-menu-item>
<el-menu-item index="/data">鏁版嵁鏌ョ湅</el-menu-item>
@@ -12,7 +12,7 @@
<el-menu-item index="/report">鎶ヨ〃鐢熸垚</el-menu-item>
<el-menu-item index="/rules">瑙勫垯绠$悊</el-menu-item>
<el-menu-item index="/users">鐢ㄦ埛绠$悊</el-menu-item>
- </el-menu>
+</el-menu>
</el-aside>
<el-main>
<h3>瀵煎叆鏁版嵁鏌ョ湅</h3>
@@ -24,6 +24,11 @@
<el-radio-button label="trackMileage">杞ㄨ抗閲岀▼</el-radio-button>
<el-radio-button label="scaleSplit">瑙勪笂瑙勪笅鎷嗗垎</el-radio-button>
<el-radio-button label="freightTurnover">璐ц繍閲忓懆杞噺</el-radio-button>
+ <el-radio-button label="h2031">H203-1鏃呭鏈堟姤</el-radio-button>
+ <el-radio-button label="passengerAuth">鏃呭杩愭斂杞﹁締</el-radio-button>
+ <el-radio-button label="cityBus">鍩庡競鍏氦鏈堟姤</el-radio-button>
+ <el-radio-button label="cityTaxi">宸℃父鍑虹鏈堟姤</el-radio-button>
+ <el-radio-button label="cityTaxiAuth">鍑虹杞﹁繍鏀胯溅杈�</el-radio-button>
</el-radio-group>
</el-form-item>
<el-form-item label="鎶ヨ〃鏈�">
@@ -34,32 +39,37 @@
</el-form-item>
<el-form-item>
<el-button type="primary" @click="loadData">鏌ヨ</el-button>
+ <el-button type="success" icon="el-icon-full-screen" @click="toggleFullscreen">鍏ㄥ睆鏌ョ湅</el-button>
</el-form-item>
</el-form>
<div style="color:#909399;font-size:12px;margin-bottom:6px">
鍏� {{ total }} 鏉¤褰曪紝褰撳墠绗� {{ page }} 椤�
</div>
- <div class="table-area">
- <el-table :data="records" border v-loading="loading" size="small" style="width:100%" height="100%">
- <el-table-column v-for="c in columns" :key="c.prop" :prop="c.prop" :label="c.label" :min-width="c.width" show-overflow-tooltip>
- <template slot-scope="scope">
- <span>{{ formatCell(scope.row[c.prop]) }}</span>
- </template>
- </el-table-column>
- </el-table>
+ <div class="table-wrap" ref="tableWrap">
+ <div class="table-area">
+ <el-table :data="records" border v-loading="loading" size="small" style="width:100%" height="100%">
+ <el-table-column v-for="c in columns" :key="c.prop" :prop="c.prop" :label="c.label" :min-width="c.width" show-overflow-tooltip>
+ <template slot-scope="scope">
+ <span>{{ formatCell(scope.row[c.prop]) }}</span>
+ </template>
+ </el-table-column>
+ </el-table>
+ </div>
+ <el-pagination style="margin-top:15px;text-align:right"
+ background layout="total, prev, pager, next, sizes"
+ :total="total" :current-page.sync="page" :page-size.sync="size"
+ :page-sizes="[20, 50, 100]" @current-change="loadData" @size-change="loadData">
+ </el-pagination>
</div>
- <el-pagination style="margin-top:15px;text-align:right"
- background layout="total, prev, pager, next, sizes"
- :total="total" :current-page.sync="page" :page-size.sync="size"
- :page-sizes="[20, 50, 100]" @current-change="loadData" @size-change="loadData">
- </el-pagination>
</el-main>
</el-container>
</el-container>
</template>
<script>
+import AppHeader from '@/components/AppHeader.vue'
import api from '@/api'
export default {
+ components: { AppHeader },
name: 'DataView',
data() {
return {
@@ -94,11 +104,21 @@
this.page = 1
this.loadData()
}
- }).catch(() => {
+ }).catch(e => {
+ if (e && e._toast) return
this.$message.error('鏁版嵁鏌ヨ澶辫触')
}).finally(() => {
this.loading = false
})
+ },
+ toggleFullscreen() {
+ const el = this.$refs.tableWrap
+ if (!document.fullscreenElement) {
+ if (el && el.requestFullscreen) el.requestFullscreen()
+ else this.$message.warning("娴忚鍣ㄤ笉鏀寔鍏ㄥ睆")
+ } else if (document.exitFullscreen) {
+ document.exitFullscreen()
+ }
},
formatCell(v) {
if (v === null || v === undefined || v === '') return '-'
@@ -106,10 +126,33 @@
}
},
mounted() {
+ const q = this.$route.query
+ if (q.type) this.type = q.type
+ if (q.period) this.period = q.period
+ if (q.keyword) this.keyword = q.keyword
this.loadData()
}
}
</script>
<style scoped>
.el-header { background: #409EFF; color: white; line-height: 60px; font-size: 18px; }
+#app .table-area:fullscreen {
+ padding: 20px;
+ background: #fff;
+ overflow: auto;
+}
+#app .table-wrap:fullscreen {
+ padding: 20px;
+ background: #fff;
+ overflow: auto;
+ display: flex;
+ flex-direction: column;
+}
+#app .table-wrap:fullscreen .table-area {
+ flex: 1 1 auto;
+ min-height: 0;
+}
+#app .table-wrap:fullscreen .el-pagination {
+ flex: none;
+}
</style>
\ No newline at end of file
--
Gitblit v1.9.1