From a0285d19d00697757f99fc75a4e45778854f5af9 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期五, 07 三月 2025 10:39:15 +0800
Subject: [PATCH] 最新版本541200007

---
 admin/src/views/platform/LogisticsRecord/waybill.vue                                    |    4 
 admin/src/views/business/deviceBroadcast.vue                                            |    3 
 admin/src/views/statistics/platformRecord.vue                                           |    6 
 admin/src/views/business/reportRecord.vue                                               |   13 +
 admin/src/views/operation/danger/typeSet.vue                                            |    1 
 admin/src/layouts/TableLayout1.vue                                                      |    8 
 admin/src/views/business/visits.vue                                                     |    2 
 admin/src/views/operation/danger/areaSet.vue                                            |    1 
 admin/src/assets/style/style.scss                                                       |    1 
 admin/src/views/business/retention.vue                                                  |    2 
 admin/src/views/platform/gas.vue                                                        |    1 
 admin/src/views/statistics/platformStatic.vue                                           |    2 
 admin/src/views/platform/set/application.vue                                            |    2 
 admin/src/components/base/BasePage.vue                                                  |   36 +++++
 admin/src/views/business/dangerStatic.vue                                               |    6 
 admin/src/views/platform/smokebox.vue                                                   |    4 
 admin/src/views/business/retentionCars.vue                                              |    2 
 admin/src/views/meeting/bookings.vue                                                    |   40 +++--
 admin/src/views/platform/LogisticsRecord/operation.vue                                  |    4 
 admin/src/views/platform/platformGroup.vue                                              |    1 
 admin/src/components/common/Pagination.vue                                              |   10 
 admin/src/views/business/visitEvent.vue                                                 |    2 
 admin/src/views/platform/water.vue                                                      |    1 
 admin/src/layouts/AppLayout.vue                                                         |    8 
 admin/src/views/business/carEvent.vue                                                   |    3 
 admin/src/layouts/TableLayout.vue                                                       |   29 +++-
 admin/src/views/platform/queueUp.vue                                                    |    4 
 admin/src/views/platform/LogisticsRecord/leaveAuth.vue                                  |    6 
 admin/src/views/platform/LogisticsRecord/operationCity.vue                              |    6 
 admin/src/views/platform/platform.vue                                                   |    3 
 server/system_service/src/main/java/com/doumee/core/annotation/excel/ExcelExporter.java |  141 ++++++++++++--------
 admin/src/views/operation/serviceCar/apprConfig.vue                                     |    9 +
 admin/src/views/meeting/rooms.vue                                                       |    1 
 admin/src/views/operation/serviceCar/driverConfig.vue                                   |    1 
 admin/src/views/business/visitorManagement.vue                                          |    1 
 admin/src/views/platform/platformReason.vue                                             |    2 
 admin/src/utils/request.js                                                              |    2 
 admin/src/views/platform/LogisticsRecord/subscribe.vue                                  |    4 
 admin/src/views/platform/index.vue                                                      |    2 
 admin/src/views/meeting/userStatistics.vue                                              |    1 
 admin/src/components/base/BaseTable.vue                                                 |    3 
 admin/src/views/operation/serviceCar/apprRecord.vue                                     |    2 
 admin/src/views/business/deviceEvent.vue                                                |    2 
 admin/src/views/operation/danger/record.vue                                             |    2 
 admin/src/views/platform/oil.vue                                                        |    3 
 45 files changed, 253 insertions(+), 134 deletions(-)

diff --git a/admin/src/assets/style/style.scss b/admin/src/assets/style/style.scss
index e61bce8..7b95f18 100644
--- a/admin/src/assets/style/style.scss
+++ b/admin/src/assets/style/style.scss
@@ -141,6 +141,7 @@
   margin-top: 10px;
   margin-left: 16px;
   padding: 20px;
+  height: calc(100% - 10px);
 }
 .fs12{
   font-size: 12px;
diff --git a/admin/src/components/base/BasePage.vue b/admin/src/components/base/BasePage.vue
index 38cf164..2980f99 100644
--- a/admin/src/components/base/BasePage.vue
+++ b/admin/src/components/base/BasePage.vue
@@ -4,6 +4,7 @@
   name: 'BasePage',
   data () {
     return {
+      tableHeightNew: 300,
       // 瓒呯骇绠$悊鍛樿鑹瞔ode
       adminCode: 'admin'
     }
@@ -15,7 +16,42 @@
       return this.userInfo.roles.findIndex(code => code === this.adminCode) > -1
     }
   },
+  created() {
+    this.computeTableHeight()
+  },
+  mounted () {
+    this.computeTableHeight()
+    window.addEventListener('resize', this.computeTableHeight)
+  },
+  activated() {
+    this.computeTableHeight()
+  },
   methods: {
+    computeTableHeight () {
+      this.$nextTick(() => {
+        // const height = window.innerHeight
+        const height = document.getElementsByClassName('el-container') && document.getElementsByClassName('el-container')[0]?document.getElementsByClassName('el-container')[0].clientHeight:0
+        // alert(height)
+        const height1 =  (document.getElementsByClassName('table-search-form') && document.getElementsByClassName('table-search-form')[0]? document.getElementsByClassName('table-search-form')[0].clientHeight:0)
+        const height2 = document.getElementsByClassName('toolbar') && document.getElementsByClassName('toolbar')[0]?document.getElementsByClassName('toolbar')[0].clientHeight:0
+        const height3 = document.getElementsByClassName('main-header') && document.getElementsByClassName('main-header')[0]?document.getElementsByClassName('main-header')[0].clientHeight:0
+        const height4 = document.getElementsByClassName('table-pagination') && document.getElementsByClassName('table-pagination')[0]? document.getElementsByClassName('table-pagination')[0].clientHeight:0
+        const height5 = document.getElementsByTagName('thead') && document.getElementsByTagName('thead')[0]? document.getElementsByTagName('thead')[0].clientHeight:0
+        const height6 = document.getElementsByClassName('doumee-filter') && document.getElementsByClassName('doumee-filter')[0]? document.getElementsByClassName('doumee-filter')[0].clientHeight:0
+        const height7 =( document.getElementsByClassName('pt16') && document.getElementsByClassName('pt16')[0]?  1+document.getElementsByClassName('pt16')[0].clientHeight:0)
+        const height8 = document.getElementsByClassName('df_sb') && document.getElementsByClassName('df_sb')[0]? document.getElementsByClassName('df_sb')[0].clientHeight:0
+        const height9 = document.getElementsByClassName('static_wrap') && document.getElementsByClassName('static_wrap')[0]? document.getElementsByClassName('df_sb')[0].clientHeight:0
+        const height10 = document.getElementsByClassName('query_btns') && document.getElementsByClassName('query_btns')[0]? document.getElementsByClassName('query_btns')[0].clientHeight:0
+        // this.tableHeightNew = height-height4-height3-height2-height1-height5-height6-height7-height8-height9 -height10// 鎵撳嵃楂樺害
+
+        if(document.getElementsByClassName('main_app') && document.getElementsByClassName('main_app')[0]){
+          this.tableHeightNew = height- height5-height6-height2-height7-height4-height8-height9-height10// 鎵撳嵃楂樺害
+        }else{
+          this.tableHeightNew = height-height4-height3-height2-height1-height5
+        }
+         console.log(this.tableHeightNew)
+      })
+    },
     // 鏄惁鍖呭惈鎸囧畾瑙掕壊
     containRoles (roles) {
       if (roles == null) {
diff --git a/admin/src/components/base/BaseTable.vue b/admin/src/components/base/BaseTable.vue
index e5d5f9d..4425ae6 100644
--- a/admin/src/components/base/BaseTable.vue
+++ b/admin/src/components/base/BaseTable.vue
@@ -44,6 +44,7 @@
     }
   },
   methods: {
+
     // 閰嶇疆
     config (extParams) {
       if (extParams == null) {
@@ -221,4 +222,4 @@
     }
   }
 }
-</script>
\ No newline at end of file
+</script>
diff --git a/admin/src/components/common/Pagination.vue b/admin/src/components/common/Pagination.vue
index 45cf075..91af47d 100644
--- a/admin/src/components/common/Pagination.vue
+++ b/admin/src/components/common/Pagination.vue
@@ -40,16 +40,16 @@
 </script>
 <style lang="scss" scoped>
 .table-pagination {
-  margin-left: -16px;
-  padding: 0px 0px 16px 25px;
+  margin-left: -18px;
+  padding: 16px 0px 16px 25px;
   text-align: left;
   display: block;
   z-index: 100;
   width: -webkit-fill-available;
   /* width: 80%; */
-  /* position: fixed;
-  bottom: 30px;
+  position: fixed;
+  bottom: 25px;
   background-color: white;
-  margin-right: 50px; */
+  margin-right: 50px;
 }
 </style>
diff --git a/admin/src/layouts/AppLayout.vue b/admin/src/layouts/AppLayout.vue
index 857b53a..b2495b3 100644
--- a/admin/src/layouts/AppLayout.vue
+++ b/admin/src/layouts/AppLayout.vue
@@ -55,7 +55,6 @@
 .el-container {
   background: #F7F8F9;
   height: 100%;
-
   display: flex;
   // overflow: hidden;
   overflow: scroll;
@@ -83,13 +82,14 @@
   // 鍙宠竟鍐呭
   .el-main {
     width: 100%;
-    // height: 100%;
-    height: calc(100vh - 90px);
+     //height: 100%;
+    overflow: hidden;
+    height: calc(100vh - 94px);
     padding: 0;
     position: relative;
     display: flex;
     flex-direction: column;
-    overflow-y: scroll;
+    //overflow-y: scroll;
     overflow-x: hidden;
     scrollbar-width: none; /* firefox */
     -ms-overflow-style: none; /* IE 10+ */
diff --git a/admin/src/layouts/TableLayout.vue b/admin/src/layouts/TableLayout.vue
index 4957763..2aaed18 100644
--- a/admin/src/layouts/TableLayout.vue
+++ b/admin/src/layouts/TableLayout.vue
@@ -1,5 +1,5 @@
  <template>
-  <div class="table-layout">
+  <div class="table-layout" >
     <!-- 澶撮儴 -->
 <!--    <div v-if="withBreadcrumb" class="table-header">
       <el-breadcrumb separator="/">
@@ -9,7 +9,7 @@
     <!-- <div style="height:10px;"></div> -->
     <Profile :roles="roles" :permissions="permissions">
       <!-- 鎼滅储琛ㄥ崟閮ㄥ垎 -->
-      <div class="table-search-form">
+      <div class="table-search-form" ref="tableSearchForm">
         <div class="form-wrap">
           <slot name="search-form"></slot>
         </div>
@@ -56,8 +56,21 @@
 
 <style lang="scss">
 @import "@/assets/style/variables.scss";
+/*.el-container .el-main[data-v-5b01577c] {
+  width: 100%;
+  height: calc(100vh - 68px);
+  padding: 0;
+  position: relative;
+  display: flex
+;
+  flex-direction: column;
+  overflow-y: scroll;
+  overflow-x: hidden;
+  scrollbar-width: none;
+  -ms-overflow-style: none;
+}*/
 .table-layout {
-  height: 100%;
+  height: calc(100%-10px);
   display: flex;
   flex-direction: column;
   margin-top: 10px;
@@ -124,6 +137,8 @@
     }
     // 琛ㄦ牸
     .el-table {
+      //min-height: 300px;
+      overflow: auto;
       th {
         .cell {
           color: #666;
@@ -157,17 +172,17 @@
     }
     // 鍒嗛〉
     .table-pagination {
-      margin-left: -16px;
+      margin-left: -18px;
       padding: 16px 0px 16px 25px;
       text-align: left;
       display: block;
       z-index: 100;
       width: -webkit-fill-available;
       /* width: 80%; */
-      /* position: fixed;
-      bottom: 30px;
+      position: fixed;
+      bottom: 25px;
       background-color: white;
-      margin-right: 50px; */
+      margin-right: 50px;
     }
   }
 }
diff --git a/admin/src/layouts/TableLayout1.vue b/admin/src/layouts/TableLayout1.vue
index a5eedc4..453b42b 100644
--- a/admin/src/layouts/TableLayout1.vue
+++ b/admin/src/layouts/TableLayout1.vue
@@ -158,17 +158,17 @@
             }
             // 鍒嗛〉
             .table-pagination {
-              margin-left: -16px;
+              margin-left: -18px;
               padding: 16px 0px 16px 25px;
               text-align: left;
               display: block;
               z-index: 100;
               width: -webkit-fill-available;
               /* width: 80%; */
-              /* position: fixed;
-              bottom: 30px;
+               position: fixed;
+              bottom: 25px;
               background-color: white;
-              margin-right: 50px; */
+              margin-right: 50px;
             }
         }
     }
diff --git a/admin/src/utils/request.js b/admin/src/utils/request.js
index b70945d..6d6c236 100644
--- a/admin/src/utils/request.js
+++ b/admin/src/utils/request.js
@@ -10,7 +10,7 @@
 const axiosInstance = axios.create({
   baseURL: process.env.VUE_APP_API_PREFIX,
   // 璇锋眰瓒呮椂鏃堕棿
-  timeout: 60000
+  timeout: 600000
 })
 
 // 鏂板缓璇锋眰鎷︽埅鍣�
diff --git a/admin/src/views/business/carEvent.vue b/admin/src/views/business/carEvent.vue
index 6e1515d..ed79f61 100644
--- a/admin/src/views/business/carEvent.vue
+++ b/admin/src/views/business/carEvent.vue
@@ -47,7 +47,6 @@
         </section>
       </el-form>
     </div>
-
     <!-- 琛ㄦ牸鍜屽垎椤� -->
     <template v-slot:table-wrap>
       <ul class="toolbar" v-permissions="['business:carevent:exportExcel']">
@@ -60,7 +59,7 @@
             @click="exportExcel">瀵煎嚭</el-button>
         </li>
       </ul>
-      <el-table :max-height="tableHeight" v-loading="isWorking.search" :data="tableData.list" stripe>
+      <el-table :height="tableHeightNew" v-loading="isWorking.search" :data="tableData.list" stripe>
         <el-table-column prop="personName" label="濮撳悕" min-width="100px"></el-table-column>
         <el-table-column prop="personPhone" label="鎵嬫満鍙�" min-width="100px"></el-table-column>
         <el-table-column prop="personCompanyName" label="缁勭粐" min-width="100px"></el-table-column>
diff --git a/admin/src/views/business/dangerStatic.vue b/admin/src/views/business/dangerStatic.vue
index 49d5e6d..4d5d385 100644
--- a/admin/src/views/business/dangerStatic.vue
+++ b/admin/src/views/business/dangerStatic.vue
@@ -78,9 +78,9 @@
 </script>
 
 <style lang="scss" scoped>
-.main_app {
+/*.main_app {
   height: 100%;
-}
+}*/
 
 .main_content {
   display: flex;
@@ -109,4 +109,4 @@
     padding-left: 20px;
   }
 }
-</style>
\ No newline at end of file
+</style>
diff --git a/admin/src/views/business/deviceBroadcast.vue b/admin/src/views/business/deviceBroadcast.vue
index 1dfd766..c10e474 100644
--- a/admin/src/views/business/deviceBroadcast.vue
+++ b/admin/src/views/business/deviceBroadcast.vue
@@ -1,7 +1,7 @@
 <template>
     <TableLayout :permissions="['business:device:query']">
         <!-- 鎼滅储琛ㄥ崟 -->
-        <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
+        <el-form ref="searchForm"  slot="search-form" :model="searchForm" label-width="100px" inline>
             <el-form-item title="鍚嶇О" prop="name">
                 <el-input v-model="searchForm.name" placeholder="璇疯緭鍏ュ悕绉�" @keypress.enter.native="search"></el-input>
             </el-form-item>
@@ -16,6 +16,7 @@
                 <li><el-button type="primary" @click="synchronousData">鍚屾</el-button></li>
             </ul>
             <el-table
+                :height="tableHeightNew"
                 v-loading="isWorking.search"
                 :data="tableData.list"
                 stripe
diff --git a/admin/src/views/business/deviceEvent.vue b/admin/src/views/business/deviceEvent.vue
index 69a41b9..4f1dade 100644
--- a/admin/src/views/business/deviceEvent.vue
+++ b/admin/src/views/business/deviceEvent.vue
@@ -56,7 +56,7 @@
                 <li><el-button type="primary" :loading="isWorking.export" v-permissions="['business:deviceevent:exportExcel']" @click="exportExcel">瀵煎嚭</el-button></li>
 -->
       </ul>
-      <el-table :max-height="tableHeight" v-loading="isWorking.search" :data="tableData.list" stripe>
+      <el-table :height="tableHeightNew" v-loading="isWorking.search" :data="tableData.list" stripe>
         <!-- <el-table-column prop="userType" label="浜哄憳绫诲瀷" min-width="100px">
                     <template slot-scope="{row}">
                         <span v-if="row.personType == 0">鍔冲姟璁垮</span>
diff --git a/admin/src/views/business/reportRecord.vue b/admin/src/views/business/reportRecord.vue
index 8286869..ac07890 100644
--- a/admin/src/views/business/reportRecord.vue
+++ b/admin/src/views/business/reportRecord.vue
@@ -1,5 +1,5 @@
 <template>
-  <div class="main_app" style="padding-bottom: 60px">
+  <div class="main_app" >
     <QueryForm
       v-model="filters"
       :query-form-config="queryFormConfig"
@@ -11,6 +11,7 @@
       <el-button type="primary" :loading="exLoading" @click="exportExcel" v-permissions="['business:visits:exportExcel']">瀵煎嚭</el-button>
     </div>
     <el-table
+      :height="tableHeightNew"
       v-loading="loading"
       :data="dataList"
       stripe
@@ -105,10 +106,12 @@
 import Pagination from '@/components/common/Pagination'
 import QueryForm from '@/components/common/QueryForm'
 // import ReportDetail from './page-components/ReportDetail.vue'
+import BasePage from '@/components/base/BasePage'
 import ReportDetail from '@/views/task/visReportDetail.vue'
 import OperaVisitsReportWindow from '@/components/business/operaVisitsReportWindow.vue'
 import { fetchList, exportExcel, deleteById } from '@/api/business/visits'
 export default {
+  extends: BasePage,
   components: {
     ReportDetail,
     QueryForm,
@@ -237,16 +240,16 @@
 
 <style lang="scss" scoped>
 .table-pagination {
-  margin-left: -16px;
+  margin-left: -18px;
   padding: 16px 0px 16px 25px;
   text-align: left;
   display: block;
   z-index: 100;
   width: -webkit-fill-available;
   /* width: 80%; */
-  /* position: fixed;
-  bottom: 30px;
+  position: fixed;
+  bottom: 25px;
   background-color: white;
-  margin-right: 50px; */
+  margin-right: 50px;
 }
 </style>
diff --git a/admin/src/views/business/retention.vue b/admin/src/views/business/retention.vue
index 0100514..40c7f04 100644
--- a/admin/src/views/business/retention.vue
+++ b/admin/src/views/business/retention.vue
@@ -45,7 +45,7 @@
             @click="exportExcel">瀵煎嚭</el-button>
         </li>
       </ul>
-      <el-table :max-height="tableHeight" v-loading="isWorking.search" :data="tableData.list" stripe
+      <el-table :height="tableHeightNew" v-loading="isWorking.search" :data="tableData.list" stripe
         @selection-change="handleSelectionChange">
         <el-table-column type="selection" width="55"></el-table-column>
         <el-table-column prop="name" label="濮撳悕" min-width="100px"></el-table-column>
diff --git a/admin/src/views/business/retentionCars.vue b/admin/src/views/business/retentionCars.vue
index e64eed1..45320b1 100644
--- a/admin/src/views/business/retentionCars.vue
+++ b/admin/src/views/business/retentionCars.vue
@@ -49,7 +49,7 @@
             @click="exportExcel">瀵煎嚭</el-button>
         </li>
       </ul>
-      <el-table v-loading="isWorking.search" :data="tableData.list" stripe @selection-change="handleSelectionChange">
+      <el-table :height="tableHeightNew" v-loading="isWorking.search" :data="tableData.list" stripe @selection-change="handleSelectionChange">
         <el-table-column type="selection" width="55"></el-table-column>
         <el-table-column prop="createDate" label="杩涘満鏃堕棿" min-width="150px"></el-table-column>
         <el-table-column prop="carNo" label="杞︾墝鍙�" min-width="100px"></el-table-column>
diff --git a/admin/src/views/business/visitEvent.vue b/admin/src/views/business/visitEvent.vue
index a95a8b9..d8a64e2 100644
--- a/admin/src/views/business/visitEvent.vue
+++ b/admin/src/views/business/visitEvent.vue
@@ -55,7 +55,7 @@
         <li class="ml20"> 鎷滆浜烘锛�<span class="primaryColor">{{staticObj.eventNum}}娆�</span></li>
         <li class="ml20"> 鎷滆浜烘暟锛�<span class="primaryColor">{{staticObj.visitorNum}}浜�</span></li>
       </ul>
-      <el-table :max-height="tableHeight" v-loading="isWorking.search" :data="tableData.list" stripe>
+      <el-table :height="tableHeightNew" v-loading="isWorking.search" :data="tableData.list" stripe>
         <el-table-column prop="personName" label="濮撳悕" min-width="90px"></el-table-column>
         <el-table-column prop="phone" label="鎵嬫満鍙风爜" min-width="100px"></el-table-column>
         <el-table-column prop="idcardDecode" label="韬唤璇佸彿鐮�" min-width="120px"></el-table-column>
diff --git a/admin/src/views/business/visitorManagement.vue b/admin/src/views/business/visitorManagement.vue
index f05ea9b..49f9864 100644
--- a/admin/src/views/business/visitorManagement.vue
+++ b/admin/src/views/business/visitorManagement.vue
@@ -26,6 +26,7 @@
                 <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:member:delete']">鍒犻櫎</el-button></li>
             </ul>
             <el-table
+                :height="tableHeightNew"
                 v-loading="isWorking.search"
                 :data="tableData.list"
                 stripe
diff --git a/admin/src/views/business/visits.vue b/admin/src/views/business/visits.vue
index 0b360f4..2bf9f22 100644
--- a/admin/src/views/business/visits.vue
+++ b/admin/src/views/business/visits.vue
@@ -42,7 +42,7 @@
         <li><el-button type="primary" :loading="isWorking.export" @click="exportExcel"
             v-permissions="['business:visits:exportExcel']">瀵煎嚭</el-button></li>
       </ul>
-      <el-table :max-height="tableHeight" v-loading="isWorking.search" :data="tableData.list" stripe
+      <el-table :max-height="tableHeightNew" v-loading="isWorking.search" :data="tableData.list" stripe
         @selection-change="handleSelectionChange">
         <el-table-column type="selection" width="55"></el-table-column>
         <el-table-column prop="name" label="璁垮濮撳悕" min-width="100px"></el-table-column>
diff --git a/admin/src/views/meeting/bookings.vue b/admin/src/views/meeting/bookings.vue
index 8b1fe08..674d968 100644
--- a/admin/src/views/meeting/bookings.vue
+++ b/admin/src/views/meeting/bookings.vue
@@ -1,5 +1,5 @@
 <template>
-  <TableLayout :permissions="['business:bookings:query']">
+  <TableLayout rel="tableLayoutEle" :permissions="['business:bookings:query']">
     <!-- 鎼滅储琛ㄥ崟 -->
     <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
       <el-form-item label="浼氳瀹�" prop="roomId">
@@ -55,7 +55,7 @@
     </el-form>
     <!-- 琛ㄦ牸鍜屽垎椤� -->
     <template v-slot:table-wrap>
-      <ul class="toolbar" v-permissions="[
+      <ul class="toolbar" ref="toolbarEle" v-permissions="[
         'business:bookings:create',
         'business:bookings:exportExcel',
       ]">
@@ -69,7 +69,7 @@
             @click="exportExcel">瀵煎嚭</el-button>
         </li>
       </ul>
-      <el-table v-loading="isWorking.search" :data="tableData.list" stripe @selection-change="handleSelectionChange">
+      <el-table :height="tableHeightNew" v-loading="isWorking.search" :data="tableData.list" stripe @selection-change="handleSelectionChange">
         <!-- <el-table-column type="selection" align="center" width="55"></el-table-column> -->
         <el-table-column prop="name" label="浼氳涓婚" align="center" min-width="120px" show-overflow-tooltip>
           <template slot-scope="{ row }">
@@ -82,6 +82,10 @@
           </template>
         </el-table-column>
         <el-table-column prop="meetingTime" label="浼氳鏃堕棿" align="center" min-width="120px"></el-table-column>
+        <el-table-column prop="meetingTime" label="浼氳鏃堕棿" align="center" min-width="120px"></el-table-column>
+        <el-table-column prop="meetingTime" label="浼氳鏃堕棿" align="center" min-width="120px"></el-table-column>
+        <el-table-column prop="meetingTime" label="浼氳鏃堕棿" align="center" min-width="400px"></el-table-column>
+        <el-table-column prop="meetingTime" label="浼氳鏃堕棿" align="center" min-width="300px"></el-table-column>
         <el-table-column prop="managerInfo" label="棰勭害浜�" align="center" min-width="100px"></el-table-column>
         <el-table-column label="浼氳鐘舵��" align="center" min-width="60px">
           <template slot-scope="{ row }">
@@ -141,7 +145,7 @@
   name: 'Bookings',
   extends: BaseTable,
   components: { TableLayout, Pagination, OperaBookingsWindow, OperaBookingsDetailWindow },
-  data() {
+  data () {
     return {
       date: [],
       // userInfo: this.$store.state.userInfo,
@@ -184,12 +188,12 @@
       link: 'https://dmtest.ahapp.net/meeting_h5/' // H5_LINK_ADDR
     }
   },
-  provide() {
+  provide () {
     return {
       rooms: () => this.rooms
     }
   },
-  created() {
+  created () {
     this.config({
       module: '浼氳瀹ら瀹氫俊鎭〃',
       api: '/meeting/bookings',
@@ -212,7 +216,7 @@
     this.changeRadio('0')
   },
   methods: {
-    changeRadio(e) {
+    changeRadio (e) {
       if (e === '0') {
         this.searchForm.startTime = timeForMat(0)[0]
         this.searchForm.endTime = timeForMat(0)[1]
@@ -232,7 +236,7 @@
       }
       this.search()
     },
-    newTree(tree) {
+    newTree (tree) {
       if (tree == null) {
         return []
       }
@@ -249,12 +253,12 @@
         return newItem
       })
     },
-    selectDate(v) {
+    selectDate (v) {
       this.searchForm.endTime = v[1] + ' 23:59:59'
       this.searchForm.startTime = v[0] + ' 00:00:00'
       this.searchForm.radio = null
     },
-    reset() {
+    reset () {
       this.$refs.searchForm.resetFields()
       this.date = []
       this.searchForm.radio = ''
@@ -263,7 +267,7 @@
       // this.changeRadio('0')
       this.search()
     },
-    copy(row) {
+    copy (row) {
       const text = `${row.realName} 閭�璇锋偍鍔犲叆浼氳\n浼氳涓婚锛�${row.name}\n浼氳瀹わ細${row.roomName}\n浼氳鏃堕棿锛�${row.meetingTime}\n鐐瑰嚮閾炬帴鐩存帴鍔犲叆浼氳锛歕n${this.link}?id=${row.id}`
       this.$copyText(text)
         .then(() => {
@@ -272,10 +276,10 @@
         .catch(e => {
         })
     },
-    handleStart(row) {
+    handleStart (row) {
       this.$dialog.messageWaring('寮�濮嬩細璁�', '鏄惁寮�濮嬪綋鍓嶄細璁紵')
         .then(() => {
-          let fn = new Date(row.startTime).getTime() > new Date().getTime() ? startEarlyById : startById
+          const fn = new Date(row.startTime).getTime() > new Date().getTime() ? startEarlyById : startById
           fn({ id: row.id })
             .then(() => {
               this.$message.success('浼氳宸插紑濮�')
@@ -285,7 +289,7 @@
             })
         })
     },
-    handleEnd(row) {
+    handleEnd (row) {
       this.$dialog.messageWaring('缁撴潫浼氳', '鏄惁缁撴潫褰撳墠浼氳锛�')
         .then(() => {
           meetingEndById({ id: row.id })
@@ -297,7 +301,7 @@
             })
         })
     },
-    cancelMeeting(id) {
+    cancelMeeting (id) {
       this.$dialog.messageWaring('鍙栨秷浼氳', '鏄惁鍙栨秷褰撳墠浼氳锛�')
         .then(() => {
           cancelById({ id })
@@ -309,7 +313,7 @@
             })
         })
     },
-    showDetail(id) {
+    showDetail (id) {
       bookingsDetail(id)
         .then(res => {
           this.$refs.operaBookingsDetailWindow.open('浼氳璇︽儏', res)
@@ -317,7 +321,7 @@
         .catch(e => {
         })
     },
-    editBookings(id) {
+    editBookings (id) {
       bookingsDetail(id)
         .then(res => {
           this.$refs.operaBookingsWindow.open('缂栬緫浼氳棰勭害', res)
@@ -325,7 +329,7 @@
         .catch(e => {
         })
     },
-    handlePageChange(pageIndex) {
+    handlePageChange (pageIndex) {
       this.__checkApi()
       this.tableData.pagination.pageIndex = pageIndex || this.tableData.pagination.pageIndex
       this.isWorking.search = true
diff --git a/admin/src/views/meeting/rooms.vue b/admin/src/views/meeting/rooms.vue
index 65f168b..2dd7299 100644
--- a/admin/src/views/meeting/rooms.vue
+++ b/admin/src/views/meeting/rooms.vue
@@ -38,6 +38,7 @@
         <!-- <li><el-button @click="deleteByIdInBatch" v-permissions="['business:rooms:delete']">鍒犻櫎</el-button></li> -->
       </ul>
       <el-table
+          :height="tableHeightNew"
         v-loading="isWorking.search"
         :data="tableData.list"
         stripe
diff --git a/admin/src/views/meeting/userStatistics.vue b/admin/src/views/meeting/userStatistics.vue
index 22722a3..35b50f0 100644
--- a/admin/src/views/meeting/userStatistics.vue
+++ b/admin/src/views/meeting/userStatistics.vue
@@ -45,6 +45,7 @@
         <li><el-button :loading="isWorking.export" @click="exportExcel">瀵煎嚭</el-button></li>
       </ul>
       <el-table
+          :height="tableHeightNew"
         v-loading="isWorking.search"
         :data="tableData.list"
         stripe
diff --git a/admin/src/views/operation/danger/areaSet.vue b/admin/src/views/operation/danger/areaSet.vue
index 0964cd1..1d4c384 100644
--- a/admin/src/views/operation/danger/areaSet.vue
+++ b/admin/src/views/operation/danger/areaSet.vue
@@ -20,6 +20,7 @@
         <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:hiddendangerparam:delete']">鎵归噺鍒犻櫎</el-button></li>
       </ul>
       <el-table
+          :height="tableHeightNew"
           v-loading="isWorking.search"
           :data="tableData.list"
           stripe
diff --git a/admin/src/views/operation/danger/record.vue b/admin/src/views/operation/danger/record.vue
index 226dfeb..84cce04 100644
--- a/admin/src/views/operation/danger/record.vue
+++ b/admin/src/views/operation/danger/record.vue
@@ -60,7 +60,7 @@
         <li><el-button type="primary" v-permissions="['business:hiddendanger:exportExcel']"
             @click="handleEx">瀵煎嚭</el-button></li>
       </ul>
-      <el-table v-loading="isWorking.search" :data="tableData.list" stripe @selection-change="handleSelectionChange">
+      <el-table v-loading="isWorking.search" :data="tableData.list" :height="tableHeightNew" stripe @selection-change="handleSelectionChange">
         <el-table-column type="selection" width="55"></el-table-column>
         <el-table-column prop="dutyCompanyName" show-overflow-tooltip label="璐d换閮ㄩ棬" min-width="150px"></el-table-column>
         <el-table-column prop="areaName" label="闅愭偅鍖哄煙" show-overflow-tooltip min-width="150px"></el-table-column>
diff --git a/admin/src/views/operation/danger/typeSet.vue b/admin/src/views/operation/danger/typeSet.vue
index 17cb72b..8597e3c 100644
--- a/admin/src/views/operation/danger/typeSet.vue
+++ b/admin/src/views/operation/danger/typeSet.vue
@@ -17,6 +17,7 @@
         <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:hiddendangerparam:delete']">鎵归噺鍒犻櫎</el-button></li>
       </ul>
       <el-table
+          :height="tableHeightNew"
           v-loading="isWorking.search"
           :data="tableData.list"
           stripe
diff --git a/admin/src/views/operation/serviceCar/apprConfig.vue b/admin/src/views/operation/serviceCar/apprConfig.vue
index e0bb8c7..8ce067b 100644
--- a/admin/src/views/operation/serviceCar/apprConfig.vue
+++ b/admin/src/views/operation/serviceCar/apprConfig.vue
@@ -1,11 +1,11 @@
 <template>
-  <TableLayout>
+  <TableLayout :style="'overflow: auto;height: 100%;'">
     <template v-slot:table-wrap>
       <el-tabs v-model="activeType" @tab-click="handleClick">
         <el-tab-pane label="甯傚唴鐢ㄨ溅" name="3"></el-tab-pane>
         <el-tab-pane label="甯傚鐢ㄨ溅" name="4"></el-tab-pane>
       </el-tabs>
-      <div class="config">
+      <div class="config"   >
         <div class="config_list">
           <div class="config_list_head">
             <span>閰嶇疆娴佺▼</span>
@@ -207,6 +207,7 @@
   },
   data() {
     return {
+      height: 500,
       activeType: '3',
       subLoading: false,
       apprList: [
@@ -225,6 +226,7 @@
   created() {
     this.getfindCompanyTreePage()
     this.initDate()
+    this.height = window.innerHeight -300
   },
   methods: {
     handleClick() {
@@ -400,6 +402,9 @@
 </script>
 
 <style lang="scss" scoped>
+ .el-container .el-main{
+  overflow: auto !important;
+}
 .config {
   width: 100%;
   padding-bottom: 20px;
diff --git a/admin/src/views/operation/serviceCar/apprRecord.vue b/admin/src/views/operation/serviceCar/apprRecord.vue
index bba2919..805cc84 100644
--- a/admin/src/views/operation/serviceCar/apprRecord.vue
+++ b/admin/src/views/operation/serviceCar/apprRecord.vue
@@ -77,7 +77,7 @@
           >
         </li>
       </ul>
-      <el-table :max-height="tableHeight" v-loading="isWorking.search" :data="tableData.list" stripe
+      <el-table :height="tableHeightNew" v-loading="isWorking.search" :data="tableData.list" stripe
         @selection-change="handleSelectionChange">
         <el-table-column type="selection" width="55"></el-table-column>
         <el-table-column
diff --git a/admin/src/views/operation/serviceCar/driverConfig.vue b/admin/src/views/operation/serviceCar/driverConfig.vue
index b7bb9fa..14b9188 100644
--- a/admin/src/views/operation/serviceCar/driverConfig.vue
+++ b/admin/src/views/operation/serviceCar/driverConfig.vue
@@ -17,6 +17,7 @@
         <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:cardriver:delete']">鎵归噺鍒犻櫎</el-button></li>
       </ul>
       <el-table
+          :height="tableHeightNew"
           v-loading="isWorking.search"
           :data="tableData.list"
           stripe
diff --git a/admin/src/views/platform/LogisticsRecord/leaveAuth.vue b/admin/src/views/platform/LogisticsRecord/leaveAuth.vue
index 88762c8..9760059 100644
--- a/admin/src/views/platform/LogisticsRecord/leaveAuth.vue
+++ b/admin/src/views/platform/LogisticsRecord/leaveAuth.vue
@@ -14,7 +14,7 @@
       <el-button :loading="exLoading" @click="handleEx"
         v-permissions="['business:platformjob:exportExcel']">瀵煎嚭</el-button>
     </div>
-    <el-table class="mb20" v-loading="loading" :data="list" stripe>
+    <el-table :height="tableHeightNew"  v-loading="loading" :data="list" stripe>
       <el-table-column type="index" label="搴忓彿" width="70" show-overflow-tooltip />
       <el-table-column prop="billCode" label="杩愬崟鍙�/鍚堝悓鍙�" min-width="100" show-overflow-tooltip>
         <template v-slot="scope">
@@ -67,6 +67,7 @@
 <script>
 import Pagination from '@/components/common/Pagination'
 import QueryForm from '@/components/common/QueryForm'
+import BasePage from '@/components/base/BasePage'
 import { platformJobPage, platformJobExport, platformPowerLevel } from '@/api'
 import { statusMap } from '../config'
 import DriverDetail from "@/views/task/driverDetail"
@@ -82,6 +83,7 @@
     GlobalWindow,
     UploadFaceImg
   },
+  extends: BasePage,
   data() {
     return {
       statusMap,
@@ -248,4 +250,4 @@
   color: #000000;
   margin-bottom: 15px;
 }
-</style>
\ No newline at end of file
+</style>
diff --git a/admin/src/views/platform/LogisticsRecord/operation.vue b/admin/src/views/platform/LogisticsRecord/operation.vue
index d921c8c..1dd0260 100644
--- a/admin/src/views/platform/LogisticsRecord/operation.vue
+++ b/admin/src/views/platform/LogisticsRecord/operation.vue
@@ -16,7 +16,7 @@
     <div class="pt16">
       <el-button :loading="exLoading" @click="handleEx" v-permissions="['business:platformjob:exportExcel']">瀵煎嚭</el-button>
     </div>
-    <el-table class="mb20" v-loading="loading" :data="list" stripe>
+    <el-table :height="tableHeightNew"   v-loading="loading" :data="list" stripe>
       <el-table-column prop="billCode" label="杩愬崟鍙�" min-width="100" show-overflow-tooltip />
       <el-table-column prop="totalNum" label="鎬讳綔涓氶噺(涓囨敮)" min-width="100" show-overflow-tooltip />
       <el-table-column prop="carCodeFront" label="杞︾墝鍓嶇収鍙�" min-width="100" show-overflow-tooltip />
@@ -57,8 +57,10 @@
 import { Message } from 'element-ui'
 import dayjs from 'dayjs'
 import duration from 'dayjs/plugin/duration'
+import BasePage from '@/components/base/BasePage'
 dayjs.extend(duration);
 export default {
+  extends: BasePage,
   components: {
     Pagination,
     QueryForm,
diff --git a/admin/src/views/platform/LogisticsRecord/operationCity.vue b/admin/src/views/platform/LogisticsRecord/operationCity.vue
index bdc7185..745eb24 100644
--- a/admin/src/views/platform/LogisticsRecord/operationCity.vue
+++ b/admin/src/views/platform/LogisticsRecord/operationCity.vue
@@ -14,7 +14,7 @@
       <el-button :loading="exLoading" @click="handleEx"
         v-permissions="['business:platformjob:exportExcel']">瀵煎嚭</el-button>
     </div>
-    <el-table class="mb20" v-loading="loading" :data="list" stripe>
+    <el-table :height="tableHeightNew"  v-loading="loading" :data="list" stripe>
       <el-table-column prop="contractNum" label="鍚堝悓鍙�" min-width="100" show-overflow-tooltip />
       <el-table-column prop="reason" label="鍏ュ洯鍘熷洜" min-width="100" show-overflow-tooltip />
       <el-table-column prop="totalNum" label="鎬讳綔涓氶噺(涓囨敮)" min-width="120" show-overflow-tooltip />
@@ -50,14 +50,16 @@
 import QueryForm from '@/components/common/QueryForm'
 import { platformJobPage, platformJobExport, platformJobDel } from '@/api'
 import { statusMap } from '../config'
-import DriverDetail from "@/views/task/driverDetail"
+import DriverDetail from '@/views/task/driverDetail'
 import GlobalWindow from '@/components/common/GlobalWindow'
 import UploadFaceImg from '@/components/common/UploadFaceImg'
 import { Message } from 'element-ui'
 import dayjs from 'dayjs'
 import duration from 'dayjs/plugin/duration'
+import BasePage from '@/components/base/BasePage'
 dayjs.extend(duration)
 export default {
+  extends: BasePage,
   components: {
     Pagination,
     QueryForm,
diff --git a/admin/src/views/platform/LogisticsRecord/subscribe.vue b/admin/src/views/platform/LogisticsRecord/subscribe.vue
index 4c49daa..ba788b3 100644
--- a/admin/src/views/platform/LogisticsRecord/subscribe.vue
+++ b/admin/src/views/platform/LogisticsRecord/subscribe.vue
@@ -16,7 +16,7 @@
       <el-button :loading="exLoading" @click="handleEx"
         v-permissions="['business:platformbooks:exportExcel']">瀵煎嚭</el-button>
     </div>
-    <el-table class="mb40" v-loading="loading" :data="list" stripe>
+    <el-table :height="tableHeightNew" v-loading="loading" :data="list" stripe>
       <el-table-column prop="contractNum" label="鍚堝悓鍗曞彿" min-width="100" show-overflow-tooltip />
       <el-table-column prop="inReason" label="鍏ュ洯鍘熷洜" min-width="100" show-overflow-tooltip />
       <el-table-column prop="totalNum" label="鎬讳綔涓氶噺(涓囨敮)" min-width="100" show-overflow-tooltip />
@@ -105,6 +105,7 @@
 <script>
 import Pagination from '@/components/common/Pagination'
 import QueryForm from '@/components/common/QueryForm'
+import BasePage from '@/components/base/BasePage'
 import { platformBooksPage, platformReasonList, platformBooksApply, platformBooksExport } from '@/api'
 import { checkSurplusNum, deletebooksById } from '@/api/platform/platform'
 import DriverDetail from '@/views/task/driverDetail'
@@ -120,6 +121,7 @@
     GlobalWindow,
     UploadAvatarImage
   },
+  extends: BasePage,
   data () {
     return {
       isShowDriver: false,
diff --git a/admin/src/views/platform/LogisticsRecord/waybill.vue b/admin/src/views/platform/LogisticsRecord/waybill.vue
index 8888613..d5f8fc3 100644
--- a/admin/src/views/platform/LogisticsRecord/waybill.vue
+++ b/admin/src/views/platform/LogisticsRecord/waybill.vue
@@ -14,7 +14,7 @@
       <el-button :loading="exLoading" @click="handleEx"
         v-permissions="['business:platformjob:exportExcel']">瀵煎嚭</el-button>
     </div>
-    <el-table class="mb20" v-loading="loading" :data="list" stripe>
+    <el-table :height="tableHeightNew" v-loading="loading" :data="list" stripe>
       <el-table-column prop="billCode" label="杩愬崟鍙�" min-width="100" show-overflow-tooltip />
       <el-table-column prop="carCodeFront" label="杞︾墝鍓嶇収鍙�" min-width="100" show-overflow-tooltip />
       <!-- <el-table-column prop="carCodeBack" label="杞︾墝鍚庣収鍙�" min-width="100" show-overflow-tooltip /> -->
@@ -61,6 +61,7 @@
 <script>
 import Pagination from '@/components/common/Pagination'
 import QueryForm from '@/components/common/QueryForm'
+import BasePage from '@/components/base/BasePage'
 import { platformJobPage, platformJobExport, platformJobDel } from '@/api'
 import { statusMap } from '../config'
 import WaybillDetailRef from "../components/WaybillDetail.vue"
@@ -76,6 +77,7 @@
     GlobalWindow,
     UploadFaceImg
   },
+  extends: BasePage,
   data() {
     return {
       statusMap,
diff --git a/admin/src/views/platform/gas.vue b/admin/src/views/platform/gas.vue
index 51bbff9..26d1e04 100644
--- a/admin/src/views/platform/gas.vue
+++ b/admin/src/views/platform/gas.vue
@@ -26,6 +26,7 @@
         <el-button type="primary" :loading="isWorking.export" v-permissions="['business:notice:exportExcel']" @click="exportExcel">瀵煎嚭</el-button>
       </ul>
       <el-table
+          :height="tableHeightNew"
         v-loading="isWorking.search"
         :data="tableData.list"
         stripe
diff --git a/admin/src/views/platform/index.vue b/admin/src/views/platform/index.vue
index 82d288f..9cf9a0b 100644
--- a/admin/src/views/platform/index.vue
+++ b/admin/src/views/platform/index.vue
@@ -1,5 +1,5 @@
 <template>
-  <div class="main_app">
+  <div class="main_app" style="overflow: auto;height: calc(100% - 100px);">
     <div class="mb20 main_header">
       <div class="platgroup_tabs">
         <div class="tab" :class="{ active: activeGroup.id === item.id }" @click="platgroupClick(item)"
diff --git a/admin/src/views/platform/oil.vue b/admin/src/views/platform/oil.vue
index 13c9778..b509ac6 100644
--- a/admin/src/views/platform/oil.vue
+++ b/admin/src/views/platform/oil.vue
@@ -31,7 +31,8 @@
         <el-button type="primary" :loading="isWorking.export" v-permissions="['business:platformwatergas:exportExcel']"
           @click="handleImport">瀵煎叆</el-button>
       </ul>
-      <el-table v-loading="isWorking.search" :data="tableData.list" stripe @selection-change="handleSelectionChange">
+      <el-table
+          :height="tableHeightNew" v-loading="isWorking.search" :data="tableData.list" stripe @selection-change="handleSelectionChange">
         <el-table-column type="selection" width="55"></el-table-column>
         <el-table-column prop="carCode" label="杞︾墝鍙�" fixed min-width="150px"></el-table-column>
         <el-table-column prop="timeInfo" label="浣跨敤鏈堜唤" fixed min-width="100px">
diff --git a/admin/src/views/platform/platform.vue b/admin/src/views/platform/platform.vue
index ea6a838..d4fccea 100644
--- a/admin/src/views/platform/platform.vue
+++ b/admin/src/views/platform/platform.vue
@@ -29,7 +29,8 @@
         <li><el-button type="primary" :loading="working1" @click="syncStatus" icon="el-icon-plus"
             v-permissions="['business:hksync:platforms']">鍚屾瀹炴椂鐘舵��</el-button></li>
       </ul>
-      <el-table :max-height="tableHeight" v-loading="isWorking.search" :data="tableData.list" stripe @selection-change="handleSelectionChange">
+      <el-table
+          :height="tableHeightNew" v-loading="isWorking.search" :data="tableData.list" stripe @selection-change="handleSelectionChange">
         <el-table-column type="selection" width="55"></el-table-column>
         <el-table-column prop="name" label="鏈堝彴鍚嶇О" fixed min-width="100px"></el-table-column>
         <el-table-column prop="code" label="鏈堝彴缂栫爜" fixed min-width="100px"></el-table-column>
diff --git a/admin/src/views/platform/platformGroup.vue b/admin/src/views/platform/platformGroup.vue
index 62b3061..1538aa5 100644
--- a/admin/src/views/platform/platformGroup.vue
+++ b/admin/src/views/platform/platformGroup.vue
@@ -7,6 +7,7 @@
         <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:platformgroup:delete']">鍒犻櫎</el-button></li>
       </ul>
       <el-table
+          :height="tableHeightNew"
         v-loading="isWorking.search"
         :data="tableData.list"
         stripe
diff --git a/admin/src/views/platform/platformReason.vue b/admin/src/views/platform/platformReason.vue
index 117bf82..1cecfb4 100644
--- a/admin/src/views/platform/platformReason.vue
+++ b/admin/src/views/platform/platformReason.vue
@@ -27,7 +27,7 @@
         <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete"
             v-permissions="['business:platformreason:delete']">鍒犻櫎</el-button></li>
       </ul>
-      <el-table v-loading="isWorking.search" :data="tableData.list" stripe @selection-change="handleSelectionChange">
+      <el-table :height="tableHeightNew"  v-loading="isWorking.search" :data="tableData.list" stripe @selection-change="handleSelectionChange">
         <el-table-column type="selection" width="55"></el-table-column>
         <el-table-column prop="reason" label="鍏ュ洯鍘熷洜" fixed min-width="100px"></el-table-column>
         <el-table-column prop="groupName" label="瀵瑰簲浣滀笟鏈堝彴缁�" fixed min-width="150px"></el-table-column>
diff --git a/admin/src/views/platform/queueUp.vue b/admin/src/views/platform/queueUp.vue
index b8e6401..df68b06 100644
--- a/admin/src/views/platform/queueUp.vue
+++ b/admin/src/views/platform/queueUp.vue
@@ -21,7 +21,7 @@
         <span></span>
       </div>
     </div>
-    <el-table v-loading="loading" :data="dataList" stripe row-key="id" default-expand-all>
+    <el-table :height="tableHeightNew" v-loading="loading" :data="dataList" stripe row-key="id" default-expand-all>
       <el-table-column type="index" label="搴忓彿" width="80" />
       <el-table-column label="杞︾墝鍙�" width="130">
         <template slot-scope="{ row }">
@@ -105,6 +105,7 @@
 <script>
 import Pagination from '@/components/common/Pagination'
 import QueryForm from '@/components/common/QueryForm'
+import BasePage from '@/components/base/BasePage'
 import {
   getPlatformGroupList,
   platformLineUpPage,
@@ -115,6 +116,7 @@
 import DriverDetail from "@/views/task/driverDetail.vue"
 import PlatformSign from './components/PlatformSign.vue'
 export default {
+  extends: BasePage,
   components: {
     Pagination,
     QueryForm,
diff --git a/admin/src/views/platform/set/application.vue b/admin/src/views/platform/set/application.vue
index da1562e..7960aa3 100644
--- a/admin/src/views/platform/set/application.vue
+++ b/admin/src/views/platform/set/application.vue
@@ -1,5 +1,5 @@
 <template>
-    <div class="main_app">
+    <div class="main_app" style="overflow: auto;height: calc(100% - 100px);">
     <el-form
       :model="form"
       :rules="rules"
diff --git a/admin/src/views/platform/smokebox.vue b/admin/src/views/platform/smokebox.vue
index f35a28e..9ab7e86 100644
--- a/admin/src/views/platform/smokebox.vue
+++ b/admin/src/views/platform/smokebox.vue
@@ -27,6 +27,8 @@
         <el-button type="primary" :loading="isWorking.export" v-permissions="['business:notice:exportExcel']" @click="exportExcel">瀵煎嚭</el-button>
       </ul>
       <el-table
+
+          :height="tableHeightNew"
         v-loading="isWorking.search"
         :data="tableData.list"
         stripe
@@ -89,7 +91,7 @@
       }
     }
   },
-  
+
   created () {
     this.config({
       module: '鐢ㄦ按淇℃伅琛�',
diff --git a/admin/src/views/platform/water.vue b/admin/src/views/platform/water.vue
index 3348273..8498378 100644
--- a/admin/src/views/platform/water.vue
+++ b/admin/src/views/platform/water.vue
@@ -27,6 +27,7 @@
         <el-button type="primary" :loading="isWorking.export" v-permissions="['business:notice:exportExcel']" @click="exportExcel">瀵煎嚭</el-button>
       </ul>
       <el-table
+          :height="tableHeightNew"
         v-loading="isWorking.search"
         :data="tableData.list"
         stripe
diff --git a/admin/src/views/statistics/platformRecord.vue b/admin/src/views/statistics/platformRecord.vue
index ca316b0..639894a 100644
--- a/admin/src/views/statistics/platformRecord.vue
+++ b/admin/src/views/statistics/platformRecord.vue
@@ -1,7 +1,7 @@
 <template>
   <div class="main_app">
     <QueryForm v-model="filters" :query-form-config="queryFormConfig" @handleQuery="getList(1)" @clear="clear" />
-    <el-table    v-loading="loading" :data="list" stripe>
+    <el-table   :height="tableHeightNew"  v-loading="loading" :data="list" stripe>
       <el-table-column prop="platformName" label="鏈堝彴鍚嶇О" min-width="100" show-overflow-tooltip />
       <el-table-column prop="platformGroupName" label="鏈堝彴缁�" min-width="100" show-overflow-tooltip />
       <el-table-column prop="carCodeFront" label="杞﹀墠鐗岀収鍙�" min-width="100" show-overflow-tooltip />
@@ -24,11 +24,13 @@
 <script>
 import Pagination from '@/components/common/Pagination'
 import QueryForm from '@/components/common/QueryForm'
+import BasePage from '@/components/base/BasePage'
 import dayjs from 'dayjs'
 import duration from 'dayjs/plugin/duration'
-dayjs.extend(duration)
 import { platformLogPage, getPlatformGroupList } from '@/api'
+dayjs.extend(duration)
 export default {
+  extends: BasePage,
   components: {
     Pagination,
     QueryForm
diff --git a/admin/src/views/statistics/platformStatic.vue b/admin/src/views/statistics/platformStatic.vue
index d6daf98..8d495d2 100644
--- a/admin/src/views/statistics/platformStatic.vue
+++ b/admin/src/views/statistics/platformStatic.vue
@@ -1,5 +1,5 @@
 <template>
-  <div class="main_app">
+  <div class="main_app" style="overflow: auto;height: calc(100% - 100px);">
     <QueryForm v-model="filters" :query-form-config="queryFormConfig" @handleQuery="getList(1)" @clear="clear">
       <template #fastdate>
         <el-radio-group v-model="filters.fastdate" size="small" @input="changeRadio">
diff --git a/server/system_service/src/main/java/com/doumee/core/annotation/excel/ExcelExporter.java b/server/system_service/src/main/java/com/doumee/core/annotation/excel/ExcelExporter.java
index d2fac34..670f20c 100644
--- a/server/system_service/src/main/java/com/doumee/core/annotation/excel/ExcelExporter.java
+++ b/server/system_service/src/main/java/com/doumee/core/annotation/excel/ExcelExporter.java
@@ -30,6 +30,7 @@
     private static final String DEFAULT_SHEET_NAME = "Sheet1";
 
     private Class<T> modelClass;
+    private static int maxrows = 50000;
 
     private ExcelExporter(){}
 
@@ -76,6 +77,11 @@
                 // 璁剧疆鍒楀ご鍗曞厓鏍�
                 configHeaderCell(sxssfWorkbook, cell, column.columnConfig);
             }
+            List<CellStyle> styleList = new ArrayList<>();
+            for (int columnIndex = 0; columnIndex < columns.size(); columnIndex++) {
+                ColumnInfo column = columns.get(columnIndex);
+                styleList.add( configDataCell(sxssfWorkbook,   column.columnConfig));
+            }
             // 鍒涘缓鏁版嵁璁板綍
             for (int rowIndex = 0; rowIndex < data.size(); rowIndex++) {
                 Row row = sheet.createRow(rowIndex + 2);
@@ -83,20 +89,15 @@
                     ColumnInfo column = columns.get(columnIndex);
                     Cell cell = row.createCell(columnIndex);
                     cell.setCellValue(getCellData(column, data.get(rowIndex)));
-
-                    // 璁剧疆鏁版嵁鍗曞厓鏍�
-                    configDataCell(sxssfWorkbook, cell, column.columnConfig);
-
+                    cell.setCellStyle(styleList.get(columnIndex));
                 }
             }
-
-
             sheet.addMergedRegion(new CellRangeAddress(data.size()+2   ,data.size()+2,0,this.getColumns().size()-1));
             Row endRow = sheet.createRow(data.size()+2);
 //            endRow.setHeight((short) 600);
             Cell c1 = endRow.createCell(0);
             c1.setCellValue(end);
-            configEndCell(sxssfWorkbook,c1);
+            c1.setCellStyle(  configEndCell(sxssfWorkbook));
             sxssfWorkbook.write(os);
             os.close();
         } catch (Exception e) {
@@ -122,36 +123,21 @@
         SXSSFWorkbook sxssfWorkbook;
         try {
             sxssfWorkbook = new SXSSFWorkbook();
-            Sheet sheet = sxssfWorkbook.createSheet(sheetName);
-            // 鍒涘缓鍒楀ご
-            sheet.createFreezePane(0, 1);
-            Row header = sheet.createRow(0);
-            List<ColumnInfo> columns = this.getColumns();
-            for (int columnIndex = 0; columnIndex < columns.size(); columnIndex++) {
-                ColumnInfo column = columns.get(columnIndex);
-                Cell cell = header.createCell(columnIndex);
-                cell.setCellValue(column.columnConfig.name());
-                // 鍒楀璁剧疆
-                if (column.columnConfig.width() == -1) {
-                    sheet.setColumnWidth(columnIndex, column.columnConfig.name().length() * 2 * 256);
-                } else {
-                    sheet.setColumnWidth(columnIndex, column.columnConfig.width() * 2 * 256);
+            int totalSheet =1;
+            if( data!=null && data.size()>0){
+                totalSheet = data.size()/maxrows;
+                if(data.size()%maxrows !=0){
+                    totalSheet += 1;
                 }
-                // 璁剧疆鍒楀ご鍗曞厓鏍�
-                configHeaderCell(sxssfWorkbook, cell, column.columnConfig);
             }
-            // 鍒涘缓鏁版嵁璁板綍
-            for (int rowIndex = 0; rowIndex < data.size(); rowIndex++) {
-                Row row = sheet.createRow(rowIndex + 1);
-                for (int columnIndex = 0; columnIndex < columns.size(); columnIndex++) {
-                    ColumnInfo column = columns.get(columnIndex);
-                    Cell cell = row.createCell(columnIndex);
-                    cell.setCellValue(getCellData(column, data.get(rowIndex)));
-
-                    // 璁剧疆鏁版嵁鍗曞厓鏍�
-                    configDataCell(sxssfWorkbook, cell, column.columnConfig);
-
+            for (int i = 0; i < totalSheet; i++) {
+                List<T> list = null;
+                if(data.size() < maxrows * (i+1)) {
+                    list = data.subList(maxrows*i,data.size());
+                }else{
+                    list = data.subList(maxrows*i,maxrows*(i+1));
                 }
+                createSheetDataBiz(list,"銆�"+(i+1)+"銆�"+sheetName,sxssfWorkbook);
             }
             sxssfWorkbook.write(os);
             os.close();
@@ -164,6 +150,43 @@
                 } catch (IOException e) {
                     e.printStackTrace();
                 }
+            }
+        }
+    }
+
+    private void createSheetDataBiz(List<T> data, String sheetName, SXSSFWorkbook sxssfWorkbook) throws Exception{
+        Sheet sheet = sxssfWorkbook.createSheet(sheetName);
+        // 鍒涘缓鍒楀ご
+        sheet.createFreezePane(0, 1);
+        Row header = sheet.createRow(0);
+        List<ColumnInfo> columns = this.getColumns();
+        for (int columnIndex = 0; columnIndex < columns.size(); columnIndex++) {
+            ColumnInfo column = columns.get(columnIndex);
+            Cell cell = header.createCell(columnIndex);
+            cell.setCellValue(column.columnConfig.name());
+            // 鍒楀璁剧疆
+            if (column.columnConfig.width() == -1) {
+                sheet.setColumnWidth(columnIndex, column.columnConfig.name().length() * 2 * 256);
+            } else {
+                sheet.setColumnWidth(columnIndex, column.columnConfig.width() * 2 * 256);
+            }
+            // 璁剧疆鍒楀ご鍗曞厓鏍�
+            configHeaderCell(sxssfWorkbook, cell, column.columnConfig);
+        }
+        List<CellStyle> styleList = new ArrayList<>();
+        for (int columnIndex = 0; columnIndex < columns.size(); columnIndex++) {
+            ColumnInfo column = columns.get(columnIndex);
+            styleList.add( configDataCell(sxssfWorkbook,   column.columnConfig));
+        }
+        // 鍒涘缓鏁版嵁璁板綍
+        for (int rowIndex = 0; rowIndex < data.size(); rowIndex++) {
+            Row row = sheet.createRow(rowIndex + 1);
+            for (int columnIndex = 0; columnIndex < columns.size(); columnIndex++) {
+                ColumnInfo column = columns.get(columnIndex);
+                Cell cell = row.createCell(columnIndex);
+                cell.setCellValue(getCellData(column, data.get(rowIndex)));
+                // 璁剧疆鏁版嵁鍗曞厓鏍兼牱寮�
+                cell.setCellStyle(styleList.get(columnIndex));
             }
         }
     }
@@ -251,27 +274,29 @@
     /**
      * 閰嶇疆鏁版嵁鍗曞厓鏍�
      */
-    private void configDataCell (SXSSFWorkbook workbook, Cell cell, ExcelColumn columnConfig) {
-        CellStyle style = workbook.createCellStyle();
-        style.setAlignment(columnConfig.align());
-        style.setVerticalAlignment(VerticalAlignment.CENTER);
-        // 璁剧疆鑳屾櫙
-        style.setFillPattern(FillPatternType.SOLID_FOREGROUND);
-        style.setFillForegroundColor(columnConfig.dataBackgroundColor().getIndex());
-        // 瀛椾綋
-        Font font = workbook.createFont();
-        font.setFontHeightInPoints(columnConfig.fontSize());
-        // 瀛椾綋棰滆壊
-        font.setColor(columnConfig.color().getIndex());
-        // 绮椾綋
-        font.setBold(columnConfig.bold());
-        // 鏂滀綋
-        font.setItalic(columnConfig.italic());
-        style.setFont(font);
-        // 杈规
-        configCellBorder(style);
-        style.setWrapText(true);
-        cell.setCellStyle(style);
+    private CellStyle configDataCell (SXSSFWorkbook workbook, ExcelColumn columnConfig) {
+            CellStyle  configDataCellStyle = workbook.createCellStyle();
+            configDataCellStyle.setAlignment(columnConfig.align());
+            configDataCellStyle.setVerticalAlignment(VerticalAlignment.CENTER);
+            // 璁剧疆鑳屾櫙
+            configDataCellStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);
+            configDataCellStyle.setFillForegroundColor(columnConfig.dataBackgroundColor().getIndex());
+            // 瀛椾綋
+            Font font = workbook.createFont();
+            font.setFontHeightInPoints(columnConfig.fontSize());
+            // 瀛椾綋棰滆壊
+            font.setColor(columnConfig.color().getIndex());
+            // 绮椾綋
+            font.setBold(columnConfig.bold());
+            // 鏂滀綋
+            font.setItalic(columnConfig.italic());
+            configDataCellStyle.setFont(font);
+            // 杈规
+            configCellBorder(configDataCellStyle);
+            configDataCellStyle.setWrapText(true);
+
+        return configDataCellStyle;
+//        cell.setCellStyle(configDataCellStyle);
     }
 
     /**
@@ -310,10 +335,11 @@
         configCellBorder(style);
         cell.setCellStyle(style);
     }
+//    public static CellStyle configEndCellStyle =null;
     /**
      * 閰嶇疆鍒楀ご鍗曞厓鏍�
      */
-    private void configEndCell (SXSSFWorkbook workbook, Cell cell ) {
+    private CellStyle configEndCell (SXSSFWorkbook workbook ) {
         CellStyle style = workbook.createCellStyle();
         style.setAlignment(HorizontalAlignment.RIGHT);
         style.setVerticalAlignment(VerticalAlignment.CENTER);
@@ -326,7 +352,8 @@
         style.setFont(font);
         // 璁剧疆杈规
         configCellBorder(style);
-        cell.setCellStyle(style);
+        return style;
+
     }
 
     /**

--
Gitblit v1.9.3