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