@@ -100,6 +100,8 @@ export interface MyClassVo {
|
||||
classId: number;
|
||||
className: string | null;
|
||||
gradeName: string | null;
|
||||
/** 年级是否启用课表查看(排课情况年级设置;缺省视为启用,兜底旧后端) */
|
||||
gradeEnabled?: boolean | null;
|
||||
/** 是否班主任(正/副班主任) */
|
||||
headTeacher: boolean;
|
||||
/** 是否展示全部科目 */
|
||||
|
||||
@@ -50,6 +50,10 @@
|
||||
<b>暂无可查看的班级</b><br />
|
||||
管理员/校领导需确认学校已建班级;老师需确认已在班级服务中维护班主任或任教关系;学生需确认学籍班级已维护。
|
||||
</div>
|
||||
<div v-else-if="!viewClasses.length" class="mt-empty">
|
||||
<b>当前年级均未启用课表查看</b><br />
|
||||
请联系管理员在「排课情况」对应年级打开「启用」开关。
|
||||
</div>
|
||||
<div v-else-if="!activeId" class="mt-empty"><b>请选择班级</b></div>
|
||||
<!-- 年级设置(排课情况页按年级统一配置):未启用 / 电子版照片版均未勾选时不展示课表 -->
|
||||
<div v-else-if="!gradeEnabled" class="mt-empty">
|
||||
@@ -297,11 +301,12 @@ const availableViews = computed<Array<{ key: ViewMode; label: string }>>(() => {
|
||||
/** 多身份才需要切换;单身份固定展示无需切换 */
|
||||
const showViewSwitcher = computed(() => availableViews.value.length > 1);
|
||||
|
||||
/** 当前身份视图下的班级:管理员=全部;班主任=所带班级;任教=任教班级 */
|
||||
/** 当前身份视图下的班级:管理员=全部;班主任=所带班级;任教=任教班级;均只保留年级已启用的(排课情况年级设置,缺省视为启用兜底旧数据) */
|
||||
const viewClasses = computed<MyClassVo[]>(() => {
|
||||
if (viewMode.value === "head") return classes.value.filter((c) => c.headTeacher);
|
||||
if (viewMode.value === "teacher") return classes.value.filter((c) => (c.subjects || []).length > 0);
|
||||
return classes.value;
|
||||
const enabled = (c: MyClassVo) => c.gradeEnabled !== false;
|
||||
if (viewMode.value === "head") return classes.value.filter((c) => c.headTeacher && enabled(c));
|
||||
if (viewMode.value === "teacher") return classes.value.filter((c) => (c.subjects || []).length > 0 && enabled(c));
|
||||
return classes.value.filter(enabled);
|
||||
});
|
||||
|
||||
/** 题注身份视图徽标文案(无身份视图时兜底「全部科目」,如学生) */
|
||||
|
||||
Reference in New Issue
Block a user