考核進行中主管離職時,保留 ExamRecord 歷史 + 換 ExamParticipant 配置欄位

ReviewerTransferService 處理。

兩種模式

模式 1:保留記錄換配置

模式 2:Shift 遞補(NewReviewerName 為空)

API

POST /api/hr/participants/batch-transfer-reviewers

支援 DryRun: true —— 先預覽影響哪些人,不實際寫入。

前端入口

人員管理頁批次調整主管 Dialog → 切換「保留記錄 / 清空重評」兩模式。

孤立 ExamRecord 防護

TotalReviewSteps 減少時,可能產生 Step > TotalReviewSteps 的孤立 ExamRecord。三層防護:

  1. UpdateReviewersAsync:減少關卡時自動刪除孤立 ExamRecord + ExamAnswers,重算 FinalScore
  2. SubmitDepartmentAsync:提交前檢查並自動修復,記錄稽核日誌