54 lines
1.9 KiB
Markdown
54 lines
1.9 KiB
Markdown
|
|
## 安保设备管理 & 事件告警平台实现计划
|
|||
|
|
|
|||
|
|
按照你的架构设计,我将分 8 个阶段实现:
|
|||
|
|
|
|||
|
|
### 阶段 1:项目骨架(1-2 小时)
|
|||
|
|
- 创建目录结构 `security_platform/`
|
|||
|
|
- 配置 `settings.py`(应用名、数据库、Redis)
|
|||
|
|
- 配置 `requirements.txt`(FastAPI、SQLAlchemy 等依赖)
|
|||
|
|
|
|||
|
|
### 阶段 2:数据库层(2-3 小时)
|
|||
|
|
- 创建 `infra/db.py`(SQLAlchemy engine 和 session 管理)
|
|||
|
|
- 创建 `core/device/models.py`(Device 设备模型)
|
|||
|
|
- 创建 `core/event/models.py`(Event 事件模型)
|
|||
|
|
- 创建 Repository 基类和设备/事件仓储实现
|
|||
|
|
|
|||
|
|
### 阶段 3:设备管理模块(2-3 小时)
|
|||
|
|
- 创建 `schemas/device.py`(Pydantic 请求/响应模型)
|
|||
|
|
- 实现 `core/device/service.py`(设备业务逻辑)
|
|||
|
|
- 创建 `api/device.py`(设备 CRUD + 心跳接口)
|
|||
|
|
- 支持对接 IoT 平台的设备注册
|
|||
|
|
|
|||
|
|
### 阶段 4:事件告警模块(2-3 小时)
|
|||
|
|
- 创建 `schemas/event.py`(事件 Pydantic 模型)
|
|||
|
|
- 实现 `core/event/service.py`(事件处理逻辑)
|
|||
|
|
- 实现 `core/event/rules.py`(告警规则引擎)
|
|||
|
|
- 创建 `api/event.py`(事件上报、查询接口)
|
|||
|
|
|
|||
|
|
### 阶段 5:WebSocket 实时推送(1-2 小时)
|
|||
|
|
- 实现 `api/realtime.py`(WebSocket 端点)
|
|||
|
|
- 告警实时推送机制
|
|||
|
|
- 连接管理和消息广播
|
|||
|
|
|
|||
|
|
### 阶段 6:辅助模块(1 小时)
|
|||
|
|
- 创建 `api/health.py`(健康检查)
|
|||
|
|
- 创建 `utils/logger.py`(日志工具)
|
|||
|
|
- 创建 `utils/time.py`(时间工具)
|
|||
|
|
|
|||
|
|
### 阶段 7:部署配置(1 小时)
|
|||
|
|
- 创建 `deploy/Dockerfile`
|
|||
|
|
- 创建 `deploy/docker-compose.yml`
|
|||
|
|
- 创建 `deploy/nginx.conf`
|
|||
|
|
|
|||
|
|
### 阶段 8:文档和测试(1 小时)
|
|||
|
|
- 生成 `README.md`
|
|||
|
|
- 编写基础 API 文档
|
|||
|
|
|
|||
|
|
**预计总工时:11-15 小时**
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
**核心技术栈确认:**
|
|||
|
|
- FastAPI + Uvicorn + Gunicorn
|
|||
|
|
- SQLite(本地)或 MySQL(云端)
|
|||
|
|
- Redis(可选,用于 WebSocket 订阅)
|
|||
|
|
- SQLAlchemy 2.0
|