T-01 Teacher Dashboard
- P1新增 +1移除 −0
- P2新增 +3移除 −0
第一版式樣草案 · Markdown 來源:03-App畫面-教師.mdGitHub 版本尚未推送;目前以本機手冊為準
取圖紀錄: QL APP,2026-10-18,版本
2410774734466577464;節點 58:3 。學生 2x/Web 1x。圖片是目前設計稿,文字為 APlus 首版目標規格。 設計稿待更新(F-25): 圖中舊品牌、華語內容或待核對項目照實保留;請以本節英語文字規格為目標。設計修改後重新取圖。
🎨 Figma: Teacher Dashboard 🔗
T-02 Class Switch Panel 為 T-01 Dashboard 的下拉組件,內嵌於此 Figma Frame 中,無獨立 Frame。
⚠️ Figma 待同步: 現有截圖的班級切換器只有
Class 3A。Header 與 KPI 之間尚未顯示 Class target,Current Session 卡片也尚未帶上課程身份。
🎯 功能定位
老師端班級學習分析首頁,用於快速掌握整個班級的學習活躍度與學習成果。
此畫面提供教師以下核心能力:
- KPI 總覽: Active Rate / Session Mastery / Questions Practiced / 詞彙與語句累積量 四大指標。
- Word/Phrase/Sentence 學習內容成長追蹤: 三層曲線圖(Curriculum / Review / Mastered),可切換 total / month / week 時間維度。
- Session 單字結構: 當前與下個 Session 的 Word / Phrase / Sentence 比例對比,hover 顯示具體數量。
- Session Mastery 趨勢: TTL / Discovery Hub / Speak Studio 三條曲線,預設定位到有數據的最後部分。
- Trophy 摘要: Pending/Progress/Pass/Fail 四種 Snapshot Member 狀態,支援 total/month/latest 時間選擇;口徑與 T-42/A-52 共用。
- Questions Practiced: Total / Discovery Hub / Speak Studio 三線 + Curriculum 參考線,DH 藍色 / SS 粉紅色。
- Cognitive Distribution: 五階段分佈(Not Started → Mastered),每 Session 的全班比例堆疊。
- Alert 預警: 當 Active Rate / Mastery / 不活躍學生數等指標達到閾值時觸發預警。
- 班級教學目標: 確認目前班級對應的 Category 與 Level。只讀,不是篩選器,也不能在此修改。
🧱 畫面結構
Web 佈局:12-col grid,1280px max-width,深色 Sidebar
Header:
Class target(位於 Header 與 KPI 之間,整行只讀):
Class target{Category} · {Level}(依班級已指派課程顯示)- 副標:
Sessions on this dashboard belong to this level. - 切換
[Class 3A ▾]時,這一行與 KPI、圖表同一輪刷新 - 沒有 Category 或 Level 下拉
Sidebar (深色,圖標式):
HomeUserClockCalendarChartTrophy
Main Content — 由上至下:
KPI Cards × 4(頂部橫排):
Active Rate: 88%— 活躍學生比例Session Mastery: 72%— 班級平均掌握度Questions Practiced: 1.2k— 累計練習次數詞彙與語句累積量: 450— 全班累積詞彙
詞彙與語句累積量 (Vocabulary Accumulation) — 三層曲線圖:
- 三條曲線(由上到下):
Curriculum(淺色)→Review(中間色)→Mastered(深色) - x 軸時間切換:
total(Sep/Oct/Nov/Dec/Jan/Feb/Mar)/month(30/25/20/15/10/5/today)/week(Tue/Wed/Thu/Fri/Sat/Sun/Mon)
當前 Session vs 下個 Session 單字結構 — 堆疊柱狀圖:
- 卡片標題使用同一個 Class target,例如
{Category} · {Level}(正式課程名稱由課程表提供) - 標題下顯示
Current Session 3-1、Next Session 3-2 - 兩個柱子並排:Current Session / Next Session
- 每根柱子按 Word / Phrase / Sentence 比例堆疊
- hover 顯示各類別的具體數量
Session Mastery — 三線折線圖:
- 三條線:
TTL(全部) /DH(Discovery Hub) /SS(Speak Studio) - 預設進入後定位到「後面有數據的靠後部分」(自動捲動到最新有數據的 Session)
- y 軸:Mastery %
Trophy 摘要:
- 四個狀態卡片:
Pending(未開始)/Progress(進行中)/Pass(已完成且合格)/Fail(已完成且不合格) - 時間選擇器:
[total ▾]/[month ▾]/[latest ▾] - 每個
challenge_member_snapshot在同一次 Challenge 中只能落入一種狀態;點擊任一卡片顯示相對 Assigned 的比例,hover 顯示對應學生名單
Questions Practiced — 三線 + 參考線折線圖:
- 右上選項:
[total ▾]/[discovery ▾]/[speak ▾] - 主線條(下方填色):total / discovery / speak
- 參考線(無下方填色):curriculum
- 主色規則:Discovery Hub → 藍色 / Speak Studio → 粉紅色
- x 軸固定顯示過去 30 天日期
Cognitive Distribution — 堆疊柱狀圖:
- 五階段:⚪ Not Started / 🌱 Emerging / 🌿 Developing / 🌳 Proficient / 🏆 Mastered
- 每 Session 一根柱子,顯示全班學生在各階段的百分比分佈
📦 區塊說明
| # | 區塊 | 元件 | 行為/交互 | 備註 |
|---|---|---|---|---|
| 1 | Class target | Read-only identity | 顯示目前班級的 Category 與 Level | 不是篩選器;老師不可編輯 |
| 2 | KPI Cards | Card × 4 | 唯讀顯示 Active Rate / Session Mastery / Questions Practiced / 詞彙與語句累積量 | 數據每 24h 刷新 |
| 3 | 詞彙與語句累積量 | Multi-line Chart | 三層曲線 + x 軸切換 total/month/week | Curriculum:課堂實際總量 / Review:總單字 - Box0 / Mastered:Box4+ |
| 4 | 當前 vs 下個 Session 單字 | Stacked Bar Chart × 2 | Word / Phrase / Sentence 堆疊,hover 顯示具體數量 | 卡片標題帶 Class target;其下才是 Current / Next Session |
| 5 | Session Mastery | Multi-line Chart | TTL / DH / SS 三條線,預設定位到最後有數據處 | Hover 顯示詳細 Tooltip |
| 6 | Trophy 摘要 | Stat Cards × 4 + Time Selector | pending/pass/fail/progress 四項,total/month/latest 切換 | 點擊顯示比例,hover 顯示學生 |
| 7 | Questions Practiced | Multi-line + Reference Line Chart | total/discovery/speak 填色線 + curriculum 參考線 | DH/SS 用固定且可區分的圖例,顏色依 QL 視覺規範 / x 軸固定 30 天 |
| 8 | Cognitive Distribution | Stacked Bar Chart | 5 階段分佈,每 Session 全班比例 | 按 Box 定義分組 |
⚙️ 數據定義
Active Rate
定義: 一周 2 天使用 app,至少進行 1 次練習。(可配置參數見 09-規則配置.md §9 Active 行為定義)
Session Mastery
三條線對應三種範圍:
- TTL: 全部 Session 的整體 Mastery
- DH: Discovery Hub(聽、讀練習)的 Mastery
- SS: Speak Studio(口說練習)的 Mastery
預設進入後定位到「後面有數據的靠後部分」。
詞彙與語句累積量
三層曲線,由淺到深:
| 層級 | 定義 | 視覺 |
|---|---|---|
| Curriculum | 課堂實際的總量 | 淺色,曲線永遠最高 |
| Review | 用 app 練到的總量 = 總單字 - Box0 | 中間色,曲線永遠在中間 |
| Mastered | 精熟的總量 = Box4+ | 深色,曲線永遠最低 |
x 軸選項:
total:Sep / Oct / Nov / Dec / Jan / Feb / Marmonth:30 / 25 / 20 / 15 / 10 / 5 / todayweek:Tue / Wed / Thu / Fri / Sat / Sun / Mon
當前 Session 與下個 Session 單字結構
按 Word / Phrase / Sentence 三類比例劃分。Hover 時顯示具體數量。
Trophy 情況
| 指標 | 定義 |
|---|---|
| Pending | Snapshot Member 沒有任何 Attempt;逾期未開始者仍屬 Pending,但在明細標示 Expired |
| Progress | 至少有一筆未 Final Submitted 的 Attempt,且尚無任何 Final Submitted Attempt |
| Pass | 已有 Final Submitted Attempt,且 Effective Result >= exam.pass_score |
| Fail | 已有 Final Submitted Attempt,且 Effective Result < exam.pass_score |
時間選擇:
total— 全部歷史month— 最近 1 個月latest— 最新一次 Challenge
每次派送中的每位 Snapshot Member 計一次,因此 Assigned = Pending + Progress + Pass + Fail;Completed = Pass + Fail。重考只更新該 Member 的 Effective Result 與 Pass/Fail 狀態,不增加 Assigned 或 Completed。點擊顯示該狀態相對 Assigned 的比例;hover 顯示對應學生名單。
時間篩選按實際派送時間,名單搜尋不改分母;永久刪除後的資料保存與隱私抑制統一依 A-52。名單不得返回已永久刪除對象;含其貢獻且尚未通過聚合驗證的狀態計數亦不得顯示。
Questions Practiced
| 線條 | 說明 | 視覺 |
|---|---|---|
| total | 全部練習量 | 主線,下方填色 |
| discovery | Discovery Hub 練習量 | 主線,下方填色,藍色 |
| speak | Speak Studio 練習量 | 主線,下方填色,粉紅色 |
| curriculum | 課程參考線 | 虛線,無下方填色 |
x 軸固定顯示過去 30 天日期。
Cognitive Distribution
| Box | 階段 | 符號 |
|---|---|---|
| B0 | Not Started | ⚪ |
| B1-2 | Emerging | 🌱 |
| B3-4 | Developing | 🌿 |
| B5-6 | Proficient | 🌳 |
| B7 | Mastered | 🏆 |
🔁 交互流程
正在載入流程圖…
🚨 Alert 條件
Alert 總表
| # | 條件 | 等級 | 粒度 | 說明 |
|---|---|---|---|---|
| 1 | Active Rate < 60% | ⚠️ Warning | 班級級 | 連續 2 週 Active Rate 低於 60% 觸發。Active 定義:一周 2 天使用 app,至少 1 次練習。伺服器端參數: alert_1_active_rate_threshold / active_rate_window_days,見 09-規則配置.md §7 |
| 2 | 完全不活躍學生 > 30% | 🔴 Critical | 班級級 | 當週完全無任何練習記錄的學生比例超過 30%。此為 Alert 1 的升級——不是練不夠,是完全不練。Alert 1 + Alert 2 同時觸發時,僅顯示 Alert 2。伺服器端參數: alert_2_inactive_threshold,見 09-規則配置.md §7 |
| 3 | Session Mastery < 30% | 🔴 Critical | 班級級 | 任一 Session 全班平均 Mastery 低於 30%。若 < 15%,升級為「緊急」並推送給 Admin。伺服器端參數: alert_3_mastery_threshold,見 09-規則配置.md §7 |
| 4 | Trophy Fail Rate > 50% | 🔴 Critical | 班級級 | 最近一次 Challenge 超過半數不合格。伺服器端參數: alert_4_trophy_fail_threshold,見 09-規則配置.md §7 |
| 5 | 連續兩週未練習 | 🔴 Critical | 學生級 | 個別學生連續兩週沒有任何練習紀錄時,通知該學生的負責老師及所屬學校 Admin。伺服器端參數: alert_5_consecutive_inactive_days,見 09-規則配置.md §7 |
Alert 5 通知規則: 通知對象以學生當下的負責老師與所屬學校 Admin 為準。連續期間的計算需排除 T-10-A Schedule Planner 標記為
Skip的日期;Skip 日期不計入後續 Session 日期推算,刪除 Skip 會回推日期。對活動指標而言,排除 Skip 只影響 Alert 5 的連續未練習期間,不改變 Active Rate、Mastery、Questions Practiced 或原始練習紀錄。學生恢復練習後,後續通知狀態依產品規格重新判定,避免同一事件重複通知。
Alert 層級關係
Alert 1 (⚠️ Warning) → Active Rate 下降
│
└── 升級條件:完全不活躍學生 > 30%
│
└── Alert 2 (🔴 Critical) → 覆蓋 Alert 1
Alert 2 和 Alert 1 不會同時顯示。
當 Alert 2 觸發時,以 Alert 2(Critical)替代 Alert 1(Warning)。
Alert 5(學生級)獨立於 Alert 1/2(班級級),兩者並行。以上 Alert 1~5 閾值(60%、30%、30%、50%、14 天)均為可配置參數,由 Super Admin 在 09-規則配置.md §7 中調整,修改後即時生效。
觸發後建議動作
| Alert | 建議動作 |
|---|---|
| 1 | 查看不活躍學生名單,課堂提醒或聯繫家長 |
| 2 | 🔴 立即聯繫不活躍學生家長,檢查是否 App 技術問題或學習意願下降 |
| 3 | 檢查該 Session 的教學安排,是否需要調整練習策略或增加複習 |
| 4 | 分析失敗學生的共同弱項,安排針對性補強 |
| 5 | 個別聯繫該學生 / 家長,了解未使用 App 的原因 |
⚙️ 狀態管理
| 狀態 | 觸發條件 | 畫面表現 |
|---|---|---|
| 正常 | 數據載入完成 | 顯示完整 Dashboard |
| 加載中 | 頁面首次載入或時間維度切換 | Skeleton Loading |
| 空狀態 | 無學生數據或選擇範圍無數據 | 引導提示 |
| 已設定教學目標 | 班級同時有 Category 與 Level | Class target 顯示已指派的 Category 與 Level(多 Level 時列出當前班級適用範圍) |
| 未設定教學目標 | 缺 Category 或 Level | 顯示 Course not assigned。Session 圖表保持空狀態,不聚合未指派課程的 Level |
| 切換班級 | 從 T-02 選另一個班級 | Class target、KPI 與圖表同一輪刷新,不沿用上一班的課程身份 |
| 錯誤 | API 請求失敗 | 錯誤提示 + Retry |
| Alert 觸發 | 滿足 Alert 條件 | 對應區塊標記 ⚠️ 或 🔴,點擊跳轉詳情 |
🔎 邏輯自我檢查
Active Rate 定義統一: 一周 2 天使用 app,至少 1 次練習。同一公式用於 T-01 / T-21 / A-01。
詞彙與語句累積量層級關係: Curriculum ≥ Review ≥ Mastered 恆成立(Mastered = Box4+ ⊆ Review = Box1+ ⊆ Curriculum = 全部)。
Session Mastery 定位: 預設進入後自動捲動到最後一個有數據的 Session 位置。
Questions Practiced 顏色: Discovery Hub 藍色,Speak Studio 粉紅色。curriculum 參考線無填色。
Cognitive Distribution 分母: 全班總人數(非活躍學生數)。
Trophy hover: 四個指標卡片 hover 時即時查詢對應學生名單。
Class target 的含義: 這是 A-21/A-23 寫入的班級教學目標,不是「全班學生都在這個 Level」。學生自己的 Enrollment、Category、Level 仍以 T-21、S-41 為準,兩者可以不一致。本頁不顯示不一致人數。
顯示文字: 標籤用
Class target,不用 Category。優先顯示{category_name} · {level_name};沒有名稱時才用{category_id} · {level_code}。不另造EK1這類合併代碼。未設定不得冒充: 班級沒有教學目標時,不把多個學生 Level 合併成一個假的 Class target。
入校接送:T-05 Entry Pickup Screen;規則見 接送與點名規則。
班級營運與點名:T-06 Class Operations & Roll Call;規則見 接送與點名規則。
班級經濟:T-100 Class Economy Console;規則見 虛擬銀行規則。