---
description: "监控数据统计修改前检查指令"
---

监控数据统计修改前先按需求检查所需文件，为修改提供上下文

## 概述
本文档提供了监控数据统计功能相关的所有文件检查清单，包括页面、API、实体、路由等。

## 1. 前端页面文件

### 1.1 监控统计页面
- **文件**: `src/client/admin/pages/MonitorStats.tsx`
- **状态**: ✅ 已存在
- **功能**: 显示监控数据统计表格，支持时间范围查询
- **关键组件**: 
  - 时间范围选择表单
  - 统计数据表格
  - 手工巡检功能

### 1.2 相关组件
- **监控数据表格组件**: `src/client/admin/components/MonitorStats/MonitorStatsTable.tsx`
- **监控数据Hook**: `src/client/admin/hooks/useMonitorData.ts`

## 2. 后端API文件

### 2.1 监控统计API路由
- **主路由文件**: `src/server/api/monitor-stats/index.ts`
- **GET路由**: `src/server/api/monitor-stats/get.ts`
- **API注册**: `src/server/api.ts` (第184行)

### 2.2 相关API路由
- **监控数据API**: `src/server/api/monitor-data/`
- **监控地图API**: `src/server/api/monitor-map/`
- **监控任务API**: `src/server/api/monitor-task/`

## 3. 实体定义文件

### 3.1 设备监控数据实体
- **实体文件**: `src/server/modules/devices/device-monitor-data.entity.ts`
- **Schema文件**: `src/server/modules/devices/device-monitor-data.schema.ts`
- **关键字段**:
  - `deviceId`: 设备ID
  - `metricType`: 监控指标类型
  - `metricValue`: 监控值
  - `collectTime`: 采集时间
  - `status`: 状态(0正常/1异常)

### 3.2 相关实体
- **设备实例**: `src/server/modules/devices/device-instances.entity.ts`
- **设备类型**: `src/server/modules/devices/device-types.entity.ts`

## 4. 服务层文件

### 4.1 设备监控数据服务
- **服务文件**: `src/server/modules/devices/device-monitor-data.service.ts`
- **关键方法**:
  - `queryMonitorStats()`: 查询监控统计数据
  - `getMonitorDataList()`: 获取监控数据列表
  - `addMonitorData()`: 添加监控数据

### 4.2 相关服务
- **监控服务**: `src/server/modules/monitor/monitor.service.ts`
- **告警服务**: `src/server/modules/monitor/alert.service.ts`

## 5. 客户端API定义

### 5.1 监控统计客户端
- **定义位置**: `src/client/api.ts` (第134-136行)
- **客户端名称**: `monitorStatsClient`
- **类型定义**: `MonitorStatsRoutes`

### 5.2 相关客户端
- **监控数据客户端**: `monitorDataClient`
- **监控地图客户端**: `amonitorMapClient`

## 6. 类型定义文件

### 6.1 监控类型定义
- **文件**: `src/share/monitorTypes.ts`
- **包含类型**:
  - `MetricType`: 监控指标类型枚举
  - 各种监控相关的接口定义

### 6.2 响应类型
- **监控统计响应**: `MonitorStatsItem` 接口
- **监控数据响应**: `MonitorDataResponse` 类型

## 7. 数据库查询分析

### 7.1 统计查询逻辑
- **位置**: `device-monitor-data.service.ts` 第203-268行
- **查询特点**:
  - 按5分钟时间分组
  - 关联设备实例和设备类型
  - 统计异常设备数量
  - 使用原生SQL查询构建

### 7.2 时间处理
- **开始时间**: `time_group` 字段 (UTC时间)
- **结束时间**: `time_group + 4分钟` (UTC时间)
- **时间格式**: `YYYY-MM-DD HH:mm:ss`

## 10. 相关功能链接

### 10.1 巡检功能
- **巡检结果API**: `src/server/api/inspection-results/`
- **巡检任务API**: `src/server/api/inspections/`

### 10.2 告警功能
- **告警规则API**: `src/server/api/alert-rules/`
- **告警记录API**: `src/server/api/alerts/`