+
Phòng thi mới
+
+
@@ -100,48 +148,56 @@ export const ExamsTab: React.FC = () => {
setEnd(e.target.value)} />
-
-
-
+
+
+
+
+
+
)}
-
- {loading ? (
-
Đang tải...
- ) : rooms.length === 0 ? (
-
Chưa có phòng thi nào.
- ) : (
-
-
-
- | Tên |
- Thời gian |
- SV / Đề |
- Trạng thái |
- |
-
-
-
- {rooms.map((r) => {
- const st = statusLabel(r.displayStatus || r.status);
- return (
-
- | {r.name} |
- {fmtTime(r.startTime)} — {fmtTime(r.endTime)} |
- {r.studentCount} SV · {r.paperCount} đề |
- {st.text} |
-
-
- |
-
- );
- })}
-
-
- )}
-
+ {loading ? (
+
Đang tải...
+ ) : filtered.length === 0 ? (
+
+ {search.trim() ? 'Không tìm thấy phòng thi phù hợp.' : 'Chưa có phòng thi — bấm Tạo phòng thi để bắt đầu.'}
+
+ ) : (
+
+ {filtered.map((r) => {
+ const st = statusLabel(r.displayStatus || r.status);
+ return (
+
+
+
{r.name}
+ {st.text}
+
+
+
+ Thời gian
+ {fmtTime(r.startTime)}
+ →
+ {fmtTime(r.endTime)}
+
+
+ Quy mô
+ {r.studentCount} sinh viên · {r.paperCount} đề
+
+
+
+
+ );
+ })}
+
+ )}
);
};
diff --git a/management/src/components/NavHistoryBar.tsx b/management/src/components/NavHistoryBar.tsx
index af3946f..65b7e26 100644
--- a/management/src/components/NavHistoryBar.tsx
+++ b/management/src/components/NavHistoryBar.tsx
@@ -1,6 +1,7 @@
import React, { useEffect, useState } from 'react';
import {
TAB_LABELS,
+ SYSTEM_SECTION_LABELS,
type NavEntry,
type TabId,
parseRoute,
@@ -24,7 +25,10 @@ export const NavHistoryBar: React.FC