# Attendance System - 企业考勤管理系统 ## 项目概述 企业多方式考勤打卡系统,支持人脸识别、GPS定位、工牌刷卡三种打卡方式。 自动化计算迟到、早退、缺勤、加班等考勤结果,并提供异常预警、报表生成、 管理员控制台等完整功能。 ## 功能模块 - **考勤打卡服务**:接收打卡请求,验证JWT令牌,记录打卡信息 - **排班规则引擎**:管理班次定义与排班规则 - **考勤计算引擎**:自动判定考勤结果 - **异常检测与通知服务**:监控异常并发送通知 - **报表生成器**:多维度统计报表(Excel/PDF) - **管理员控制台**:员工档案、排班配置、权限管理 - **数据加密模块**:生物特征加密存储 - **外部系统对接网关**:HRMS数据同步API ## 技术栈 - C++17 + CMake - 无外部第三方依赖(仅标准库) ## 编译与运行 ```bash # 创建构建目录 mkdir build && cd build # 配置 cmake .. # 编译 cmake --build . # 运行主程序 ./attendance_system # 运行测试 ./basic_test ``` ## 数据结构概述 - 打卡记录 (CheckinRecord):recordId, employeeId, method, timestamp, location - 排班规则 (ScheduleRule):deptId, shiftName, startTime, endTime - 考勤结果 (AttendanceResult):迟到/早退/缺勤/加班判定 - 异常预警 (AlertNotification):alertType, employeeId, reason - 系统角色 (SystemRole):SUPER_ADMIN, HR_MANAGER, DEPT_MANAGER