From c19bb5ac1b4013aa700c0a658f20375be9703ea3 Mon Sep 17 00:00:00 2001
From: 龚焕茏 <2842157468@qq.com>
Date: 星期一, 08 七月 2024 18:45:47 +0800
Subject: [PATCH] feat:选择学生增加全选按钮

---
 src/views/education/department/list.vue |   51 +++++++++++++++++++++++++++++++++------------------
 1 files changed, 33 insertions(+), 18 deletions(-)

diff --git a/src/views/education/department/list.vue b/src/views/education/department/list.vue
index fc0a3a9..1e2e0fe 100644
--- a/src/views/education/department/list.vue
+++ b/src/views/education/department/list.vue
@@ -15,9 +15,16 @@
       </el-form-item>
     </el-form>
 
-    <el-table v-loading="listLoading" :data="tableData" stripe border fit highlight-current-row style="width: 100%">
+    <el-table
+      v-loading="listLoading"
+      :data="tableData" border fit
+      style="width: 100%"
+      :tree-props="{children: 'children', hasChildren: 'hasChildren'}"
+      :row-class-name="tableRowClassName"
+      row-key="id"
+    >
       <el-table-column prop="name" label="閮ㄩ棬"/>
-      <el-table-column prop="adminName" label="閮ㄩ棬璐熻矗浜�"/>
+      <el-table-column prop="adminNames" label="閮ㄩ棬璐熻矗浜�"/>
 <!--      <el-table-column prop="levelName" label="閮ㄩ棬" />-->
       <el-table-column width="400px" label="鎿嶄綔" align="center">
         <template slot-scope="{row}">
@@ -29,15 +36,13 @@
         </template>
       </el-table-column>
     </el-table>
-    <pagination v-show="total>0" :total="total" :page.sync="queryParam.pageIndex" :limit.sync="queryParam.pageSize"
-                @pagination="search"/>
 
     <el-dialog
       :title="title"
       :visible.sync="dialogVisible"
       width="400px"
       :before-close="handleClose">
-      <el-select v-model="updateAdminForm.adminId" @change="changSelect" filterable placeholder="閫夋嫨绠$悊鍛�">
+      <el-select v-model="updateAdminForm.adminIds" @change="changSelect" multiple filterable placeholder="閫夋嫨绠$悊鍛�">
         <el-option
           v-for="item in deptUserList"
           :key="item.id"
@@ -69,13 +74,11 @@
       title: '',
       updateAdminForm: {
         id: null,
-        adminId: null
+        adminIds: []
       },
       depart: [],
       queryParam: {
         level: null,
-        pageIndex: 1,
-        pageSize: 10
       },
       listLoading: true,
       tableData: [],
@@ -86,6 +89,12 @@
     this.search()
   },
   methods: {
+    tableRowClassName({row, rowIndex}) {
+      if (row.children && row.children.length > 0) {
+        return 'success-row';
+      }
+      return '';
+    },
     changSelect( value ) {
       this.updateAdminForm.adminId = value
     },
@@ -94,7 +103,7 @@
       this.title = ''
     },
     submitUpdate () {
-      if (!this.updateAdminForm.adminId) {
+      if (!this.updateAdminForm.adminIds) {
         this.$message.warning('璇烽�夋嫨閮ㄩ棬璐熻矗浜�')
         return
       }
@@ -109,7 +118,8 @@
     },
     updateDeptAdmin (row) {
       this.updateAdminForm.id = row.id
-      this.updateAdminForm.adminId = row.adminId
+      this.updateAdminForm.adminIds = row.adminIds
+      console.log(this.updateAdminForm.adminIds, "dd")
       this.title = row.name + '--绠$悊鍛樹慨鏀�'
       this.getUserSelect(row.id)
       this.dialogVisible = true
@@ -122,15 +132,16 @@
     search () {
       this.listLoading = true
       departmentApi.pageList(this.queryParam).then(data => {
-        const re = data.response
-        this.tableData = re.list
-        this.total = re.total
-        this.queryParam.pageIndex = re.pageNum
+        this.tableData = data.response
+        this.tableData.forEach(item => {
+          if (item.adminNames) {
+            item.adminNames = item.adminNames.join("銆�")
+          }
+        })
         this.listLoading = false
 
-        this.depart = data.response.list
-        console.log(this.depart)
-        this.depart.map(item => {
+        this.depart = data.response
+        this.depart.forEach(item => {
           item.key = item.id
           item.value = item.name
         })
@@ -138,7 +149,6 @@
       })
     },
     submitForm () {
-      this.queryParam.pageIndex = 1
       this.search()
     },
     delSubject (row) {
@@ -167,3 +177,8 @@
   }
 }
 </script>
+<style scoped>
+.el-table .success-row {
+  background: oldlace;
+}
+</style>

--
Gitblit v1.8.0