From 3f3d35d6d6445f9cc90a8cf7bb496bee7f465542 Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期二, 06 一月 2026 17:12:09 +0800
Subject: [PATCH] fix: 会议管理页面合并
---
src/views/collaborativeApproval/notificationManagement/summary/index.vue | 16 +--
src/views/collaborativeApproval/notificationManagement/meetExamine/index.vue | 16 +--
src/views/collaborativeApproval/notificationManagement/meetPublish/index.vue | 16 +--
src/views/collaborativeApproval/notificationManagement/meetSetting/index.vue | 61 ++++++++-------
src/views/collaborativeApproval/notificationManagement/meetApplication/index.vue | 6 -
src/views/collaborativeApproval/meetingManagement/index.vue | 63 +++++++++++++++
src/views/collaborativeApproval/notificationManagement/meetDraft/index.vue | 2
src/views/collaborativeApproval/notificationManagement/meetIndex/index.vue | 12 --
8 files changed, 118 insertions(+), 74 deletions(-)
diff --git a/src/views/collaborativeApproval/meetingManagement/index.vue b/src/views/collaborativeApproval/meetingManagement/index.vue
new file mode 100644
index 0000000..69b0275
--- /dev/null
+++ b/src/views/collaborativeApproval/meetingManagement/index.vue
@@ -0,0 +1,63 @@
+<template>
+ <div class="app-container">
+ <div class="tabs-wrapper">
+ <el-tabs
+ v-model="activeTab"
+ class="meeting-tabs"
+ @tab-change="handleTabChange"
+ >
+ <el-tab-pane label="浼氳璁剧疆" name="setting" />
+ <el-tab-pane label="浼氳鍒楄〃" name="index" />
+ <el-tab-pane label="浼氳鐢宠" name="application" />
+ <el-tab-pane label="浼氳瀹℃壒" name="examine" />
+ <el-tab-pane label="浼氳鍙戝竷" name="publish" />
+ <el-tab-pane label="浼氳鎬荤粨" name="summary" />
+ </el-tabs>
+ </div>
+
+ <div class="tab-content">
+ <keep-alive>
+ <component :is="currentComponent" />
+ </keep-alive>
+ </div>
+ </div>
+</template>
+
+<script setup>
+import { ref, computed } from 'vue'
+import MeetSetting from '../notificationManagement/meetSetting/index.vue'
+import MeetIndex from '../notificationManagement/meetIndex/index.vue'
+import MeetApplication from '../notificationManagement/meetApplication/index.vue'
+import MeetExamine from '../notificationManagement/meetExamine/index.vue'
+import MeetPublish from '../notificationManagement/meetPublish/index.vue'
+import MeetSummary from '../notificationManagement/summary/index.vue'
+
+const activeTab = ref('setting')
+
+const tabComponentMap = {
+ setting: MeetSetting,
+ index: MeetIndex,
+ application: MeetApplication,
+ examine: MeetExamine,
+ publish: MeetPublish,
+ summary: MeetSummary
+}
+
+const currentComponent = computed(() => tabComponentMap[activeTab.value] || MeetSetting)
+
+function handleTabChange(name) {
+ activeTab.value = name
+}
+</script>
+
+<style scoped lang="scss">
+
+.tabs-wrapper {
+ margin-bottom: 10px;
+}
+
+.tab-content {
+ min-height: 400px;
+}
+</style>
+
diff --git a/src/views/collaborativeApproval/notificationManagement/meetApplication/index.vue b/src/views/collaborativeApproval/notificationManagement/meetApplication/index.vue
index 1a2859a..7781593 100644
--- a/src/views/collaborativeApproval/notificationManagement/meetApplication/index.vue
+++ b/src/views/collaborativeApproval/notificationManagement/meetApplication/index.vue
@@ -1,9 +1,5 @@
<template>
- <div class="app-container">
- <!-- 椤甸潰鏍囬 -->
- <div class="page-header">
- <h2>浼氳鐢宠</h2>
- </div>
+ <div>
<!-- 鐢宠绫诲瀷閫夋嫨 -->
<el-card class="type-card">
diff --git a/src/views/collaborativeApproval/notificationManagement/meetDraft/index.vue b/src/views/collaborativeApproval/notificationManagement/meetDraft/index.vue
index 0c62b8b..11d1774 100644
--- a/src/views/collaborativeApproval/notificationManagement/meetDraft/index.vue
+++ b/src/views/collaborativeApproval/notificationManagement/meetDraft/index.vue
@@ -1,5 +1,5 @@
<template>
- <div class="app-container">
+ <div>
<!-- 椤甸潰鏍囬 -->
<div class="page-header">
<h2>浼氳鑽夌</h2>
diff --git a/src/views/collaborativeApproval/notificationManagement/meetExamine/index.vue b/src/views/collaborativeApproval/notificationManagement/meetExamine/index.vue
index 0883ec3..83747a0 100644
--- a/src/views/collaborativeApproval/notificationManagement/meetExamine/index.vue
+++ b/src/views/collaborativeApproval/notificationManagement/meetExamine/index.vue
@@ -1,13 +1,7 @@
<template>
- <div class="app-container">
- <!-- 椤甸潰鏍囬 -->
- <div class="page-header">
- <h2>浼氳瀹℃壒</h2>
- </div>
+ <div>
- <!-- 鎼滅储鍖哄煙 -->
- <el-card class="search-card">
- <el-form :model="searchForm" inline>
+ <el-form :model="searchForm" inline>
<el-form-item label="浼氳涓婚">
<el-input v-model="searchForm.title" placeholder="璇疯緭鍏ヤ細璁富棰�" clearable/>
</el-form-item>
@@ -27,11 +21,10 @@
<el-button @click="resetSearch">閲嶇疆</el-button>
</el-form-item>
</el-form>
- </el-card>
<!-- 浼氳瀹℃壒鍒楄〃 -->
<el-card>
- <el-table v-loading="loading" :data="approvalList" border>
+ <el-table v-loading="loading" :data="approvalList" border :height="tableHeight">
<el-table-column prop="title" label="浼氳涓婚" align="center" min-width="200" show-overflow-tooltip/>
<el-table-column prop="applicant" label="鐢宠浜�" align="center" width="120"/>
<el-table-column prop="host" label="涓荤悊浜�" align="center" width="120"/>
@@ -203,6 +196,9 @@
// 鎬绘潯鏁�
const total = ref(0)
+
+// 琛ㄦ牸楂樺害锛堟牴鎹獥鍙i珮搴﹁嚜閫傚簲锛�
+const tableHeight = ref(window.innerHeight - 380)
const roomEnum = ref([])
const staffList = ref([])
// 瀹℃壒鍒楄〃鏁版嵁
diff --git a/src/views/collaborativeApproval/notificationManagement/meetIndex/index.vue b/src/views/collaborativeApproval/notificationManagement/meetIndex/index.vue
index 2e9d9a9..9b5325f 100644
--- a/src/views/collaborativeApproval/notificationManagement/meetIndex/index.vue
+++ b/src/views/collaborativeApproval/notificationManagement/meetIndex/index.vue
@@ -1,13 +1,6 @@
<template>
- <div class="app-container">
- <!-- 椤甸潰鏍囬 -->
- <div class="page-header">
- <h2>浼氳瀹や娇鐢ㄦ煡璇�</h2>
- </div>
-
- <!-- 鏌ヨ鏉′欢 -->
- <el-card class="search-card">
- <el-form :model="queryForm" label-width="80px" inline>
+ <div>
+ <el-form :model="queryForm" label-width="80px" inline>
<el-form-item label="鏌ヨ鏃ユ湡">
<el-date-picker
v-model="queryForm.meetingDate"
@@ -23,7 +16,6 @@
<el-button @click="resetSearch">閲嶇疆</el-button>
</el-form-item>
</el-form>
- </el-card>
<!-- 浼氳瀹や娇鐢ㄦ儏鍐� -->
<el-card class="table-container" :loading="loading">
diff --git a/src/views/collaborativeApproval/notificationManagement/meetPublish/index.vue b/src/views/collaborativeApproval/notificationManagement/meetPublish/index.vue
index 3f0fc69..2351293 100644
--- a/src/views/collaborativeApproval/notificationManagement/meetPublish/index.vue
+++ b/src/views/collaborativeApproval/notificationManagement/meetPublish/index.vue
@@ -1,13 +1,7 @@
<template>
- <div class="app-container">
- <!-- 椤甸潰鏍囬 -->
- <div class="page-header">
- <h2>浼氳鍙戝竷</h2>
- </div>
+ <div>
- <!-- 鎼滅储鍖哄煙 -->
- <el-card class="search-card">
- <el-form :model="searchForm" inline>
+ <el-form :model="searchForm" inline>
<el-form-item label="浼氳涓婚">
<el-input v-model="searchForm.title" placeholder="璇疯緭鍏ヤ細璁富棰�" clearable/>
</el-form-item>
@@ -25,11 +19,10 @@
<el-button @click="resetSearch">閲嶇疆</el-button>
</el-form-item>
</el-form>
- </el-card>
<!-- 浼氳鍙戝竷鍒楄〃 -->
<el-card>
- <el-table v-loading="loading" :data="approvalList" border>
+ <el-table v-loading="loading" :data="approvalList" border :height="tableHeight">
<el-table-column prop="title" label="浼氳涓婚" align="center" min-width="200" show-overflow-tooltip/>
<el-table-column prop="applicant" label="鐢宠浜�" align="center" width="120"/>
<el-table-column prop="host" label="涓荤悊浜�" align="center" width="120"/>
@@ -201,6 +194,9 @@
// 鎬绘潯鏁�
const total = ref(0)
+
+// 琛ㄦ牸楂樺害锛堟牴鎹獥鍙i珮搴﹁嚜閫傚簲锛�
+const tableHeight = ref(window.innerHeight - 380)
const roomEnum = ref([])
const staffList = ref([])
// 鍙戝竷鍒楄〃鏁版嵁
diff --git a/src/views/collaborativeApproval/notificationManagement/meetSetting/index.vue b/src/views/collaborativeApproval/notificationManagement/meetSetting/index.vue
index 371bde7..ad4931a 100644
--- a/src/views/collaborativeApproval/notificationManagement/meetSetting/index.vue
+++ b/src/views/collaborativeApproval/notificationManagement/meetSetting/index.vue
@@ -1,36 +1,29 @@
<template>
- <div class="app-container">
- <!-- 椤甸潰鏍囬 -->
- <div class="page-header">
- <h2>浼氳瀹よ缃�</h2>
- <div>
- <el-button @click="handleExport" style="margin-right: 10px">瀵煎嚭</el-button>
- <el-button type="primary" @click="handleAdd">
- <el-icon><Plus /></el-icon>
- 鏂板浼氳瀹�
- </el-button>
- </div>
- </div>
-
+ <div>
<!-- 鎼滅储鍖哄煙 -->
- <el-card class="search-card">
- <el-form :model="searchForm" label-width="100px" inline>
- <el-form-item label="浼氳瀹ゅ悕绉�">
- <el-input v-model="searchForm.name" placeholder="璇疯緭鍏ヤ細璁鍚嶇О" clearable />
- </el-form-item>
- <el-form-item label="浣嶇疆">
- <el-input v-model="searchForm.location" placeholder="璇疯緭鍏ヤ綅缃�" clearable />
- </el-form-item>
- <el-form-item>
- <el-button type="primary" @click="handleSearch">鎼滅储</el-button>
- <el-button @click="resetSearch">閲嶇疆</el-button>
- </el-form-item>
- </el-form>
- </el-card>
+ <el-form :model="searchForm" label-width="100px" class="search-form">
+ <el-form-item label="浼氳瀹ゅ悕绉�">
+ <el-input v-model="searchForm.name" placeholder="璇疯緭鍏ヤ細璁鍚嶇О" clearable />
+ </el-form-item>
+ <el-form-item label="浣嶇疆">
+ <el-input v-model="searchForm.location" placeholder="璇疯緭鍏ヤ綅缃�" clearable />
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" @click="handleSearch">鎼滅储</el-button>
+ <el-button @click="resetSearch">閲嶇疆</el-button>
+ </el-form-item>
+ <el-form-item class="search-actions">
+ <el-button @click="handleExport">瀵煎嚭</el-button>
+ <el-button type="primary" @click="handleAdd">
+ <el-icon><Plus /></el-icon>
+ 鏂板浼氳瀹�
+ </el-button>
+ </el-form-item>
+ </el-form>
<!-- 浼氳瀹ゅ垪琛� -->
<el-card>
- <el-table v-loading="loading" :data="meetingRoomList" border>
+ <el-table v-loading="loading" :data="meetingRoomList" border :height="tableHeight">
<el-table-column prop="name" label="浼氳瀹ゅ悕绉�" align="center" />
<el-table-column prop="location" label="浣嶇疆" align="center" />
<el-table-column prop="capacity" label="瀹圭撼浜烘暟" align="center" />
@@ -120,6 +113,9 @@
// 鎬绘潯鏁�
const total = ref(0)
+
+// 琛ㄦ牸楂樺害锛堟牴鎹獥鍙i珮搴﹁嚜閫傚簲锛�
+const tableHeight = ref(window.innerHeight - 380)
// 浼氳瀹ゅ垪琛ㄦ暟鎹�
const meetingRoomList = ref([])
@@ -291,6 +287,15 @@
padding: 20px;
}
+.search-form {
+ display: flex;
+ /* align-items: center; */
+}
+
+.search-actions {
+ margin-left: auto;
+}
+
.page-header {
display: flex;
justify-content: space-between;
diff --git a/src/views/collaborativeApproval/notificationManagement/summary/index.vue b/src/views/collaborativeApproval/notificationManagement/summary/index.vue
index 04eaa4a..a00316d 100644
--- a/src/views/collaborativeApproval/notificationManagement/summary/index.vue
+++ b/src/views/collaborativeApproval/notificationManagement/summary/index.vue
@@ -1,13 +1,7 @@
<template>
- <div class="app-container">
- <!-- 椤甸潰鏍囬 -->
- <div class="page-header">
- <h2>浼氳绾</h2>
- </div>
+ <div>
- <!-- 鎼滅储鍖哄煙 -->
- <el-card class="search-card">
- <el-form :model="searchForm" inline>
+ <el-form :model="searchForm" inline>
<el-form-item label="浼氳涓婚">
<el-input v-model="searchForm.title" placeholder="璇疯緭鍏ヤ細璁富棰�" clearable />
</el-form-item>
@@ -19,11 +13,10 @@
<el-button @click="resetSearch">閲嶇疆</el-button>
</el-form-item>
</el-form>
- </el-card>
<!-- 浼氳鍒楄〃 -->
<el-card>
- <el-table v-loading="loading" :data="meetingList" border>
+ <el-table v-loading="loading" :data="meetingList" border :height="tableHeight">
<el-table-column prop="title" label="浼氳涓婚" align="center" min-width="200" show-overflow-tooltip />
<el-table-column prop="applicant" label="鐢宠浜�" align="center" width="120" />
<el-table-column prop="host" label="涓绘寔浜�" align="center" width="120" />
@@ -175,6 +168,9 @@
// 鎬绘潯鏁�
const total = ref(0)
+
+// 琛ㄦ牸楂樺害锛堟牴鎹獥鍙i珮搴﹁嚜閫傚簲锛�
+const tableHeight = ref(window.innerHeight - 380)
const roomEnum = ref([])
const staffList = ref([])
--
Gitblit v1.9.3