🤖 AI 生成声明 / AI-Generated Notice
本仓库全部代码由 AI 生成,是我个人的 AI 创作项目。 All code in this repository is generated by AI — this is my personal AI-driven project.
技术栈 / Stack:FastAPI · SQLAlchemy · SQLite · Vue 3 · Vite · Element Plus · ECharts
面向中小企业的员工信息化管理平台:员工档案、部门/职位、考勤打卡、请假审批、薪资核算、数据可视化看板。
| 层 | 技术 |
|---|---|
| 后端 | Python 3.10+ · FastAPI · SQLAlchemy 2.x · JWT 认证 |
| 数据库 | SQLite(零配置,文件位于 backend/employee.db) |
| 前端 | Vue 3 · Vite · Element Plus · ECharts |
| 运行 | Uvicorn(本地 Windows 与服务器 Ubuntu 同一条命令) |
方式一:一键启动(推荐)
双击项目根目录的 启动系统.bat。首次运行会自动完成:创建虚拟环境 → 安装依赖 → 构建前端 → 启动服务 → 打开浏览器 http://127.0.0.1:8000。
方式二:手动启动
# 后端
cd backend
python -m venv .venv
.\.venv\Scripts\pip install -r requirements.txt
.\.venv\Scripts\python -m uvicorn app.main:app --port 8000
# 前端(另开终端,开发模式热更新)
cd frontend
npm install
npm run dev # http://localhost:5173首次启动自动写入演示数据,包含 4 个角色的账号:
| 账号 | 密码 | 角色 |
|---|---|---|
admin |
admin123 |
系统管理员 |
hr |
hr123 |
HR |
manager |
manager123 |
部门主管(技术部) |
employee |
employee123 |
普通员工 |
生产部署前请通过「用户管理」修改密码,并设置环境变量
JWT_SECRET。
- 数据看板:员工总数、本月入离职、部门人数分布、职级比例、出勤率(对比上月)、请假类型汇总、近 6 个月薪资趋势
- 员工管理:增删改查、关键词搜索、分页、Excel 导入/导出
- 部门管理:部门维护 + 在职人数统计
- 职位管理:按部门维护职位与职级(P1~P6)
- 考勤管理:上下班打卡、HR 配置考勤规则(上下班时间/迟到宽限/工作日)、月度统计(出勤/迟到/早退/请假/缺勤)、HR 修正记录
- 请假管理:员工提交(事假/病假/年假/婚假/产假/调休/其他),主管审批,记录查询;批准后自动标记考勤
- 薪资管理:HR 录入/编辑(实发自动计算),按年份/部门筛选,员工查看本人薪资
- 用户管理:管理员维护账号,可关联员工,4 种角色权限隔离
| 功能 | 普通员工 | 部门主管 | HR | 管理员 |
|---|---|---|---|---|
| 打卡 / 提交请假 / 查看本人薪资 | ✅ | ✅ | ✅ | ✅ |
| 审批本部门请假 | — | ✅ | ✅ | ✅ |
| 员工数据范围 | 本人 | 本部门 | 全部 | 全部 |
| 员工/部门/职位/薪资/规则管理 | — | 只读 | ✅ | ✅ |
| 用户管理 | — | — | — | ✅ |
employee-management-system/
├── 启动系统.bat # Windows 一键启动
├── 开发模式.bat # 前后端热更新开发
├── DEVELOPMENT.md # 开发文档
├── backend/
│ ├── app/ # 后端源码(models/schemas/auth/routers/...)
│ ├── requirements.txt
│ ├── .env.example # 环境变量示例
│ └── employee.db # SQLite 数据库(运行时生成)
├── frontend/
│ ├── src/ # 前端源码(Vue3 页面)
│ ├── dist/ # 构建产物(运行时生成,由后端伺服)
│ └── package.json
└── deploy/ # 云服务器部署配置
见 deploy/部署手册.md(Ubuntu + Nginx + Systemd)。
0 comments
log in to comment.