From be30a62a2dddf9ba36e69ade654513cbd7aa0c52 Mon Sep 17 00:00:00 2001 From: zhanghua <314079846@qq.com> Date: 星期六, 14 九月 2024 11:56:31 +0800 Subject: [PATCH] 机构切换 --- src/views/scheduleCourses/index.vue | 278 ++++++++++++++++++++++++++++--------------------------- 1 files changed, 141 insertions(+), 137 deletions(-) diff --git a/src/views/scheduleCourses/index.vue b/src/views/scheduleCourses/index.vue index 08aebe3..5bfb40b 100644 --- a/src/views/scheduleCourses/index.vue +++ b/src/views/scheduleCourses/index.vue @@ -1,151 +1,155 @@ <template> - <div class="app-container"> - <el-tabs v-model="activeName" @tab-click="fetchData"> - <el-tab-pane label="鍏ㄩ儴" name="all" /> - <el-tab-pane label="宸插仠鐢�" name="deactivated" /> - </el-tabs> - <div style="display: flex; flex-direction: row-reverse"> - <div style="width: 300px"> - <el-input - placeholder="鎸夎绋嬪悕绉版悳绱�" - v-model="data.keyword" - class="input-with-select" - size="small" - > - <el-button - slot="append" - icon="el-icon-search" - @click="fetchData" - ></el-button> - </el-input> - </div> + <div class="app-container"> + <el-tabs v-model="activeName" @tab-click="fetchData"> + <el-tab-pane label="鍏ㄩ儴" name="all" /> + <el-tab-pane label="宸插仠鐢�" name="deactivated" /> + </el-tabs> + <div style="display: flex; flex-direction: row-reverse"> + <div style="width: 300px"> + <el-input + placeholder="鎸夎绋嬪悕绉版悳绱�" + v-model="data.keyword" + class="input-with-select" + size="small" + > + <el-button + slot="append" + icon="el-icon-search" + @click="fetchData" + ></el-button> + </el-input> + </div> + </div> + <div style="height: calc(100vh - 248px)"> + <el-table + v-loading="listLoading" + :data="list" + element-loading-text="Loading" + fit + height="100%" + > + <el-table-column label="璇剧▼鍚嶇О"> + <template slot-scope="scope"> + <el-link type="primary" :underline="false">{{ + scope.row.name + }}</el-link> + </template> + </el-table-column> + <el-table-column + label="鍋滅敤鏃堕棿" + width="200" + v-if="activeName == 'deactivated'" + > + <template slot-scope="scope"> + {{ scope.row.modifyTime }} + </template> + </el-table-column> + <el-table-column + label="鎿嶄綔" + width="200" + v-if="activeName == 'deactivated'" + > + <template slot-scope=""> + <el-link type="primary" :underline="false" + >鎭㈠</el-link + > + </template> + </el-table-column> + </el-table> + </div> + <div> + <el-pagination + @size-change="handleSizeChange" + @current-change="handleCurrentChange" + :current-page="data.pageIn.index + 1" + :page-sizes="[10, 20, 30, 40]" + :page-size="data.pageIn.size" + layout="total, sizes, prev, pager, next, jumper" + :total="total" + > + </el-pagination> + </div> </div> - <div style="height: calc(100vh - 248px)"> - <el-table - v-loading="listLoading" - :data="list" - element-loading-text="Loading" - fit - height="100%" - > - <el-table-column label="璇剧▼鍚嶇О"> - <template slot-scope="scope"> - <el-link type="primary" :underline="false">{{ - scope.row.name - }}</el-link> - </template> - </el-table-column> - <el-table-column - label="鍋滅敤鏃堕棿" - width="200" - v-if="activeName == 'deactivated'" - > - <template slot-scope="scope"> - {{ scope.row.modifyTime }} - </template> - </el-table-column> - <el-table-column - label="鎿嶄綔" - width="200" - v-if="activeName == 'deactivated'" - > - <template slot-scope=""> - <el-link type="primary" :underline="false">鎭㈠</el-link> - </template> - </el-table-column> - </el-table> - </div> - <div> - <el-pagination - @size-change="handleSizeChange" - @current-change="handleCurrentChange" - :current-page="data.pageIn.index + 1" - :page-sizes="[10, 20, 30, 40]" - :page-size="data.pageIn.size" - layout="total, sizes, prev, pager, next, jumper" - :total="total" - > - </el-pagination> - </div> - </div> </template> <script> import { getCourse, getDeletedItem } from "@/api/scheduleCourses"; export default { - filters: { - statusFilter(status) { - const statusMap = { - published: "success", - draft: "gray", - deleted: "danger", - }; - return statusMap[status]; - }, - }, - data() { - return { - list: null, - listLoading: true, - activeName: "all", - total: 0, - data: { - staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id, - keyword: "", - pageIn: { - //鍙�夛紝濡傛灉鏄垎椤垫煡璇紝闇�瑕佸姞涓娿�� - index: 0, //蹇呴�� - size: 10, //姣忛〉鐨勫ぇ灏忋�傞粯璁�20 - sorts: { - name: "name", //鎺掑簭瀛楁鍚嶇О - direction: "ASC", //鎺掑簭鏂瑰悜 - }, + filters: { + statusFilter(status) { + const statusMap = { + published: "success", + draft: "gray", + deleted: "danger", + }; + return statusMap[status]; }, - types: ["BOOKING_NONE", "BOOKING_TIME_STAFF", "BOOKING_TIME_PLACE"], - }, - }; - }, - created() { - this.fetchData(); - }, - methods: { - handleSizeChange(val) { - this.data.pageIn.size = val; - this.fetchData("pageIn"); }, - handleCurrentChange(val) { - this.data.pageIn.index = val - 1; - this.fetchData("pageIn"); - }, - fetchData(_val) { - if (_val !== "pageIn") { - this.data.pageIn.index = 0; - this.data.pageIn.size = 10; - } - this.listLoading = true; - if (this.activeName == "all") { - this.listLoading = true; - getCourse(this.data).then((response) => { - this.list = response.data.findCourse.ls; - this.total = response.data.findCourse.pageOut.total; - this.listLoading = false; - }); - } else if (this.activeName == "deactivated") { - this.listLoading = true; - let data = { - itemType: "COURSE", - staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id, - keyword: this.data.keyword, - pageIn: { ...this.data.pageIn }, + data() { + return { + list: null, + listLoading: true, + activeName: "all", + total: 0, + data: { + staffId: JSON.parse(localStorage.getItem("selectStaff")).id, + keyword: "", + pageIn: { + //鍙�夛紝濡傛灉鏄垎椤垫煡璇紝闇�瑕佸姞涓娿�� + index: 0, //蹇呴�� + size: 10, //姣忛〉鐨勫ぇ灏忋�傞粯璁�20 + sorts: { + name: "name", //鎺掑簭瀛楁鍚嶇О + direction: "ASC", //鎺掑簭鏂瑰悜 + }, + }, + types: ["BOOKING_NONE", "BOOKING_TIME_STAFF", "BOOKING_TIME_PLACE"], + }, }; - getDeletedItem(data).then((response) => { - this.list = response.data.findDeletedItem.ls; - this.total = response.data.findDeletedItem.pageOut.total; - this.listLoading = false; - }); - } }, - }, + created() { + this.fetchData(); + }, + methods: { + handleSizeChange(val) { + this.data.pageIn.size = val; + this.fetchData("pageIn"); + }, + handleCurrentChange(val) { + this.data.pageIn.index = val - 1; + this.fetchData("pageIn"); + }, + fetchData(_val) { + + this.data.staffId = JSON.parse(localStorage.getItem("selectStaff")).id + if (_val !== "pageIn") { + this.data.pageIn.index = 0; + this.data.pageIn.size = 10; + } + this.listLoading = true; + if (this.activeName == "all") { + this.listLoading = true; + getCourse(this.data).then((response) => { + this.list = response.data.findCourse.ls; + this.total = response.data.findCourse.pageOut.total; + this.listLoading = false; + }); + } else if (this.activeName == "deactivated") { + this.listLoading = true; + let data = { + itemType: "COURSE", + staffId: JSON.parse(localStorage.getItem("selectStaff")).id, + keyword: this.data.keyword, + pageIn: { ...this.data.pageIn }, + }; + getDeletedItem(data).then((response) => { + this.list = response.data.findDeletedItem.ls; + this.total = response.data.findDeletedItem.pageOut.total; + this.listLoading = false; + }); + } + }, + }, }; </script> -- Gitblit v1.8.0