09
编排 · D 型(国家电投)
劳勤月度考勤(核电类)
attendance-laoqin-monthly
把「顾问名单 → 劳勤 WTS 逐人导出 PDF → 科室 Excel 汇总 → 确认单回填 → 科服交付」的月度流程标准化。本 skill 只负责流程编排与阶段门禁;PDF 归档交 data-prep、PDF 读取交 pdf-llm-preprocess、公式/单据异常交 exception-review。
◧
FIT & CLIENTS
适用画像 / 试点 / 不适用D适用画像
客户自有劳勤 WTS 考勤系统(非飞书/钉钉宽表);按客户科室/车间组织(非「考勤部门」);主交付员工考勤 PDF + 「人员工作量及考核结果确认单」;靠考勤表 + 确认单签字回流闭环,不逐一截图核对。
✦试点客户
国家电投 / 核电(PMC North Qing wu)。约 16+ 科室各一份确认单模板;约 300 人、约 180 人逐人导出、1 名 HR。
✗不适用
追觅类数据员宽表流程 → 改用 monthly-reconcile,勿套用按人截图、飞书凭证。
✦
CONFIRMED · 2026-06
顾问确认口径(伍青)劳勤系统
山东核电劳勤系统,登录 https://att.snpemc.com:81/user/login;账号由顾问按员工维护,目前由项目驻场用每名员工账号逐一登录导出。PDF 命名
员工姓名 + 工号,如 于洋L361(非仅姓名)。截图版面可能截断考勤信息,须核对完整性。审批/异常单据
请假/加班/出差等审批单据为线下补充材料,无法从劳勤系统导出。科室 Excel
由 PDF 誊写/汇总;文件名含月份(生产技术部-结构科-月份.xlsx)。每科人数不等(1 人 ~ 20–30 人);个别考勤员交叉管理 2–3 科室。签字闭环
考勤表 + 确认单都需科室负责人签字;确认单含考勤 & 考核结果,以扫描件回流;考勤凭证按员工逐人留存。交付变更
自 2026-06 起客户侧不再需要劳勤 PDF;劳勤 PDF 仅作内部留存/核对凭证。规则口径
迟到按 0.5h 四舍五入取整;缺卡与顾问沟通后修改;出差无需特殊处理;无夜班;资料长期保存。⚡
TRIGGERS
触发场景▸国家电投 / 核电月度考勤
▸劳勤 WTS 逐人导出 PDF
▸工作量确认单回填、核电确认单
▸约每月 10–11 日接收月度名单
↹
INPUT & OUTPUT
输入 / 产出↘ INPUT · 输入
- 目录名(
data/raw/下)+ 薪资月YYYYMM - 顾问提供的当月核对名单(含劳勤账号/密码)
- 各科确认单空白模板路径
- 可选:已核对跳过名单(本月不做劳勤)
↗ OUTPUT · 产出
- 考勤PDF/<科室>/<姓名工号>.pdf(出差/审批单据线下补充)
- 科室 Excel 汇总表(由 PDF 誊写,文件名含月份)
- 回填的「人员工作量及考核结果确认单」(含考核结果)
- 交付:考勤表 + 确认单送签字回流(2026-06 起客户侧不含劳勤 PDF)
⊞
CONFIRMATION COLS
确认单关键回填列出勤工作日天数
科服津贴据此计;阶段 5 回填时单独标注。
公休日加班小时数 / 延长工作时间小时数 / 法定节假日加班小时数
三项加班口径,分别对应 Excel 标黄列、延长工时列、法定假日行。
已执行/计划执行换休小时数
含计划换休,从合计中扣减;勿只算已执行。
计算加班费小时数(本月合计)
由上述三加班项减换休得出,须顾问书面确认后写入
attendance_config.json。🪜
PHASE GATES
阶段门禁(必须按序)- 0收名单与确认单GATE约每月 10–11 日接收。各科模板齐全;已核对跳过名单已标记。
- 1科室筛人 + 账号GATE按科室打开顾问名单(如「生产技术部-结构科」),复制每人劳勤工号/密码,与确认单模板逐一比对。门禁:本科室人员与确认单行数一致。
- 2劳勤导出 PDFGATE逐人登录 WorkbenchCalendar 切月份,看汇总(出勤/差旅/加班/审批状态),打印保存 PDF,文件名=姓名+工号(如 于洋L361)。门禁:每人有 <姓名工号>.pdf(出差/审批单据线下补充)。
- 3填科室 ExcelGATE标黄周末加班、法定假日行、批注加班转调休;差旅>0 走出差分支。门禁:日出勤/加班/调休与劳勤一致。
- 4加班费合计GATE公休日 + 延长工时 + 法定节假日 − 已执行/计划执行换休小时数。门禁:公式已按月调整;合计列已算。
- 5回填确认单 + 送科室签字GATEExcel 汇总列复制到确认单对应行,标注出勤工作日天数;可用
fill_confirmation_form.py自动回填并生成confirmation_fill_report.xlsx,送签前用validate_laoqin_consistency.py做三方校验。考勤表 + 确认单一并发科室负责人签字(确认单含考核结果)。退回则改 Excel 重出确认单再送签。门禁:各科确认单与 Excel 一致。 - 6交付科服GATE各科签字确认单 + 加班情况说明。门禁:考勤表 + 确认单已送签并回流。2026-06 起客户侧不再需要劳勤 PDF,PDF 转内部留存。
禁止
- 未导出劳勤 PDF 就填确认单。
- 未处理出差单据就交付科服。
- 跳过公式按月(30/31 天)调整。
⊟
LAOQIN SYSTEM
劳勤系统操作与状态口径系统路径
劳勤 WTS 4.0 → 考勤日历 WorkbenchCalendar。登录需账号 + 密码 + 验证码;切换用户 = 右上角退出后下一员工登录。延长工作时间审批中
员工已申请、领导未批 —— 仍按申请/实际时长填 Excel,不因审批未过而漏记。双休日加班
表现为日历橙色格;填 Excel 时该列标黄(公休日加班)。差旅 > 0
进入阶段 3 出差分支;出差/审批单据为线下补充材料,劳勤不可导出,须向员工/顾问索取后与考勤同目录归档。✈
TRAVEL & FORMULA
出差分支与 Excel 公式注意- 1向员工/顾问索取出差单据出差/审批单据为线下补充材料,劳勤系统不可导出;定位该员工已审批通过的出差申请。
- 2覆盖跨月全部时段确保跨月出差的所有时段都覆盖到。
- 3与考勤 PDF 同目录归档命名:
姓名工号.pdf+姓名工号-申请单据.pdf。
公休日 / 工作日加班列
有公式,每月须按 30/31 天调整,否则合计偏差。调休列
无公式,手工记录(批注加班转调休,如 7.5h)。∑
OVERTIME TOTAL
加班费合计公式
计算加班费小时数(本月合计)
= 公休日加班小时数
+ 延长工作时间小时数
+ 法定节假日加班小时数
− 已执行/计划执行换休小时数
= 公休日加班小时数
+ 延长工作时间小时数
+ 法定节假日加班小时数
− 已执行/计划执行换休小时数
⇄
PIPELINE
与其他 skill 衔接→
归档劳勤 PDF(推荐)→ data-prep 的
prepare_attendance_data.py。→
PDF 视觉/文本预处理(辅助读取出勤加班)→ pdf-llm-preprocess 的
pdf_llm_preprocess.py。→
异常审核(审批中、出差缺单据、公式不平)→ exception-review 的
build_exception_review.py。⤳
追觅类数据员宽表客户不适用 → 改用 monthly-reconcile。
⌘
RUN
运行命令(编排下游 + 本 skill 校验/回填/签回)DATASET_NAME="PMC North Qing wu 国家电投考勤"
PAY_PERIOD="<YYYYMM>"
SOURCE_DIR="data/raw/${DATASET_NAME}"
OUTPUT_DIR="outputs/${DATASET_NAME}-${PAY_PERIOD}"
# 1. 按人/科室归档劳勤 PDF(推荐)
uv run python skills/attendance/attendance-data-prep/scripts/prepare_attendance_data.py \
"${SOURCE_DIR}" "${OUTPUT_DIR}" \
--base-table <顾问名单.xlsx>
# 2. PDF 视觉/文本预处理(辅助读取出勤加班)
uv run python skills/utility/pdf-llm-preprocess/scripts/pdf_llm_preprocess.py \
"${OUTPUT_DIR}/考勤PDF/<科室>/<姓名>.pdf" \
--out-dir "${OUTPUT_DIR}/pdf_pages/<姓名>"
# 3. 异常审核(审批中、出差缺单据、公式不平)
uv run python skills/attendance/attendance-exception-review/scripts/build_exception_review.py \
"${OUTPUT_DIR}" "${PAY_PERIOD}" \
"${OUTPUT_DIR}/exception_review.xlsx" \
--source-dir "${SOURCE_DIR}" \
--config <attendance_config.json>
# 4. 三方一致性校验(科室 Excel / 确认单 / PDF 留存 + 加班费合计)
uv run python skills/attendance/attendance-laoqin-monthly/scripts/validate_laoqin_consistency.py \
"${OUTPUT_DIR}/laoqin_consistency_check.xlsx" \
--department-excel <科室Excel.xlsx> \
--confirmation <确认单.xlsx> \
--pdf-dir "${OUTPUT_DIR}/考勤PDF"
# 5. 从科室 Excel 回填确认单模板(识别两行合并表头)
uv run python skills/attendance/attendance-laoqin-monthly/scripts/fill_confirmation_form.py \
--department-excel <科室Excel.xlsx> \
--template <确认单模板.xlsx> \
--output "${OUTPUT_DIR}/已回填确认单.xlsx" \
--report "${OUTPUT_DIR}/confirmation_fill_report.xlsx"
# 6. 检查考勤表 + 确认单签回件
uv run python skills/attendance/attendance-laoqin-monthly/scripts/check_laoqin_signbacks.py \
"${OUTPUT_DIR}/laoqin_signback_check.xlsx" \
--department-excel <科室Excel.xlsx> \
--signback-dir "${OUTPUT_DIR}/签回件"⚙
ROADMAP
自动化路线图| 优先级 | 脚本 | 状态 |
|---|---|---|
| P0 | validate_laoqin_consistency.py | 已实现首版 · 科室Excel/确认单/PDF 三方一致 + 加班费合计 |
| P0 | fill_confirmation_form.py | 已实现首版 · 科室Excel 回填确认单(识别两行合并表头) |
| P0 | check_laoqin_signbacks.py | 已实现首版 · 按科室检查考勤表/确认单签回件 |
| P1 | organize_laoqin_pdfs.py | 待实现 |
| P2 | 劳勤批量导出 | 依赖系统 API,短期 SOP 为主 |
耗时基准
逐人导出约 1.5 分钟/人(约 180 人);科室 Excel 约 40–50 分钟/科室;客户签字回流约 2 工作日;退回重做约 20–25 分钟/次;全项目约 5 人日/月。回填 / 校验门禁
确认单为两行合并表头(「加班情况」横跨 5 个加班子列);脚本已识别合并表头,6 个对比列全部回填/比对。只有对比列全部映射、确有回填、且无缺员时 confirmation_fill_report.xlsx 才报「可送签:是」。↺
RETRY & NOTES
失败重试 / 注意事项登录/导出失败
记录失败人员单独重试,不跳门继续汇总。PDF 识别失败
先跑 data-prep / pdf-llm-preprocess 修复后再回填确认单。合计不一致
回到对应科室 Excel 逐行核对,不直接交付科服。域名/界面变更
以顾问最新 SOP 为准(顾问确认 att.snpemc.com:81;旧录屏 att.snpmc.com 为笔误),不沿用过期录屏。科室模板
结构应一致,差异须记录在 rules_catalog_draft.md;个别考勤员交叉管理 2–3 科室单独记录。操作视频
两段内容基本一致,处理一份即可。✓
ACCEPTANCE
闭环验收- ✓各科确认单人员与顾问名单一致。
- ✓每人有劳勤 PDF(出差/审批单据为线下补充,按需补齐)。
- ✓Excel 加班费合计与确认单一致。
- ✓
laoqin_consistency_check.xlsx无高优先级问题。 - ✓
confirmation_fill_report.xlsx无问题项(可送签:是)。 - ✓
laoqin_signback_check.xlsx全部为已签回。 - ✓已核对名单人员已跳过。
- ✓考勤表 + 确认单已送科室签字并回流(2026-06 起客户侧不再需要劳勤 PDF)。
⊘
ANTI-PATTERNS
反例检查✗
套用 monthly-reconcile 的按人截图、飞书凭证流程。
✗
未核对顾问名单就开始逐人劳勤导出。
✗
确认单回填后未验算 Excel 加班费合计。
✗
确认单两行表头只映射到出勤天数列,5 个加班列空着却报「可送签」。
✗
科室模板结构不一致却未记录在
rules_catalog_draft.md。