+ {loading && (
+
+
+
Đang tải dữ liệu...
+
+ )}
- {!loading && activeClasses.length === 0 && (
-
-
-
Chưa có lớp nào được tạo lịch học.
-
-
- )}
+ {!loading && activeClasses.length === 0 && (
+
+
+
Chưa có lớp nào được tạo lịch học.
+
+
+ )}
- {!loading && activeClasses.length > 0 && filteredClasses.length === 0 && (
-
-
-
Không tìm thấy lớp phù hợp với bộ lọc hiện tại.
-
-
- )}
+ {!loading && activeClasses.length > 0 && filteredClasses.length === 0 && (
+
+
+
Không tìm thấy lớp phù hợp với bộ lọc hiện tại.
+
+
+ )}
- {!loading && filteredClasses.length > 0 && viewMode === 'timetable' && (
-
- )}
+ {!loading && filteredClasses.length > 0 && viewMode === 'timetable' && (
+
+ )}
- {!loading && filteredClasses.length > 0 && viewMode === 'list' && (
-
- {filteredClasses.map(cls => {
- const byDay = schedulesByDay(cls);
- const today = classHasToday(cls);
- return (
-
-
-
-
{cls.classCode}
-
{cls.name}
- {(cls.specializeName || cls.systemName) && (
-
- {[cls.specializeName, cls.systemName].filter(Boolean).join(' · ')}
-
- )}
-
-
- {today && Hôm nay}
- {cls.studentCount != null && cls.studentCount > 0 && (
- {cls.studentCount} SV
- )}
-
-
-
-
- {byDay.size === 0 ? (
-
Chưa cấu hình ca học
- ) : (
- Array.from(byDay.entries()).map(([day, shifts]) => (
-
-
{getDayLabel(day)}
-
- {shifts.map((s, idx) => (
-
- Ca{s.period || 1} {s.startTime && s.endTime ? `${s.startTime}–${s.endTime}` : ''}
- {s.courseName ? ` · ${s.courseName}` : ''}
-
- ))}
-
+ {!loading && filteredClasses.length > 0 && viewMode === 'list' && (
+
+ {filteredClasses.map(cls => {
+ const today = classHasToday(cls);
+ const isMyClass = myClasses.includes(cls.rkId);
+ return (
+
+
+
+
+
+
{cls.classCode}
+
{cls.name}
+ {(cls.specializeName || cls.systemName) && (
+
+ {[cls.specializeName, cls.systemName].filter(Boolean).join(' · ')}
+
+ )}
- ))
- )}
-
+
+
+ {today && Hôm nay}
+ {cls.studentCount != null && cls.studentCount > 0 && (
+ {cls.studentCount} SV
+ )}
+
+
- {cls.allowedApps && (
-
- App: {cls.allowedApps}
-
- )}
-
-
-
- );
- })}
-
- )}
+
+
+ );
+ })}
+
+ )}
+