SettlementService
年度結算核心服務:把年中、年終的當次成績 D + 獎懲加減分結算成「全年度成績」與「年度等第」。
全年度公式
若有年中 + 年終:
全年度 = (年中D + 年終D) ÷ 2 + 獎懲加減分
若只有年終:
全年度 = 年終D + 獎懲加減分
詳見 獎懲加減分。
API
POST /api/hr/projects/{projectId}/settle
流程
- 以年終已完成參與者為基準(僅限等第審核已確認的虛擬部門)
- 逐人查年中成績 + 獎懲加減分
- HR 調整值優先:
AdjustedAnnualScore> 公式計算值 - 等第判定:
AdjustedAnnualGrade> 依分數自動判定(透過 GradingService.CalcGrade) - Upsert 至
AnnualResults,專案狀態設為Settled
ExamParticipant 調分欄位
| 欄位 | 說明 |
|---|---|
ScoreBeforeAdjust | 等第調整前的原始 FinalScore(首次調整時記錄,多次調整不覆蓋) |
AdjustedAnnualScore | HR 調整的年度總分 |
AdjustedAnnualGrade | HR 調整的年度等第 |
AnnualNarrativeCheckedAt | 年度等第檢查站通過時間 |
AnnualNarrativeCheckedBy | 年度等第檢查站確認人 |
鎖定/解鎖
- 年度結算鎖定:全部虛擬部門 Settlement 都 Confirmed 後才可鎖定專案
- 年度結算解鎖(退回):需輸入 HR 管理員密碼(
SystemSettings Sync104:Password)
相關概念
強連結(原文明確提及)
- GradingService — 計算等第
- 獎懲加減分
- 等第審核流程 — 結算前置
- 年度結算流程 — 包裹此服務的完整流程
- 年度等第檢查站 —
AnnualNarrativeCheckedAt - ProtectionService — 鎖定/解鎖密碼驗證
- GradeAdjustment — 結算前的調分記錄
← 回到 wiki