等第天花板(CalcCeiling)
因懲處、假勤、年資等條件,限制員工最高可達等第。由 GradingService.CalcCeiling 計算。
觸發條件 → 天花板
| 條件 | 天花板 |
|---|---|
| 申誡以上懲處 | 不得列特優 |
| 記過以上懲處 | 不得列優等 |
| 任職未滿 1 年 | 不得列特優 |
| 部門未滿 10 人 | 特優至多 1 人,優等以上不超過 1/4 |
| 事假超過 14 天(112 小時) | 甲等 |
| 病假超過 30 天(240 小時) | 甲等 |
計算範圍
以年度為單位——假勤天數與獎懲紀錄合計同專案所有週期(年中+年終),非單一週期。
年資參考日
「評分當下(今天)」為準——避免使用未來的 period.EndDate 讓尚未滿一年者被放行。
若週期已結束才取 EndDate(歷史視角)。位於 ReviewController.GetGradeCeilingAsync。
檢查範圍
年中/年終皆硬性阻擋(ReviewValidator):
SaveDraftAsyncSubmitReviewAsyncBatchSubmitAsync
不再只限 YearEnd。
前端即時警告
| 狀態 | 用什麼分數 |
|---|---|
| 考核進行中 | 即時計算(watchedScores)打分時即時顯示 |
| 已完成案件 | 伺服器端 finalScore / finalGrade |
位置:ScoreSummary 下方。
後端 API
GetGradeCeilingAsync——取得考核表詳情時即時計算,即使從未存過檔也會回傳。
相關概念
強連結(原文明確提及)
- GradingService
- 等第規則
- 出勤扣分
- 獎懲加減分
- ReviewValidator
- 異常標記 ForceFlag — 違反天花板時的標記
← 回到 wiki