乙丙等員工的強制面談 SOP——從候選人 → PDF 產出 → 通知 → 面談 → 上傳掃描 → 完成。

7 階段

flowchart LR
    A[候選人<br/>乙丙等] --> B[HR 確認面談名單]
    B --> C[自動產 PDF]
    C --> D[待通知]
    D --> E[發信<br/>附 PDF]
    E --> F[待面談]
    F --> G[掃描上傳]
    G --> H[已完成]

InterviewPdfService

呼叫 gen_interview_pdf.py 產 PDF。

gen_import.py

JOB_CODE 決定:

⚠️ 2026/04/25 新增:必填 --period-start YYYY-MM-DD 參數——避免「用 today() 篩 90 天但實際考核 1-2 個月後才開始」的問題。

排除員工候選池

新功能:ExcludedCandidates migration

gen_import.py 寫第 2 sheet「未列入名單」:

後端:ExcelService.ParseExcludedCandidates + ParticipantImportService.ImportExcludedCandidatesAsync + 3 支 API(GET/POST restore/DELETE)。

前端人員管理拆 2 Tab: