From 5a85dcab83e969d6b21c599b512a15117e9b8651 Mon Sep 17 00:00:00 2001 From: liukangdong <898885815@qq.com> Date: 星期四, 04 七月 2024 08:54:30 +0800 Subject: [PATCH] '' --- admin/src/views/meeting/bookings.vue | 205 +++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 159 insertions(+), 46 deletions(-) diff --git a/admin/src/views/meeting/bookings.vue b/admin/src/views/meeting/bookings.vue index 6830547..4a9f8f8 100644 --- a/admin/src/views/meeting/bookings.vue +++ b/admin/src/views/meeting/bookings.vue @@ -1,7 +1,13 @@ <template> <TableLayout :permissions="['business:bookings: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 label="浼氳瀹�" prop="roomId"> <el-select v-model="searchForm.roomId" @@ -9,7 +15,12 @@ clearable placeholder="璇烽�夋嫨浼氳瀹�" > - <el-option v-for="item in rooms" :key="item.id" :value="item.id" :label="item.name" /> + <el-option + v-for="item in rooms" + :key="item.id" + :value="item.id" + :label="item.name" + /> </el-select> </el-form-item> <el-form-item label="棰勭害閮ㄩ棬" prop="department"> @@ -31,10 +42,18 @@ </el-select> --> </el-form-item> <el-form-item label="浼氳涓婚" prop="name"> - <el-input v-model="searchForm.name" placeholder="璇疯緭鍏ヤ細璁富棰�" @keypress.enter.native="search"></el-input> + <el-input + v-model="searchForm.name" + placeholder="璇疯緭鍏ヤ細璁富棰�" + @keypress.enter.native="search" + ></el-input> </el-form-item> <el-form-item label="棰勭害浜�" prop="realName"> - <el-input v-model="searchForm.realName" placeholder="璇疯緭鍏ラ绾︿汉" @keypress.enter.native="search"></el-input> + <el-input + v-model="searchForm.realName" + placeholder="璇疯緭鍏ラ绾︿汉" + @keypress.enter.native="search" + ></el-input> </el-form-item> <el-form-item label="浼氳鐘舵��" prop="status"> <el-select @@ -43,7 +62,12 @@ clearable placeholder="璇烽�夋嫨鐘舵��" > - <el-option v-for="item in status" :key="item.id" :value="item.id" :label="item.name" /> + <el-option + v-for="item in status" + :key="item.id" + :value="item.id" + :label="item.name" + /> </el-select> </el-form-item> <el-form-item label="璧锋鏃堕棿" prop="startTime"> @@ -78,10 +102,30 @@ </el-form> <!-- 琛ㄦ牸鍜屽垎椤� --> <template v-slot:table-wrap> - <ul class="toolbar" v-permissions="['business:bookings:create', 'business:bookings:exportExcel']"> - <li><el-button type="primary" @click="$refs.operaBookingsWindow.open('鏂板缓浼氳')" v-permissions="['business:bookings:create']">鏂板缓</el-button></li> + <ul + class="toolbar" + v-permissions="[ + 'business:bookings:create', + 'business:bookings:exportExcel', + ]" + > + <li> + <el-button + type="primary" + @click="$refs.operaBookingsWindow.open('鏂板缓浼氳')" + v-permissions="['business:bookings:create']" + >鏂板缓</el-button + > + </li> <!-- <li><el-button @click="deleteByIdInBatch" v-permissions="['business:bookings:delete']">鍒犻櫎</el-button></li> --> - <li><el-button :loading="isWorking.export" v-permissions="['business:bookings:exportExcel']" @click="exportExcel">瀵煎嚭</el-button></li> + <li> + <el-button + :loading="isWorking.export" + v-permissions="['business:bookings:exportExcel']" + @click="exportExcel" + >瀵煎嚭</el-button + > + </li> </ul> <el-table v-loading="isWorking.search" @@ -91,42 +135,80 @@ @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}"> + <el-table-column + prop="name" + label="浼氳涓婚" + align="center" + min-width="120px" + show-overflow-tooltip + > + <template slot-scope="{ row }"> <span class="long-title-style">{{ row.name }}</span> </template> </el-table-column> - <el-table-column prop="roomName" label="浼氳瀹�" align="center" min-width="120px" show-overflow-tooltip> - <template slot-scope="{row}"> + <el-table-column + prop="roomName" + label="浼氳瀹�" + align="center" + min-width="120px" + show-overflow-tooltip + > + <template slot-scope="{ row }"> <span class="long-title-style">{{ row.roomName }}</span> </template> </el-table-column> - <el-table-column prop="meetingTime" label="浼氳鏃堕棿" align="center" min-width="120px"></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}"> - <span v-if="row.status==0" style="color:rgb(127, 178, 53)">姝e父</span> - <span v-else style="color:rgb(234, 54, 38)">鍙栨秷</span> + <el-table-column + prop="meetingTime" + label="浼氳鏃堕棿" + align="center" + min-width="120px" + ></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 }"> + <span v-if="row.status == 0" style="color: rgb(127, 178, 53)" + >姝e父</span + > + <span v-else style="color: rgb(234, 54, 38)">鍙栨秷</span> <!-- {{ row.status==0 ? '姝e父' : '鍙栨秷' }} --> </template> </el-table-column> - <el-table-column prop="createDate" label="鍒涘缓鏃堕棿" align="center" min-width="100px"></el-table-column> + <el-table-column + prop="createDate" + label="鍒涘缓鏃堕棿" + align="center" + min-width="100px" + ></el-table-column> <!-- <el-table-column prop="content" label="浼氳鍐呭" min-width="100px"></el-table-column> --> <el-table-column - v-if="containPermissions(['business:bookings:update', 'business:bookings:delete'])" + v-if=" + containPermissions([ + 'business:bookings:update', + 'business:bookings:delete', + ]) + " label="鎿嶄綔" - min-width="120" + min-width="100" align="center" fixed="right" > - <template slot-scope="{row}"> - <template v-if="row.status==0"> - <el-button type="text" @click="$refs.operaBookingsDetailWindow.open('浼氳璇︽儏', row)">鏌ョ湅</el-button> - <el-button v-if="row.flag == 0" type="text" @click="$refs.operaBookingsWindow.open('缂栬緫浼氳棰勭害', row)" v-permissions="['business:bookings:update']">淇敼</el-button> - <el-button type="text" @click="copy(row)">澶嶅埗</el-button> - <el-button v-if="row.flag == 0" type="text" @click="cancelMeeting(row.id)" v-permissions="['business:bookings:update']">鍙栨秷</el-button> + <template slot-scope="{ row }"> + <template> + <el-button + type="text" + @click="$refs.operaBookingsDetailWindow.open('浼氳璇︽儏', row)" + >鏌ョ湅璇︽儏</el-button + > + <!-- <el-button v-if="row.flag == 0" type="text" @click="$refs.operaBookingsWindow.open('缂栬緫浼氳棰勭害', row)" v-permissions="['business:bookings:update']">淇敼</el-button> --> + <!-- <el-button type="text" @click="copy(row)">澶嶅埗</el-button> --> + <!-- <el-button v-if="row.flag == 0" type="text" @click="cancelMeeting(row.id)" v-permissions="['business:bookings:update']">鍙栨秷</el-button> --> </template> - <el-button v-else type="text" @click="deleteById(row)" v-permissions="['business:bookings:delete']">鍒犻櫎</el-button> + <!-- <el-button v-else type="text" @click="deleteById(row)" v-permissions="['business:bookings:delete']">鍒犻櫎</el-button> --> </template> </el-table-column> </el-table> @@ -138,8 +220,15 @@ </pagination> </template> <!-- 鏂板缓/淇敼 --> - <OperaBookingsWindow ref="operaBookingsWindow" @success="handlePageChange"/> - <OperaBookingsDetailWindow ref="operaBookingsDetailWindow"/> + <OperaBookingsWindow + ref="operaBookingsWindow" + @success="handlePageChange" + /> + <OperaBookingsDetailWindow + @success="search" + ref="operaBookingsDetailWindow" + /> + </TableLayout> </template> @@ -158,7 +247,7 @@ name: 'Bookings', extends: BaseTable, components: { TableLayout, Pagination, OperaBookingsWindow, OperaBookingsDetailWindow }, - data () { + data() { return { date: [], // 鎼滅储 @@ -198,12 +287,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', @@ -226,7 +315,7 @@ this.changeRadio('0') }, methods: { - changeRadio (e) { + changeRadio(e) { if (e === '0') { this.searchForm.startTime = timeForMat(0)[0] this.searchForm.endTime = timeForMat(0)[1] @@ -242,7 +331,7 @@ } this.search() }, - newTree (tree) { + newTree(tree) { if (tree == null) { return [] } @@ -259,12 +348,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 = '0' @@ -272,17 +361,16 @@ this.searchForm.endTime = '' this.changeRadio('0') }, - 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(() => { this.$message.success('浼氳淇℃伅澶嶅埗鎴愬姛锛屽幓鍒嗕韩缁欏悓浜嬪惂~') }) .catch(e => { - this.$message.error(e) }) }, - cancelMeeting (id) { + cancelMeeting(id) { this.$dialog.messageWaring('鍙栨秷浼氳', '鏄惁鍙栨秷褰撳墠浼氳锛�') .then(() => { cancelById({ id }) @@ -291,29 +379,26 @@ this.handlePageChange() }) .catch(e => { - this.$message.error(e) }) }) }, - showDetail (id) { + showDetail(id) { bookingsDetail(id) .then(res => { this.$refs.operaBookingsDetailWindow.open('浼氳璇︽儏', res) }) .catch(e => { - this.$message.error(e) }) }, - editBookings (id) { + editBookings(id) { bookingsDetail(id) .then(res => { this.$refs.operaBookingsWindow.open('缂栬緫浼氳棰勭害', res) }) .catch(e => { - this.$message.error(e) }) }, - handlePageChange (pageIndex) { + handlePageChange(pageIndex) { this.__checkApi() this.tableData.pagination.pageIndex = pageIndex || this.tableData.pagination.pageIndex this.isWorking.search = true @@ -341,3 +426,31 @@ } } </script> + +<style lang="scss" scoped> +.detail_modal { + padding: 20px 16px; + .title { + text-align: center; + font-weight: 600; + font-size: 16px; + margin-bottom: 20px; + } + .h1 { + font-weight: 600; + font-size: 16px; + margin-bottom: 15px; + } + .line { + display: flex; + margin-bottom: 10px; + .label { + width: 70px; + color: #888888; + } + .value { + color: #333333; + } + } +} +</style> -- Gitblit v1.9.3