Commit Graph

7 Commits

Author SHA1 Message Date
3b64db7029 文档:告警数据看板设计方案
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 17:01:09 +08:00
b1dd75e7c8 文档:添加工单体系设计方案和数据库 Schema
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 16:41:02 +08:00
09e0dbbc38 docs: 添加 VLM 验证 + 企微通知 V1 实施计划
包含 9 个任务的详细实施计划:
- 数据库表设计(通知区域、摄像头绑定、人员绑定)
- VLM 视觉验证服务
- 企微通知服务
- 告警主流程集成
- 通知管理 API
2026-03-06 11:14:57 +08:00
6996423f7d refactor(alarm): 模块化摄像头名称格式化服务
问题:
- 硬编码字段映射(gbName、name、app)
- 逻辑重复散落多处
- 格式写死无法配置
- 未基于数据库实际表结构
- 可扩展性差

重构方案:
1. 创建配置类 CameraNameConfig
   - 显示格式模板(支持变量:{camera_code}, {name}, {stream})
   - 字段优先级配置
   - WVP API配置
   - 查询超时配置

2. 创建服务类 CameraNameService
   - 查询摄像头信息(get_camera_info)
   - 提取名称字段(extract_name)
   - 格式化显示名称(format_display_name)
   - 一站式方法(get_display_name)

3. 重构路由层
   - 移除硬编码逻辑
   - 使用camera_name_service统一处理
   - 删除旧的_get_camera_info函数
   - 简化代码结构

架构优势:
- 配置驱动:格式通过环境变量控制
- 单一职责:服务只负责名称处理
- 可扩展:新增格式无需改代码
- 可测试:服务独立易于测试
- 模块化:逻辑集中便于维护

配置示例:
```bash
WVP_API_BASE=http://localhost:18080
CAMERA_NAME_FORMAT={camera_code} {name}/{stream}
CAMERA_QUERY_TIMEOUT=5
```

修改文件:
+ app/config.py - 添加CameraNameConfig配置
+ app/services/camera_name_service.py - 新建服务
+ docs/camera_name_config.md - 配置文档
~ app/routers/yudao_aiot_alarm.py - 使用新服务

测试结果:
- 告警列表: cam_1f0e3dad9990 → cam_1f0e3dad9990 大堂吧台3/012 ✓
- 设备汇总: cam_c51ce410c124 → cam_c51ce410c124 大堂吧台1/008 ✓
2026-02-24 13:59:13 +08:00
a6697331df docs: 添加 ai_edge 告警上报器参考代码
- 用于理解边缘端告警上报的数据格式
- 包含 MQTT 发布和 HTTP 回退逻辑

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-05 13:58:00 +08:00
b5c72f73e0 docs: 新增增强版架构设计文档
- 定义 MQTT 订阅架构对接 ai_edge
- 设计 WebSocket 实时推送方案
- 规划设备心跳监控流程
- 明确 API 端点设计

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-05 13:56:09 +08:00
12e127f1f0 docs: 添加告警平台与芋道前端对接文档
包含以下内容:
- 后端 API 接口详细说明
- 芋道前端集成步骤
- 边缘端对接示例代码
- 阿里云 OSS 配置说明
- 大模型分析配置(可选)
- 部署说明
2026-02-02 09:44:05 +08:00