Skip to content

feat: 課表查詢看某一週實際課表(異動標色);新增常用假別;發布 v1.4.15 - #80

Merged
begin0808 merged 1 commit into
mainfrom
feat/week-timetable-leave-types
Nov 10, 2026
Merged

begin0808 merged 1 commit into
mainfrom
feat/week-timetable-leave-types

Conversation

@begin0808

Copy link
Copy Markdown
Owner

需求(老師建議)

  1. 想看每一班、每一週實際的課表,有異動的課要標出來。
  2. 假別希望增加「身心調適假」。

使用者定案:

  • 第 1 項做。
  • 假別:把常用的一起加進來,少見的選「其他」並寫事由。
  • 「老師自己登記調代課」不做,仍由組長把關。

某一週實際課表

「課表查詢」的班級、教師課表上方多了「看某一週(含調代課)」,可以選日期,也可以按本週、上一週、下一週。

  • 新 API:GET /published/week?view=class|teacher&target_id&on。所有登入者都能用,和課表查詢相同。資料用 patrol_sheets.Day,和巡堂表、教師週總表同一份。
  • 班級課表:顯示每一節實際來上課的老師。有異動時標出種類,備註寫原本的老師,例如「代課(原:王師)」。為此 patrol_sheets._Lesson 多存一個 original 欄位。
  • 教師課表:沿用教師週總表的 day_cells(_Builder、_day_cells 改成公開名稱),回傳第幾節;前端再依第幾節對到格線。
  • 前端:
    • TimetableGrid 依 GridEntry.change 加上顏色:代課、併班藍色,調課紅色,原本的課沒上劃線,請假還沒安排橘色。
    • 表頭改寫日期(新增 dayLabels prop)。
    • 上方顯示「這週有 N 節異動」和圖例。
  • 匯出仍是固定課表,畫面上有提示。場地課表沒有週次。

新增假別

新增:身心調適假、家庭照顧假、生理假、休假、補休、產前假(產檢假)、陪產檢及陪產假、公傷假、其他。

  • 下拉選單依常用程度排列(就是 enum 的宣告順序)。
  • 假別存成文字欄位,不用改資料表。
  • 選「其他」時事由必填,新增和修改假單都會檢查。
  • 家庭照顧假併入事假計算,所以代課計費方式和事假一樣,預設「自費代課」(SELF_PAID_LEAVE_TYPES)。
  • 舊測試原本用 vacation 當作不存在的假別,改成 no_such_type。

測試

  • 後端:全部 772 項通過,其中新增 7 項(test_timetable_week.py、test_leave_types_v1415.py);ruff、mypy 無誤。
  • 前端:62 項通過,新增 weekCells.test.ts;lint、vue-tsc 無誤。
  • e2e:patrol-sheets.spec.ts 加上課表查詢選某一週、檢查代課那一格標色。用本機新映像跑過 patrol-sheets 和 leaves 兩個 spec,都通過。
  • 用示範資料看過教師週課表:表頭寫日期,請假那天的節次劃線並標橘色。

文件

  • 手冊:
    • 課表查詢加了「看某一週實際的課表」的提示。
    • 請假登記補上新假別的說明。
    • 計費方式的預設規則加上家庭照顧假。
  • 功能總覽:
    • 新增一列。
    • 原本的限制「課表查詢不含調代課」改成「匯出不含調代課」。
  • 版本與日期更新到 v1.4.15(2026-11-10):CHANGELOG、README、升級說明、roadmap、.env.example。

🤖 Generated with Claude Code

老師建議:
- 課表查詢的班級、教師課表可以選某一週,看調代課之後的樣子,
  代課藍、調課紅、原本的課沒上劃線、請假待處理橘,並寫原本的老師。
- 新增身心調適假、家庭照顧假、生理假、休假、補休、產前假、陪產檢及陪產假、
  公傷假與「其他」(事由必填);家庭照顧假預設自費代課。

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@begin0808
begin0808 merged commit cfb02ec into main Nov 10, 2026
6 checks passed
@begin0808
begin0808 deleted the feat/week-timetable-leave-types branch November 10, 2026 03:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant