fix: default task review to owned class

bugfix/ai-assessment-evidence-rescore
陈沅 1 month ago
parent d5a5057132
commit c569a98c3b

@ -141,16 +141,11 @@ const canManageClass = computed(() => {
const selectedStudent = computed(() => review.value.students.find((row) => row.studentUserId === selectedStudentId.value) || review.value.students[0] || null); const selectedStudent = computed(() => review.value.students.find((row) => row.studentUserId === selectedStudentId.value) || review.value.students[0] || null);
const canBatchScore = computed(() => canManageClass.value && selectedStudents.value.length > 0 && Boolean(filters.value.taskId)); const canBatchScore = computed(() => canManageClass.value && selectedStudents.value.length > 0 && Boolean(filters.value.taskId));
watch(() => props.initialClassId, (classId) => {
if (!filters.value.classId && classId) {
filters.value.classId = classId;
loadReview();
}
}, { immediate: true });
watch(teachingClasses, (classes) => { watch(teachingClasses, (classes) => {
if (!filters.value.classId && classes.length) { if (!filters.value.classId && classes.length) {
filters.value.classId = props.initialClassId || classes[0].schoolClassId; const ownTeachingClass = classes.find((schoolClass) => String(schoolClass.createdBy || "") === String(userStore.userInfo.userId || ""));
loadReview(); filters.value.classId = ownTeachingClass?.schoolClassId || "";
if (filters.value.classId) loadReview();
} }
}, { immediate: true }); }, { immediate: true });
watch([selectedStudent, () => review.value.selectedTask], refreshStudentPreview, { immediate: true, flush: "post" }); watch([selectedStudent, () => review.value.selectedTask], refreshStudentPreview, { immediate: true, flush: "post" });

@ -0,0 +1,19 @@
import assert from "node:assert/strict";
import { readFileSync } from "node:fs";
import { resolve } from "node:path";
const root = resolve(import.meta.dirname, "..");
const reviewPanel = readFileSync(resolve(root, "src/views/teacherEnd/score/TaskReviewPanel.vue"), "utf8");
assert.match(
reviewPanel,
/const ownTeachingClass = classes\.find\(\(schoolClass\) => String\(schoolClass\.createdBy \|\| ""\) === String\(userStore\.userInfo\.userId \|\| ""\)\);/,
"任务评阅默认班级必须按当前教师匹配创建人"
);
assert.match(
reviewPanel,
/filters\.value\.classId = ownTeachingClass\?\.schoolClassId \|\| "";/,
"没有本人创建的班级时,任务评阅不应默认选择其他班级"
);
console.log("task review defaults to the current teacher's own class");
Loading…
Cancel
Save