UAV考点运营与流程管理系统是一套专为无人机考试机构设计的综合管理平台,旨在解决考点现场管理混乱、信息不透明、考生焦虑以及运营效率低下等问题。
- 🏛️ 后台管理: 完整的用户、角色、权限(RBAC)管理体系
- 📋 报名流程: 支持批量导入和手动录入考生信息
- 📅 日程编排: 智能化考试日程安排,支持按机构集中管理
- 📱 移动端支持: 微信小程序提供考生服务和考务管理
- 🔍 实时监控: 考场动态看板,实时更新考试状态
- 🏗️ 高性能: 支持1200人同时在线,响应时间<500ms
- 框架: FastAPI + Python 3.11
- 数据库: MySQL 8.0 + Redis
- 认证: JWT + FastAPI-Users
- 部署: Docker + Docker Compose
- PC管理后台: Vue 3 + Element Plus
- 微信小程序: 原生小程序框架
- 构建工具: Vite
# 克隆项目
git clone https://github.com/codesoldier99/UAV_EXAMv8.git
cd UAV_EXAMv8
# 一键启动
python quick_start.py# 启动所有服务
docker-compose up -d
# 查看服务状态
docker-compose ps# 在服务器上执行
chmod +x deploy.sh
./deploy.sh your_server_ip启动成功后访问:
- 健康检查: http://localhost:8000/health
- API文档: http://localhost:8000/api/v1/docs
- 前端界面: http://localhost:3000(如果启动了前端)
# 健康检查
curl http://localhost:8000/health
# 用户登录
curl -X POST "http://localhost:8000/api/v1/auth/login" -d "username=admin&password=admin123"
# 获取机构列表
curl http://localhost:8000/api/v1/institutions
# 考试产品管理
curl http://localhost:8000/api/v1/exam-products/
# 考生管理
curl http://localhost:8000/api/v1/candidates/
# 考场状态(小程序公共看板)
curl http://localhost:8000/api/v1/public/venues-status
# 微信小程序API
curl http://localhost:8000/api/v1/wechat/venues/status
curl http://localhost:8000/api/v1/wechat/dashboard# 运行测试脚本
python test_api.py# 创建测试数据(包括管理员、机构、考试产品、考场、考生等)
python init_test_data.py- 超级管理员: 系统配置、用户管理、权限分配
- 考务管理员: 考试安排、现场监控、日程管理
- 机构用户: 考生报名、信息查询、数据隔离
- 考务人员: 现场扫码签到、状态更新
- 考生: 查看日程、出示二维码、实时状态
- 考试产品配置(理论/实操)
- 考试时长设置
- 产品状态管理
- 批量操作支持
- 批量Excel导入考生信息
- 手动单个考生录入
- 身份证号验证
- 按机构隔离数据访问
- 考生状态实时追踪
- 智能日程编排算法
- 按机构集中安排实操考试
- 考场资源优化配置
- 时间冲突检测
- 实时排队状态显示
- 考生身份证号登录
- 动态二维码身份凭证
- 考务人员扫码签到
- 实时考场状态看板
- 个人日程查询
- 排队位置显示
小程序配置文件在 miniprogram/ 目录:
app.json- 小程序配置app.js- 小程序入口文件- 支持考生登录、二维码显示、日程查看等功能
项目包含完整的Docker配置:
docker-compose.yml- 服务编排配置backend/Dockerfile- 后端镜像构建frontend/Dockerfile- 前端镜像构建
服务包括:
- MySQL 8.0 数据库
- Redis 缓存
- FastAPI 后端
- Vue3 前端
- Nginx 反向代理
UAV_EXAMv8/
├── backend/ # FastAPI后端
│ ├── app/ # 应用代码
│ │ ├── config/ # 配置模块
│ │ ├── models/ # 数据模型
│ │ ├── routes/ # API路由
│ │ ├── services/ # 业务服务
│ │ ├── schemas/ # 数据模式
│ │ ├── utils/ # 工具函数
│ │ └── main.py # 主程序
│ ├── requirements.txt # Python依赖
│ ├── Dockerfile # Docker镜像
│ └── .env.example # 环境配置示例
├── frontend/ # Vue3前端
│ ├── src/ # 源代码
│ ├── package.json # 前端依赖
│ └── Dockerfile # Docker镜像
├── miniprogram/ # 微信小程序
│ ├── pages/ # 小程序页面
│ ├── app.json # 小程序配置
│ └── app.js # 小程序入口
├── docker-compose.yml # Docker编排
├── deploy.sh # 部署脚本
├── quick_start.py # 快速启动
├── test_api.py # API测试脚本
└── README.md # 项目文档
- 高并发: 支持1200人同时在线
- 快速响应: API响应时间<500ms
- 缓存优化: Redis缓存热点数据
- 数据库优化: 索引优化和连接池配置
- JWT Token认证
- RBAC权限控制
- SQL注入防护
- XSS攻击防护
- CORS策略配置
- HTTPS通信加密
- Fork 项目
- 创建功能分支 (
git checkout -b feature/new-feature) - 提交更改 (
git commit -m 'Add some feature') - 推送到分支 (
git push origin feature/new-feature) - 创建 Pull Request
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。
- 项目地址: https://github.com/codesoldier99/UAV_EXAMv8
- Issues: https://github.com/codesoldier99/UAV_EXAMv8/issues
- 🚀 重大功能更新
- ✅ 完整的考试产品管理系统
- ✅ 考生报名管理(批量导入/手动录入)
- ✅ 微信小程序核心功能(登录/二维码/签到)
- ✅ 日程排期管理系统
- ✅ 实时考场状态监控
- ✅ 排队位置显示
- ✅ 完整的API测试脚本
- ✅ 数据模式验证和错误处理
- 🎉 初始版本发布
- ✅ 完整的用户权限管理系统
- ✅ 基础架构搭建
- ✅ Docker容器化部署
- ✅ 自动化部署脚本
- ✅ 基础API文档
享受您的UAV考点管理系统! 🚀