From f0de0b6247ccac12badf5ff1883bce93c92cb011 Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期日, 27 十月 2024 21:31:36 +0800 Subject: [PATCH] 一个班级多个老师 --- src/views/class-management/ClassStaff.vue | 61 ++++++++++++++++++++++-------- 1 files changed, 44 insertions(+), 17 deletions(-) diff --git a/src/views/class-management/ClassStaff.vue b/src/views/class-management/ClassStaff.vue index 88caf31..e737a14 100644 --- a/src/views/class-management/ClassStaff.vue +++ b/src/views/class-management/ClassStaff.vue @@ -3,18 +3,18 @@ <div class="app-container"> <div style="display: flex; flex-direction: row"> <div style="padding-bottom:20px"> - <span class="item">{{ title }}</span> + <span class="item">{{ this.$route.query.className }}</span> <el-button class="item" @click="handlerAddStudent" type="primary" size="small">鏂板瀛﹀憳</el-button> <el-button class="item" @click="open = true" type="primary" size="small">瀛﹀憳璋冩暣</el-button> </div> <div> <el-form :inline="true" :model="searchForm" class="demo-form-inline"> <el-form-item label="瀛﹀憳濮撳悕"> - <el-input v-model="searchForm.studentName" size="small" clearable @clear="page" + <el-input v-model="searchForm.studentName" size="small" clearable @clear="page" @input="page" placeholder="瀛﹀憳濮撳悕"></el-input> </el-form-item> <el-form-item> - <el-button type="primary" @click="page">鏌ヨ</el-button> + <el-button type="primary" @click="page" size="small">鏌ヨ</el-button> </el-form-item> </el-form> </div> @@ -60,7 +60,13 @@ > <template slot-scope="scope"> <el-button @click="handlerEditStudent(scope.row)" type="warning" size="small">缂栬緫</el-button> - <el-button @click="remove(scope.row.id)" type="danger" size="small">鍒犻櫎</el-button> + <el-popconfirm + style="margin: 0 5px" + title="纭畾瑕佸垹闄よ鎴愬憳鍚楋紵" + @confirm="remove(scope.row.id)" + > + <el-button slot="reference" type="danger" size="small">鍒犻櫎</el-button> + </el-popconfirm> </template> </el-table-column> </el-table> @@ -68,7 +74,7 @@ class="block" style="display: flex; margin-top: 40px;" > - <pagination v-show="total>0" :total="total" :page.sync="searchForm.pageNum" + <pagination v-show="total>0" :total="total" :page.sync="searchForm.currentPage" :limit.sync="searchForm.pageSize" @pagination="page"/> </div> @@ -76,7 +82,8 @@ :title="studentTitle" :visible.sync="addOpen" width="700px" - :before-close="handleAddClose"> + :before-close="handleAddClose" + :close-on-click-modal="false"> <el-form :model="studentForm" :rules="studentRules" ref="studentForm" label-width="100px" class="demo-ruleForm"> <el-form-item label="濮撳悕" prop="realName"> <el-input v-model="studentForm.realName"></el-input> @@ -132,14 +139,22 @@ <script> // 寮曞叆褰堝嚭绐楀彛绲勪欢 import UserApi from '@/api/user' -import { updateClassesUser, getClassesUsers, deleteClassesUserById, addClassesUser, edit } from '@/api/classesUser' +import { + updateClassesUser, + getClassesUsers, + deleteClassesUserById, + addClassesUser, + editClassesUser +} from '@/api/classesUser' import Pagination from '@/components/Pagination' +import {deleteExamById} from "@/api/exam"; export default { components: { Pagination }, data () { return { studentForm: { + id: null, realName: '', sex: 1, phone: '', @@ -168,7 +183,7 @@ searchForm: { studentName: '', pageSize: 10, - pageNum: 1, + currentPage: 1, classesId: null }, classes: { @@ -204,20 +219,24 @@ }, submitStudentForm () { this.$refs['studentForm'].validate((valid) => { + console.log(this.studentForm) if (valid) { this.studentForm.classesId = this.classes.id if (this.studentForm.id) { - edit(this.studentForm).then(res => { + editClassesUser(this.studentForm).then(res => { this.addOpen = false this.$message.success(res.data.message) this.page() + this.resetStudentForm() + }) + }else { + addClassesUser(this.studentForm).then(res => { + this.addOpen = false + this.$message.success(res.data.message) + this.page() + this.resetStudentForm() }) } - addClassesUser(this.studentForm).then(res => { - this.addOpen = false - this.$message.success(res.data.message) - this.page() - }) } }) }, @@ -234,9 +253,15 @@ this.resetStudentForm() }, remove (id) { - deleteClassesUserById(id).then(res => { - this.$message.success(res.data.message) - this.page() + this.$confirm('纭鏄惁鍒犻櫎?', '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + type: 'warning' + }).then(() => { + deleteClassesUserById(id).then(res => { + this.$message.success(res.data.message) + this.page() + }) }) }, sexFormatter (row) { @@ -265,6 +290,8 @@ this.searchForm.classesId = this.classes.id getClassesUsers(this.searchForm).then(res => { this.tableData = res.data.data + this.total = res.data.total + this.loading = false }) }, submitForm () { -- Gitblit v1.8.0