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> 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"> src/views/collaborativeApproval/notificationManagement/meetDraft/index.vue
@@ -1,5 +1,5 @@ <template> <div class="app-container"> <div> <!-- 页颿 é¢ --> <div class="page-header"> <h2>ä¼è®®è稿</h2> src/views/collaborativeApproval/notificationManagement/meetExamine/index.vue
@@ -1,12 +1,6 @@ <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-item label="ä¼è®®ä¸»é¢"> <el-input v-model="searchForm.title" placeholder="请è¾å ¥ä¼è®®ä¸»é¢" clearable/> @@ -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) // è¡¨æ ¼é«åº¦ï¼æ ¹æ®çªå£é«åº¦èªéåºï¼ const tableHeight = ref(window.innerHeight - 380) const roomEnum = ref([]) const staffList = ref([]) // 审æ¹åè¡¨æ°æ® src/views/collaborativeApproval/notificationManagement/meetIndex/index.vue
@@ -1,12 +1,5 @@ <template> <div class="app-container"> <!-- 页颿 é¢ --> <div class="page-header"> <h2>ä¼è®®å®¤ä½¿ç¨æ¥è¯¢</h2> </div> <!-- æ¥è¯¢æ¡ä»¶ --> <el-card class="search-card"> <div> <el-form :model="queryForm" label-width="80px" inline> <el-form-item label="æ¥è¯¢æ¥æ"> <el-date-picker @@ -23,7 +16,6 @@ <el-button @click="resetSearch">éç½®</el-button> </el-form-item> </el-form> </el-card> <!-- ä¼è®®å®¤ä½¿ç¨æ åµ --> <el-card class="table-container" :loading="loading"> src/views/collaborativeApproval/notificationManagement/meetPublish/index.vue
@@ -1,12 +1,6 @@ <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-item label="ä¼è®®ä¸»é¢"> <el-input v-model="searchForm.title" placeholder="请è¾å ¥ä¼è®®ä¸»é¢" clearable/> @@ -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) // è¡¨æ ¼é«åº¦ï¼æ ¹æ®çªå£é«åº¦èªéåºï¼ const tableHeight = ref(window.innerHeight - 380) const roomEnum = ref([]) const staffList = ref([]) // åå¸åè¡¨æ°æ® src/views/collaborativeApproval/notificationManagement/meetSetting/index.vue
@@ -1,20 +1,7 @@ <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> <!-- æç´¢åºå --> <el-card class="search-card"> <el-form :model="searchForm" label-width="100px" inline> <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> @@ -25,12 +12,18 @@ <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-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) // è¡¨æ ¼é«åº¦ï¼æ ¹æ®çªå£é«åº¦èªéåºï¼ 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; src/views/collaborativeApproval/notificationManagement/summary/index.vue
@@ -1,12 +1,6 @@ <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-item label="ä¼è®®ä¸»é¢"> <el-input v-model="searchForm.title" placeholder="请è¾å ¥ä¼è®®ä¸»é¢" clearable /> @@ -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) // è¡¨æ ¼é«åº¦ï¼æ ¹æ®çªå£é«åº¦èªéåºï¼ const tableHeight = ref(window.innerHeight - 380) const roomEnum = ref([]) const staffList = ref([])