2026-04-25 04:29:20 +00:00
|
|
|
|
# 智能考勤管理系统 (Attendance System)
|
2026-04-25 04:26:31 +00:00
|
|
|
|
|
2026-04-25 04:29:20 +00:00
|
|
|
|
## 概述
|
|
|
|
|
|
本工程实现了一个精简但结构清晰的智能考勤管理系统,涵盖:
|
|
|
|
|
|
- 多终端打卡数据接收与处理
|
|
|
|
|
|
- 自动化工时核算与异常标记
|
|
|
|
|
|
- 考勤报表生成
|
|
|
|
|
|
- RBAC 权限与数据安全模型
|
2026-04-25 04:26:31 +00:00
|
|
|
|
|
2026-04-25 04:29:20 +00:00
|
|
|
|
## 项目结构
|
|
|
|
|
|
```
|
|
|
|
|
|
AttendanceSystem/
|
|
|
|
|
|
├── CMakeLists.txt # 构建配置(C++17, MSVC UTF-8)
|
|
|
|
|
|
├── README.md # 本文件
|
|
|
|
|
|
├── include/
|
|
|
|
|
|
│ └── app.hpp # 核心数据结构与业务接口声明
|
|
|
|
|
|
├── src/
|
|
|
|
|
|
│ ├── app.cpp # 业务逻辑实现
|
|
|
|
|
|
│ └── main.cpp # 命令行入口(功能演示)
|
|
|
|
|
|
└── tests/
|
|
|
|
|
|
└── basic_test.cpp # 单元测试(使用标准 assert)
|
|
|
|
|
|
```
|
2026-04-25 04:26:31 +00:00
|
|
|
|
|
|
|
|
|
|
## 编译与运行
|
|
|
|
|
|
|
2026-04-25 04:29:20 +00:00
|
|
|
|
### 使用 CMake
|
2026-04-25 04:26:31 +00:00
|
|
|
|
```bash
|
2026-04-25 04:29:20 +00:00
|
|
|
|
cd AttendanceSystem
|
2026-04-25 04:26:31 +00:00
|
|
|
|
mkdir build && cd build
|
|
|
|
|
|
cmake ..
|
|
|
|
|
|
cmake --build .
|
2026-04-25 04:29:20 +00:00
|
|
|
|
```
|
2026-04-25 04:26:31 +00:00
|
|
|
|
|
2026-04-25 04:29:20 +00:00
|
|
|
|
### 运行主程序
|
|
|
|
|
|
```bash
|
2026-04-25 04:26:31 +00:00
|
|
|
|
./attendance_system
|
2026-04-25 04:29:20 +00:00
|
|
|
|
```
|
2026-04-25 04:26:31 +00:00
|
|
|
|
|
2026-04-25 04:29:20 +00:00
|
|
|
|
### 运行测试
|
|
|
|
|
|
```bash
|
2026-04-25 04:26:31 +00:00
|
|
|
|
./basic_test
|
|
|
|
|
|
```
|
|
|
|
|
|
|
2026-04-25 04:29:20 +00:00
|
|
|
|
## 核心设计
|
|
|
|
|
|
- **员工管理**:支持员工信息、班次、部门维护
|
|
|
|
|
|
- **打卡处理**:统一打卡协议,校验时间戳与设备标识
|
|
|
|
|
|
- **考勤核算**:根据排班规则与节假日自动计算工时、标记异常
|
|
|
|
|
|
- **报表导出**:支持按部门与时间范围生成统计报表
|
|
|
|
|
|
- **安全模型**:RBAC 权限控制,敏感数据脱敏
|
2026-04-25 04:26:31 +00:00
|
|
|
|
|
2026-04-25 04:29:20 +00:00
|
|
|
|
> 本工程为 C++ 示范实现,重点关注数据结构的清晰与业务逻辑的可读性。
|