|
@@ -78,8 +78,8 @@
|
|
|
:disabled="single"
|
|
:disabled="single"
|
|
|
@click="handleUpdate"
|
|
@click="handleUpdate"
|
|
|
v-hasPermi="['dz:teacher:edit']"
|
|
v-hasPermi="['dz:teacher:edit']"
|
|
|
- >修改</el-button> -->
|
|
|
|
|
- </el-col>
|
|
|
|
|
|
|
+ >修改</el-button>
|
|
|
|
|
+ </el-col> -->
|
|
|
<!-- <el-col :span="1.5">
|
|
<!-- <el-col :span="1.5">
|
|
|
<el-button
|
|
<el-button
|
|
|
type="danger"
|
|
type="danger"
|
|
@@ -184,7 +184,7 @@
|
|
|
/>
|
|
/>
|
|
|
</el-select>
|
|
</el-select>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
<el-form-item label="校区班级" prop="campusClassIds">
|
|
<el-form-item label="校区班级" prop="campusClassIds">
|
|
|
<el-select v-model="form.campusClassIds" multiple placeholder="请选择校区班级" style="width: 100%" filterable clearable :disabled="!form.campusId">
|
|
<el-select v-model="form.campusClassIds" multiple placeholder="请选择校区班级" style="width: 100%" filterable clearable :disabled="!form.campusId">
|
|
|
<el-option
|
|
<el-option
|
|
@@ -242,9 +242,9 @@
|
|
|
<el-input v-model="formCampusClass.name" placeholder="请输入教师姓名" disabled/>
|
|
<el-input v-model="formCampusClass.name" placeholder="请输入教师姓名" disabled/>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
<el-form-item label="培训校区" prop="campusId">
|
|
<el-form-item label="培训校区" prop="campusId">
|
|
|
- <el-select
|
|
|
|
|
- v-model="formCampusClass.campusId"
|
|
|
|
|
- placeholder="请选择培训校区"
|
|
|
|
|
|
|
+ <el-select
|
|
|
|
|
+ v-model="formCampusClass.campusId"
|
|
|
|
|
+ placeholder="请选择培训校区"
|
|
|
style="width: 100%"
|
|
style="width: 100%"
|
|
|
@change="handleCampusClassChange"
|
|
@change="handleCampusClassChange"
|
|
|
>
|
|
>
|
|
@@ -257,10 +257,10 @@
|
|
|
</el-select>
|
|
</el-select>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
<el-form-item label="关联班级" prop="classIds">
|
|
<el-form-item label="关联班级" prop="classIds">
|
|
|
- <el-select
|
|
|
|
|
- v-model="formCampusClass.classIds"
|
|
|
|
|
- multiple
|
|
|
|
|
- placeholder="请选择班级"
|
|
|
|
|
|
|
+ <el-select
|
|
|
|
|
+ v-model="formCampusClass.classIds"
|
|
|
|
|
+ multiple
|
|
|
|
|
+ placeholder="请选择班级"
|
|
|
style="width: 100%"
|
|
style="width: 100%"
|
|
|
:disabled="!formCampusClass.campusId"
|
|
:disabled="!formCampusClass.campusId"
|
|
|
>
|
|
>
|
|
@@ -475,10 +475,10 @@ function handleUpdate(row) {
|
|
|
// 初始化班级ID数组
|
|
// 初始化班级ID数组
|
|
|
form.value.schoolClassIds = []
|
|
form.value.schoolClassIds = []
|
|
|
form.value.campusClassIds = []
|
|
form.value.campusClassIds = []
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
// 先加载班级列表,然后获取已关联的班级并回显
|
|
// 先加载班级列表,然后获取已关联的班级并回显
|
|
|
const loadPromises = []
|
|
const loadPromises = []
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
if (form.value.schoolId) {
|
|
if (form.value.schoolId) {
|
|
|
loadPromises.push(
|
|
loadPromises.push(
|
|
|
getClassesBySchoolId({ schoolId: form.value.schoolId }).then(response => {
|
|
getClassesBySchoolId({ schoolId: form.value.schoolId }).then(response => {
|
|
@@ -486,7 +486,7 @@ function handleUpdate(row) {
|
|
|
})
|
|
})
|
|
|
)
|
|
)
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
if (form.value.campusId) {
|
|
if (form.value.campusId) {
|
|
|
loadPromises.push(
|
|
loadPromises.push(
|
|
|
getClassesByCampusId({ campusId: form.value.campusId }).then(response => {
|
|
getClassesByCampusId({ campusId: form.value.campusId }).then(response => {
|
|
@@ -494,7 +494,7 @@ function handleUpdate(row) {
|
|
|
})
|
|
})
|
|
|
)
|
|
)
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
// 获取该老师已关联的所有班级
|
|
// 获取该老师已关联的所有班级
|
|
|
Promise.all([
|
|
Promise.all([
|
|
|
...loadPromises,
|
|
...loadPromises,
|
|
@@ -502,7 +502,7 @@ function handleUpdate(row) {
|
|
|
]).then((results) => {
|
|
]).then((results) => {
|
|
|
const teacherClassResponse = results[results.length - 1]
|
|
const teacherClassResponse = results[results.length - 1]
|
|
|
const teacherClasses = teacherClassResponse.data || []
|
|
const teacherClasses = teacherClassResponse.data || []
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
// 根据班级所属的学校/校区,分别设置到对应的数组中
|
|
// 根据班级所属的学校/校区,分别设置到对应的数组中
|
|
|
teacherClasses.forEach(tc => {
|
|
teacherClasses.forEach(tc => {
|
|
|
if (tc.classId) {
|
|
if (tc.classId) {
|
|
@@ -516,7 +516,7 @@ function handleUpdate(row) {
|
|
|
form.value.schoolClassIds.push(tc.classId)
|
|
form.value.schoolClassIds.push(tc.classId)
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
// 检查该班级是否属于校区(校区班级的schoolId等于campusId)
|
|
// 检查该班级是否属于校区(校区班级的schoolId等于campusId)
|
|
|
const campusClass = campusClassOptions.value.find(c => c.classId === tc.classId)
|
|
const campusClass = campusClassOptions.value.find(c => c.classId === tc.classId)
|
|
|
if (campusClass && form.value.campusId && campusClass.schoolId === form.value.campusId) {
|
|
if (campusClass && form.value.campusId && campusClass.schoolId === form.value.campusId) {
|
|
@@ -530,7 +530,7 @@ function handleUpdate(row) {
|
|
|
}
|
|
}
|
|
|
})
|
|
})
|
|
|
})
|
|
})
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
open.value = true
|
|
open.value = true
|
|
|
title.value = "修改老师"
|
|
title.value = "修改老师"
|
|
|
})
|
|
})
|
|
@@ -597,14 +597,14 @@ function handleCampusChange() {
|
|
|
/** 编辑模式下加载已关联的班级 */
|
|
/** 编辑模式下加载已关联的班级 */
|
|
|
function loadTeacherClassesForEdit() {
|
|
function loadTeacherClassesForEdit() {
|
|
|
if (!form.value.teacherId) return
|
|
if (!form.value.teacherId) return
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
listAllTeacherClass({ teacherId: form.value.teacherId }).then(response => {
|
|
listAllTeacherClass({ teacherId: form.value.teacherId }).then(response => {
|
|
|
const teacherClasses = response.data || []
|
|
const teacherClasses = response.data || []
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
// 重置班级ID数组
|
|
// 重置班级ID数组
|
|
|
form.value.schoolClassIds = []
|
|
form.value.schoolClassIds = []
|
|
|
form.value.campusClassIds = []
|
|
form.value.campusClassIds = []
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
// 根据班级所属的学校/校区,分别设置到对应的数组中
|
|
// 根据班级所属的学校/校区,分别设置到对应的数组中
|
|
|
teacherClasses.forEach(tc => {
|
|
teacherClasses.forEach(tc => {
|
|
|
if (tc.classId) {
|
|
if (tc.classId) {
|
|
@@ -618,7 +618,7 @@ function loadTeacherClassesForEdit() {
|
|
|
form.value.schoolClassIds.push(tc.classId)
|
|
form.value.schoolClassIds.push(tc.classId)
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
// 检查该班级是否属于校区(校区班级的schoolId等于campusId)
|
|
// 检查该班级是否属于校区(校区班级的schoolId等于campusId)
|
|
|
const campusClass = campusClassOptions.value.find(c => c.classId === tc.classId)
|
|
const campusClass = campusClassOptions.value.find(c => c.classId === tc.classId)
|
|
|
if (campusClass && form.value.campusId && campusClass.schoolId === form.value.campusId) {
|
|
if (campusClass && form.value.campusId && campusClass.schoolId === form.value.campusId) {
|
|
@@ -691,23 +691,23 @@ function handleUpdateTeacherClass(row) {
|
|
|
// 先清空班级选项和已选班级
|
|
// 先清空班级选项和已选班级
|
|
|
classOptions.value = []
|
|
classOptions.value = []
|
|
|
formTeacherClass.value.classIds = []
|
|
formTeacherClass.value.classIds = []
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
// const _schoolId = row.schoolId
|
|
// const _schoolId = row.schoolId
|
|
|
const submitData = {
|
|
const submitData = {
|
|
|
schoolId: row.schoolId,
|
|
schoolId: row.schoolId,
|
|
|
teacherId: row.teacherId
|
|
teacherId: row.teacherId
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
// 设置基本数据
|
|
// 设置基本数据
|
|
|
formTeacherClass.value.teacherId = row.teacherId
|
|
formTeacherClass.value.teacherId = row.teacherId
|
|
|
formTeacherClass.value.schoolId = row.schoolId
|
|
formTeacherClass.value.schoolId = row.schoolId
|
|
|
formTeacherClass.value.name = row.name
|
|
formTeacherClass.value.name = row.name
|
|
|
formTeacherClass.value.schoolName = row.schoolName
|
|
formTeacherClass.value.schoolName = row.schoolName
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
// 先打开弹窗
|
|
// 先打开弹窗
|
|
|
openTeacherClass.value = true
|
|
openTeacherClass.value = true
|
|
|
titleTeacherClass.value = "关联班级"
|
|
titleTeacherClass.value = "关联班级"
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
// 加载班级列表和已关联的班级
|
|
// 加载班级列表和已关联的班级
|
|
|
Promise.all([
|
|
Promise.all([
|
|
|
listAllClass(submitData),
|
|
listAllClass(submitData),
|
|
@@ -749,16 +749,16 @@ function handleUpdateCampusClass(row) {
|
|
|
// 先清空班级选项和已选班级
|
|
// 先清空班级选项和已选班级
|
|
|
campusClassOptions.value = []
|
|
campusClassOptions.value = []
|
|
|
formCampusClass.value.classIds = []
|
|
formCampusClass.value.classIds = []
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
// 设置数据
|
|
// 设置数据
|
|
|
formCampusClass.value.teacherId = row.teacherId
|
|
formCampusClass.value.teacherId = row.teacherId
|
|
|
formCampusClass.value.schoolId = row.campusId
|
|
formCampusClass.value.schoolId = row.campusId
|
|
|
formCampusClass.value.name = row.name
|
|
formCampusClass.value.name = row.name
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
// 先打开弹窗
|
|
// 先打开弹窗
|
|
|
openCampusClass.value = true
|
|
openCampusClass.value = true
|
|
|
titleCampusClass.value = "关联校区班级"
|
|
titleCampusClass.value = "关联校区班级"
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
// 如果有培训校区,默认选中并加载该校区的班级列表
|
|
// 如果有培训校区,默认选中并加载该校区的班级列表
|
|
|
if (row.campusId) {
|
|
if (row.campusId) {
|
|
|
formCampusClass.value.campusId = row.campusId
|
|
formCampusClass.value.campusId = row.campusId
|