From 9d059f329e8d9fd629bdbf209e66ae7220155320 Mon Sep 17 00:00:00 2001 From: zhanghua <314079846@qq.com> Date: 星期日, 22 十二月 2024 14:55:38 +0800 Subject: [PATCH] 订单打印 --- src/views/student/index.vue | 527 ++++++++++++++++++++++++++++----------------------------- 1 files changed, 259 insertions(+), 268 deletions(-) diff --git a/src/views/student/index.vue b/src/views/student/index.vue index e743286..9de881d 100644 --- a/src/views/student/index.vue +++ b/src/views/student/index.vue @@ -1,136 +1,132 @@ <template> - <div class="app-container"> - <el-tabs v-model="activeName" @tab-click="handleClick"> - <el-tab-pane label="鍏ㄩ儴" name="all" /> - <el-tab-pane label="寰呯画璐�" name="pendingFees" /> - <el-tab-pane label="宸茶繃鏈�" name="expired" /> - <el-tab-pane label="宸插仠鐢�" name="deactivated" /> - </el-tabs> - <div style="display: flex; justify-content: space-between"> - <!-- <el-button type="primary" size="small" @click="showCreate">鏂板缓瀛﹀憳</el-button> --> - <div> - <el-button type="primary" size="small" @click="handleExport" - >瀵煎嚭瀛﹀憳</el-button - > - <el-button type="primary" size="small" @click="handleImport" - >瀵煎叆瀛﹀憳</el-button - > - </div> - <div style="width: 500px"> - <!-- <el-date-picker v-model="dateRange" type="daterange" range-separator="鑷�" start-placeholder="寮�濮嬫棩鏈�" + <div class="app-container"> + <el-tabs v-model="activeName" @tab-click="handleClick"> + <el-tab-pane label="鍏ㄩ儴" name="all" /> + <el-tab-pane label="寰呯画璐�" name="pendingFees" /> + <el-tab-pane label="宸茶繃鏈�" name="expired" /> + <el-tab-pane label="宸插仠鐢�" name="deactivated" /> + </el-tabs> + <div style="display: flex; justify-content: space-between"> + <!-- <el-button type="primary" size="small" @click="showCreate">鏂板缓瀛﹀憳</el-button> --> + <div> + <el-button type="primary" size="small" @click="handleExport" + >瀵煎嚭瀛﹀憳</el-button + > + <el-button type="primary" size="small" @click="handleImport" + >瀵煎叆瀛﹀憳</el-button + > + </div> + <div style="width: 500px"> + <!-- <el-date-picker v-model="dateRange" type="daterange" range-separator="鑷�" start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡" value-format="yyyy-MM-dd" style="margin-right: 10px"> </el-date-picker> <el-button type="primary" @click="handleExport2">瀵煎嚭璇惧寘</el-button> --> - </div> - <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="handleClick" - ></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%" + </div> + <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="handleClick" + ></el-button> + </el-input> + </div> + </div> + <div style="height: calc(100vh - 208px)"> + <el-table + v-loading="listLoading" + :data="list" + element-loading-text="Loading" + fit + height="100%" + > + <el-table-column label="濮撳悕" prop=""> + <template slot-scope="scope"> + <el-link + type="primary" + :underline="false" + @click="goDetails(scope.row)" + >{{ scope.row.name }}</el-link > - <el-table-column label="濮撳悕" prop=""> - <template slot-scope="scope"> - <el-link - type="primary" - :underline="false" - @click="goDetails(scope.row)" - >{{ scope.row.name }}</el-link - > - <!-- <el-link type="primary" :underline="false">{{ + <!-- <el-link type="primary" :underline="false">{{ scope.row.name }}</el-link> --> - </template> - </el-table-column> - <el-table-column - label="鎬у埆" - width="80" - v-if="activeName !== 'deactivated'" - > - <template slot-scope="scope"> - {{ scope.row.gender == 'FEMALE' ? '濂�' : '鐢�' }} - </template> - </el-table-column> - <el-table-column - label="鎵嬫満鍙�" - width="200" - prop="mobile" - v-if="activeName !== 'deactivated'" - > - <template slot-scope="scope"> - {{ scope.row.mobile ? scope.row.mobile : '--' }} - </template> - </el-table-column> - <el-table-column - label="鏄惁缁戝畾寰俊" - width="200" - v-if="activeName !== 'deactivated'" - > - <template slot-scope="scope"> - {{ scope.row.user ? '鏄�' : '鍚�' }} - </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 - > - - <el-link type="primary" :underline="false" - >鎭㈠</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> - </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> - <el-dialog :visible.sync="dialogVisible" width="560px" title="瀵煎叆瀛﹀憳"> - <UploadStudent - v-if="dialogVisible" - @load-success="reloadData" - ></UploadStudent> - </el-dialog> + </template> + </el-table-column> + <el-table-column + label="鎬у埆" + width="80" + v-if="activeName !== 'deactivated'" + > + <template slot-scope="scope"> + {{ scope.row.gender == "FEMALE" ? "濂�" : "鐢�" }} + </template> + </el-table-column> + <el-table-column + label="鎵嬫満鍙�" + width="200" + prop="mobile" + v-if="activeName !== 'deactivated'" + > + <template slot-scope="scope"> + {{ scope.row.mobile ? scope.row.mobile : "--" }} + </template> + </el-table-column> + <el-table-column + label="鏄惁缁戝畾寰俊" + width="200" + v-if="activeName !== 'deactivated'" + > + <template slot-scope="scope"> + {{ scope.row.user ? "鏄�" : "鍚�" }} + </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> + + <el-link type="primary" :underline="false">鎭㈠</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> </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> + <el-dialog :visible.sync="dialogVisible" width="560px" title="瀵煎叆瀛﹀憳"> + <UploadStudent + v-if="dialogVisible" + @load-success="reloadData" + ></UploadStudent> + </el-dialog> + </div> </template> <script> @@ -138,155 +134,150 @@ import UploadStudent from "./components/upload-student.vue"; export default { - filters: { - statusFilter(status) { - const statusMap = { - published: "success", - draft: "gray", - deleted: "danger", - }; - return statusMap[status]; + filters: { + statusFilter(status) { + const statusMap = { + published: "success", + draft: "gray", + deleted: "danger", + }; + return statusMap[status]; + }, + }, + components: { + UploadStudent, + }, + data() { + return { + dateRange: [], + 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", //鎺掑簭鏂瑰悜 + }, }, + }, + dialogVisible: false, + }; + }, + created() { + // 鑾峰彇鍦板潃鏍廲ode + // let code = this.$route.query.code; + // if (code) { + // if (localStorage.getItem("code")) { + // if (code !== localStorage.getItem("code")) { + // this.getUserDate(code); + // } + // } else { + // this.getUserDate(code); + // } + // } else { + // if (!localStorage.getItem("user")) { + // this.$router.push("/login"); + // } + // } + this.fetchData(); + }, + methods: { + handleExport() { + this.download( + "exportPlayer?orgId=" + + JSON.parse(localStorage.getItem("selectStaff")).org.id, + {}, + `瀵煎嚭_${new Date().getTime()}.xlsx` + ); }, - components: { - UploadStudent, + handleExport2() { + if (this.dateRange.length == 0) { + this.$message.warning("璇烽�夋嫨鏃ユ湡鑼冨洿"); + return; + } + this.download( + "exportReport?startDate=" + + this.dateRange[0] + + "&endDate=" + + this.dateRange[1], + {}, + `瀵煎嚭_${new Date().getTime()}.xlsx` + ); }, - data() { - return { - dateRange: [], - 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", //鎺掑簭鏂瑰悜 - }, - }, - }, - dialogVisible: false, + handleImport() { + this.dialogVisible = true; + }, + reloadData() { + this.dialogVisible = false; + this.fetchData(); + }, + fetchData() { + this.listLoading = true; + getData(this.data).then((response) => { + this.list = response.data.findPlayerByStaff.ls; + this.total = response.data.findPlayerByStaff.pageOut.total; + this.listLoading = false; + }); + }, + handleSizeChange(val) { + this.data.pageIn.size = val; + this.handleClick(); + }, + handleCurrentChange(val) { + this.data.pageIn.index = val - 1; + this.handleClick(); + }, + handleClick(tab, event) { + this.data.staffId = JSON.parse(localStorage.getItem("selectStaff")).id; + if (this.activeName == "pendingFees") { + this.listLoading = true; + getRenew(this.data).then((response) => { + this.list = response.data.findPlayerRenew.ls; + this.total = response.data.findPlayerRenew.pageOut.total; + this.listLoading = false; + }); + } else if (this.activeName == "expired") { + this.listLoading = true; + getExpire(this.data).then((response) => { + this.list = response.data.findPlayerExpire.ls; + this.total = response.data.findPlayerExpire.pageOut.total; + this.listLoading = false; + }); + } else if (this.activeName == "all") { + this.fetchData(); + } else if (this.activeName == "deactivated") { + this.listLoading = true; + let data = { + itemType: "PLAYER", + staffId: JSON.parse(localStorage.getItem("selectStaff")).id, + keyword: this.data.keyword, + pageIn: { ...this.data.pageIn }, }; + getDeleted(data).then((response) => { + this.list = response.data.findDeletedItem.ls; + this.total = response.data.findDeletedItem.pageOut.total; + this.listLoading = false; + }); + } }, - created() { - // 鑾峰彇鍦板潃鏍廲ode - // let code = this.$route.query.code; - // if (code) { - // if (localStorage.getItem("code")) { - // if (code !== localStorage.getItem("code")) { - // this.getUserDate(code); - // } - // } else { - // this.getUserDate(code); - // } - // } else { - // if (!localStorage.getItem("user")) { - // this.$router.push("/login"); - // } - // } - if (localStorage.getItem("user")) { - this.fetchData(); - } else { - this.$router.push("/login"); - } + goDetails(row) { + this.$router.push({ + name: "StudentDetails", + query: { + id: row.id, + }, + }); }, - methods: { - handleExport() { - this.download( - "exportPlayer?orgId=" + - JSON.parse(localStorage.getItem("selectStaff")).org.id, - {}, - `瀵煎嚭_${new Date().getTime()}.xlsx` - ); - }, - handleExport2() { - if (this.dateRange.length == 0) { - this.$message.warning("璇烽�夋嫨鏃ユ湡鑼冨洿"); - return; - } - this.download( - "exportReport?startDate=" + - this.dateRange[0] + - "&endDate=" + - this.dateRange[1], - {}, - `瀵煎嚭_${new Date().getTime()}.xlsx` - ); - }, - handleImport() { - this.dialogVisible = true; - }, - reloadData() { - this.dialogVisible = false; - this.fetchData(); - }, - fetchData() { - this.listLoading = true; - getData(this.data).then((response) => { - this.list = response.data.findPlayerByStaff.ls; - this.total = response.data.findPlayerByStaff.pageOut.total; - this.listLoading = false; - }); - }, - handleSizeChange(val) { - this.data.pageIn.size = val; - this.handleClick(); - }, - handleCurrentChange(val) { - this.data.pageIn.index = val - 1; - this.handleClick(); - }, - handleClick(tab, event) { - this.data.staffId = JSON.parse(localStorage.getItem("selectStaff")).id; - if (this.activeName == "pendingFees") { - this.listLoading = true; - getRenew(this.data).then((response) => { - this.list = response.data.findPlayerRenew.ls; - this.total = response.data.findPlayerRenew.pageOut.total; - this.listLoading = false; - }); - } else if (this.activeName == "expired") { - this.listLoading = true; - getExpire(this.data).then((response) => { - this.list = response.data.findPlayerExpire.ls; - this.total = response.data.findPlayerExpire.pageOut.total; - this.listLoading = false; - }); - } else if (this.activeName == "all") { - this.fetchData(); - } else if (this.activeName == "deactivated") { - this.listLoading = true; - let data = { - itemType: "PLAYER", - staffId: JSON.parse(localStorage.getItem("selectStaff")).id, - keyword: this.data.keyword, - pageIn: { ...this.data.pageIn }, - }; - getDeleted(data).then((response) => { - this.list = response.data.findDeletedItem.ls; - this.total = response.data.findDeletedItem.pageOut.total; - this.listLoading = false; - }); - } - }, - goDetails(row) { - this.$router.push({ - name: "StudentDetails", - query: { - id: row.id, - }, - }); - }, - showCreate() { - this.$refs.studentCreate.showDialog(); - }, - + showCreate() { + this.$refs.studentCreate.showDialog(); }, + }, }; </script> -- Gitblit v1.8.0