<!--
 * @Author: donghao donghao@supervision.ltd
 * @Date: 2025-03-11 14:38:18
 * @LastEditors: donghao donghao@supervision.ltd
 * @LastEditTime: 2025-03-11 15:21:43
 * @FilePath: \5G-Loading-Bay-Web\dashboard.md
 * @Description: dashboard接口文档
-->
# 仪表盘模块(Dashboard)接口文档
## 一、设备状态分页列表接口
### 1.1 接口基本信息
- **接口地址**:/api/dashboard/device-status/list  
- **请求方式**:GET  
- **功能描述**:获取设备状态分页列表,支持条件查询

### 1.2 请求参数
| 参数名       | 类型   | 是否必填 | 说明                     | 示例值         |
|--------------|--------|----------|--------------------------|----------------|
| device_name  | string | 否       | 设备名称(模糊查询)     | "设备A"        |
| device_id    | string | 否       | 设备ID(精确查询)       | "DEV-001"      |
| page         | int    | 是       | 分页页码                 | 1              |
| page_size    | int    | 是       | 每页数量                 | 10             |

### 1.3 响应参数
| 参数名       | 类型     | 说明                     |
|--------------|----------|--------------------------|
| code         | int      | 响应码(200为成功)      |
| message      | string   | 响应信息                 |
| data         | object   | 数据体                   |
| ├─ total     | int      | 总记录数                 |
| ├─ list      | array    | 设备状态列表             |
| └─ ├─ device_name | string | 设备名称               |
| └─ ├─ device_id   | string | 设备ID                 |
| └─ ├─ device_location | string | 设备位置          |
| └─ ├─ device_status | int    | 设备状态(0=在线,1=离线,2=故障) |
| └─ └─ real_time_video_url | string | 实时视频路径       |

### 1.4 响应示例
```json
{
  "code": 200,
  "message": "获取成功",
  "data": {
    "total": 50,
    "list": [
      {
        "device_name": "工业机器人A",
        "device_id": "DEV-001",
        "device_location": "工厂1楼车间",
        "device_status": 0,
        "real_time_video_url": "https://xxx.com/real_time_001.mp4"
      }
    ]
  }
}
```
![alt text](image-1.png)

## 二、设备历史视频列表接口  
### 2.1 接口基本信息  
- **接口地址**:/api/dashboard/device-history-video/list  
- **请求方式**:GET  
- **功能描述**:根据设备 ID 查询历史视频列表,支持日期时间过滤  

### 2.2 请求参数  
| 参数名     | 类型   | 是否必填 | 说明                          | 示例值         |  
|------------|--------|----------|-----------------------------|----------------|  
| device_id  | string | 是       | 设备 ID(关联设备详情)       | "DEV-001"      |  
| start_time | string | 否       | 开始时间(格式:YYYY-MM-DD) | "2025-03-01"   |  
| end_time   | string | 否       | 结束时间(格式:YYYY-MM-DD) | "2025-03-31"   |  

### 2.3 响应参数  
| 参数名       | 类型     | 说明                              |  
|--------------|----------|-----------------------------------|  
| code         | int      | 响应码(200 为成功)              |  
| message      | string   | 响应信息                          |  
| data         | object   | 数据体                            |  
| ├─ total     | int      | 总记录数                          |  
| ├─ list      | array    | 历史视频列表                      |  
| └─ ├─ video_url   | string | 历史视频路径                      |  
| └─ └─ record_time | string | 视频记录时间(格式:YYYvY-MM-DD HH:MM:SS) |  

### 2.4 响应示例  
```json  
{  
  "code": 200,  
  "message": "获取成功",  
  "data": {  
    "total": 15,  
    "list": [  
      {  
        "video_url": "https://xxx.com/history_001.mp4",  
        "record_time": "2025-03-10 14:30:00"  
      }  
    ]  
  }  
}  
```
![alt text](image-2.png)

# 撑杆监测模块(Pole Monitor)接口文档  

## 一、撑杆监测分页列表接口  
### 1.1 接口基本信息  
- **接口地址**:/api/pole-monitor/list  
- **请求方式**:GET  
- **功能描述**:获取撑杆监测分页列表,支持多条件筛选  

### 1.2 请求参数  
| 参数名       | 类型    | 是否必填 | 说明                          | 示例值         |  
|--------------|---------|----------|-----------------------------|----------------|  
| carNo        | string  | 否       | 车号(精确/模糊查询)          | "JZ20250301"   |  
| carType      | string  | 否       | 车型                          | "货车"         |  
| carriageNo   | string  | 否       | 车厢号(精确查询)             | "C001"         |  
| warnType     | string  | 否       | 告警类型(如:倾斜、断裂)      | "倾斜"         |  
| faultType    | string  | 否       | 故障类型(如:机械故障、电气故障) | "机械故障"     |  
| level        | int     | 否       | 等级(1-3,数值越大越严重)     | 2              |  
| review       | boolean | 否       | 复核状态(true=已复核,false=未复核) | true           |  
| date         | string  | 否       | 监测日期(格式:YYYY-MM-DD)     | "2025-03-10"   |  
| page         | int     | 是       | 分页页码                      | 1              |  
| page_size    | int     | 是       | 每页数量                      | 10             |  

### 1.3 响应参数  
| 参数名           | 类型     | 说明                     |  
|------------------|----------|--------------------------|  
| code             | int      | 响应码(200为成功)      |  
| message          | string   | 响应信息                 |  
| data             | object   | 数据体                   |  
| ├─ total         | int      | 总记录数                 |  
| ├─ list          | array    | 撑杆监测列表             |  
| └─ ├─ id         | string   | 唯一标识                 |  
| └─ ├─ carNo      | string   | 车号                     |  
| └─ ├─ carType    | string   | 车型                     |  
| └─ ├─ carriageNo | string   | 车厢号                   |  
| └─ ├─ warnType   | string   | 告警类型                 |  
| └─ ├─ faultType  | string   | 故障类型                 |  
| └─ ├─ level      | int      | 等级(1-3)              |  
| └─ ├─ review     | boolean  | 复核状态                 |  
| └─ └─ date       | string   | 监测时间(格式:YYYY-MM-DD HH:MM:SS) |  

### 1.4 响应示例  
```json  
{  
  "code": 200,  
  "message": "获取成功",  
  "data": {  
    "total": 200,  
    "list": [  
      {  
        "id": "PM001",  
        "carNo": "JZ20250301",  
        "carType": "货车",  
        "carriageNo": "C001",  
        "warnType": "倾斜",  
        "faultType": "机械故障",  
        "level": 2,  
        "review": false,  
        "date": "2025-03-10 09:00:00"  
      }  
    ]  
  }  
}  
```
![alt text](image-3.png)

## 二、撑杆监测详情接口  
### 2.1 接口基本信息  
- **接口地址**:/api/pole-monitor/detail/{id}  
- **请求方式**:GET  
- **功能描述**:根据监测数据 ID 获取详细信息,包含图文列表及监测数据  

### 2.2 请求参数  
| 参数名 | 类型   | 是否必填 | 说明                     | 示例值       |  
|--------|--------|----------|--------------------------|--------------|  
| id     | string | 是       | 监测数据唯一标识(关联分页列表 ID) | "PM001"      |  

### 2.3 响应参数  
| 参数名               | 类型     | 说明                     |  
|----------------------|----------|--------------------------|  
| code                 | int      | 响应码(200为成功)      |  
| message              | string   | 响应信息                 |  
| data                 | object   | 数据体                   |  
| ├─ id               | string   | 监测数据 ID              |  
| ├─ carNo            | string   | 车号                     |  
| ├─ carType          | string   | 车型                     |  
| ├─ carriageNo       | string   | 车厢号                   |  
| ├─ warnType         | string   | 告警类型                 |  
| ├─ faultType        | string   | 故障类型                 |  
| ├─ level            | int      | 等级(1-3)              |  
| ├─ review           | boolean  | 复核状态                 |  
| ├─ date             | string   | 监测时间(格式:YYYY-MM-DD HH:MM:SS) |  
| ├─ image_list       | array    | 监测图文列表             |  
| └─ ├─ image_name    | string   | 图片名称                 |  
| └─ ├─ image_url     | string   | 图片路径                 |  
| └─ ├─ capture_time  | string   | 图片拍摄时间(格式:YYYY-MM-DD HH:MM:SS) |  
| └─ ├─ length        | float    | 撑杆长度(单位:米)     |  
| └─ ├─ width         | float    | 撑杆宽度(单位:米)     |  
| └─ ├─ height        | float    | 撑杆高度(单位:米)     |  
| └─ └─ weight        | float    | 撑杆重量(单位:千克)   |  

### 2.4 响应示例  
```json  
{  
  "code": 200,  
  "message": "获取成功",  
  "data": {  
    "id": "PM001",  
    "carNo": "JZ20250301",  
    "carType": "货车",  
    "carriageNo": "C001",  
    "warnType": "倾斜",  
    "faultType": "机械故障",  
    "level": 2,  
    "review": false,  
    "date": "2025-03-10 09:00:00",  
    "image_list": [  
      {  
        "image_name": "pole_001.jpg",  
        "image_url": "https://xxx.com/pole_001.jpg",  
        "capture_time": "2025-03-10 09:01:30",  
        "length": 5.2,  
        "width": 0.3,  
        "height": 0.3,  
        "weight": 120.5  
      }  
    ]  
  }  
}  
```
![alt text](image-4.png)

# 外观监测模块(Appearance Monitor)接口文档  
## 一、外观监测分页列表接口  
### 1.1 接口基本信息  
- **接口地址**:/api/appearance-monitor/list  
- **请求方式**:GET  
- **功能描述**:获取外观监测分页列表,支持多条件筛选  

### 1.2 请求参数  
| 参数名       | 类型    | 是否必填 | 说明                          | 示例值         |  
|--------------|---------|----------|-----------------------------|----------------|  
| carNo        | string  | 否       | 车号(精确/模糊查询)          | "JZ20250301"   |  
| carType      | string  | 否       | 车型                          | "货车"         |  
| carriageNo   | string  | 否       | 车厢号(精确查询)             | "C001"         |  
| warnType     | string  | 否       | 告警类型(如:倾斜、断裂)      | "倾斜"         |  
| faultType    | string  | 否       | 故障类型(如:机械故障、电气故障) | "机械故障"     |  
| level        | int     | 否       | 等级(1-3,数值越大越严重)     | 2              |  
| review       | boolean | 否       | 复核状态(true=已复核,false=未复核) | true           |  
| date         | string  | 否       | 监测日期(格式:YYYY-MM-DD)     | "2025-03-10"   |  
| page         | int     | 是       | 分页页码                      | 1              |  
| page_size    | int     | 是       | 每页数量                      | 10             |  

### 1.3 响应参数  
| 参数名           | 类型     | 说明                     |  
|------------------|----------|--------------------------|  
| code             | int      | 响应码(200为成功)      |  
| message          | string   | 响应信息                 |  
| data             | object   | 数据体                   |  
| ├─ total         | int      | 总记录数                 |  
| ├─ list          | array    | 外观监测列表             |  
| └─ ├─ id         | string   | 唯一标识                 |  
| └─ ├─ carNo      | string   | 车号                     |  
| └─ ├─ carType    | string   | 车型                     |  
| └─ ├─ carriageNo | string   | 车厢号                   |  
| └─ ├─ warnType   | string   | 告警类型                 |  
| └─ ├─ faultType  | string   | 故障类型                 |  
| └─ ├─ level      | int      | 等级(1-3)              |  
| └─ ├─ review     | boolean  | 复核状态                 |  
| └─ └─ date       | string   | 监测时间(格式:YYYY-MM-DD HH:MM:SS) |  

### 1.4 响应示例  
```json  
{  
  "code": 200,  
  "message": "获取成功",  
  "data": {  
    "total": 200,  
    "list": [  
      {  
        "id": "PM001",  
        "carNo": "JZ20250301",  
        "carType": "货车",  
        "carriageNo": "C001",  
        "warnType": "倾斜",  
        "faultType": "机械故障",  
        "level": 2,  
        "review": false,  
        "date": "2025-03-10 09:00:00"  
      }  
    ]  
  }  
}  
```
![alt text](image-5.png)

# 外观监测模块(Appearance Monitor)接口文档  

## 一、外观监测详情接口  
### 1.1 接口基本信息  
- **接口地址**:/api/appearance-monitor/detail/{id}  
- **请求方式**:GET  
- **功能描述**:根据监测数据 ID 获取详细信息,包含视频列表及监测数据  

### 1.2 请求参数  
| 参数名 | 类型   | 是否必填 | 说明                     | 示例值       |  
|--------|--------|----------|--------------------------|--------------|  
| id     | string | 是       | 监测数据唯一标识(关联列表 ID) | "AM001"      |  

### 1.3 响应参数  
| 参数名               | 类型     | 说明                     |  
|----------------------|----------|--------------------------|  
| code                 | int      | 响应码(200为成功)      |  
| message              | string   | 响应信息                 |  
| data                 | object   | 数据体                   |  
| ├─ id               | string   | 监测数据 ID              |  
| ├─ carNo            | string   | 车号                     |  
| ├─ carType          | string   | 车型                     |  
| ├─ carriageNo       | string   | 车厢号                   |  
| ├─ warnType         | string   | 告警类型                 |  
| ├─ faultType        | string   | 故障类型                 |  
| ├─ level            | int      | 等级(1-3)              |  
| ├─ review           | boolean  | 复核状态                 |  
| ├─ date             | string   | 监测时间(格式:YYYY-MM-DD HH:MM:SS) |  
| ├─ video_list       | array    | 监测视频列表             |  
| └─ ├─ video_name    | string   | 视频名称                 |  
| └─ ├─ video_url     | string   | 视频路径                 |  
| └─ ├─ capture_time  | string   | 视频拍摄时间(格式:YYYY-MM-DD HH:MM:SS) |  
| └─ ├─ length        | float    | 外观尺寸长度(单位:米) |  
| └─ ├─ width         | float    | 外观尺寸宽度(单位:米) |  
| └─ ├─ height        | float    | 外观尺寸高度(单位:米) |  
| └─ ├─ volume        | float    | 体积(单位:立方米)     |  
| └─ └─ weight        | float    | 重量(单位:千克)       |  

### 1.4 响应示例  
```json  
{  
  "code": 200,  
  "message": "获取成功",  
  "data": {  
    "id": "AM001",  
    "carNo": "JZ20250302",  
    "carType": "客车",  
    "carriageNo": "C002",  
    "warnType": "变形",  
    "faultType": "结构损伤",  
    "level": 3,  
    "review": true,  
    "date": "2025-03-10 10:00:00",  
    "video_list": [  
      {  
        "video_name": "appearance_001.mp4",  
        "video_url": "https://xxx.com/appearance_001.mp4",  
        "capture_time": "2025-03-10 10:02:00",  
        "length": 6.5,  
        "width": 2.8,  
        "height": 3.2,  
        "volume": 58.24,  
        "weight": 8500.0  
      }  
    ]  
  }  
}  
```
![alt text](image-6.png)