生产管理系统前端 - 更新瓦力提交的产品原型到参考目录
This commit is contained in:
518
src/FAULT_DIAGNOSIS_UPDATE.md
Normal file
518
src/FAULT_DIAGNOSIS_UPDATE.md
Normal file
@@ -0,0 +1,518 @@
|
||||
# ✅ 故障诊断与预警功能 - 优化更新
|
||||
|
||||
## 🎯 更新概述
|
||||
|
||||
根据用户反馈,对故障诊断与预警功能进行了重要优化:
|
||||
|
||||
### ✨ 新增功能
|
||||
|
||||
1. **预警规则管理** ⭐ (新增)
|
||||
2. **预警记录处理** (优化)
|
||||
3. **简化处理状态** (优化)
|
||||
|
||||
---
|
||||
|
||||
## 📋 更新内容
|
||||
|
||||
### 1️⃣ 新增预警规则管理
|
||||
|
||||
#### 功能位置
|
||||
```
|
||||
远程诊断与故障预警 → 预警规则
|
||||
```
|
||||
|
||||
#### 核心功能
|
||||
|
||||
**规则配置**:
|
||||
- ✅ 规则名称和描述
|
||||
- ✅ 所属分类(8大系统)
|
||||
- ✅ 预警级别(提示/警告/错误/严重)
|
||||
- ✅ 触发条件配置
|
||||
- ✅ 推送渠道设置
|
||||
- ✅ 自动创建任务
|
||||
- ✅ 启用/禁用开关
|
||||
|
||||
**触发条件**:
|
||||
```typescript
|
||||
{
|
||||
sensorKey: 'coolant_temp', // 监测参数
|
||||
threshold: {
|
||||
type: 'greater', // 条件类型
|
||||
value: 105, // 阈值
|
||||
duration: 30 // 持续时间(秒)
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
**条件类型**:
|
||||
- 大于 (>)
|
||||
- 小于 (<)
|
||||
- 等于 (=)
|
||||
- 范围内 (min~max)
|
||||
|
||||
**监测参数**:
|
||||
- 发动机转速 (RPM)
|
||||
- 冷却液温度 (℃)
|
||||
- 机油压力 (kPa)
|
||||
- 燃油液位 (%)
|
||||
- 液压压力 (MPa)
|
||||
- 电池电压 (V)
|
||||
- 振动等级
|
||||
- 皮带张紧度
|
||||
|
||||
**推送渠道**:
|
||||
- ✅ 站内信
|
||||
- ✅ 短信通知
|
||||
- ✅ 邮件通知
|
||||
- ✅ 推送通知
|
||||
|
||||
**自动任务**:
|
||||
- 触发预警时自动创建维修任务
|
||||
- 便于快速响应和跟踪
|
||||
|
||||
#### 界面展示
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────┐
|
||||
│ 预警规则管理 [新增规则] │
|
||||
├─────────────────────────────────────────┤
|
||||
│ [规则总数] [已启用] [已禁用] [严重级别] │
|
||||
├─────────────────────────────────────────┤
|
||||
│ 状态 | 规则名称 | 级别 | 触发条件 | 操作│
|
||||
│ [✓] | 温度过高 | 严重 | 温度>105℃ | 编辑│
|
||||
│ [✓] | 油压过低 | 错误 | 压力<150 | 编辑│
|
||||
│ [ ] | 燃油提醒 | 警告 | 液位<20% | 编辑│
|
||||
└─────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
#### 默认规则
|
||||
|
||||
系统已预设3条常用规则:
|
||||
|
||||
1. **发动机温度过高预警**
|
||||
- 级别: 严重
|
||||
- 条件: 冷却液温度 > 105℃,持续30秒
|
||||
- 推送: 站内信 + 短信 + 推送
|
||||
- 自动创建任务: 是
|
||||
|
||||
2. **机油压力过低预警**
|
||||
- 级别: 错误
|
||||
- 条件: 机油压力 < 150kPa,持续10秒
|
||||
- 推送: 站内信 + 短信
|
||||
|
||||
3. **燃油液位过低提醒**
|
||||
- 级别: 警告
|
||||
- 条件: 燃油液位 < 20%
|
||||
- 推送: 站内信 + 推送
|
||||
|
||||
---
|
||||
|
||||
### 2️⃣ 简化处理状态
|
||||
|
||||
#### 状态变更
|
||||
|
||||
**原状态**:
|
||||
```
|
||||
待处理 → 处理中 → 已解决
|
||||
```
|
||||
|
||||
**新状态**:
|
||||
```
|
||||
待处理 → 已处理
|
||||
```
|
||||
|
||||
#### 变更原因
|
||||
|
||||
- ❌ 移除"处理中"状态,简化流程
|
||||
- ✅ 只保留"待处理"和"已处理"两个状态
|
||||
- ✅ 处理流程更清晰直观
|
||||
|
||||
#### 状态说明
|
||||
|
||||
| 状态 | 说明 | 颜色 |
|
||||
|------|------|------|
|
||||
| 待处理 | 等待处理的预警 | 🟠 橙色 |
|
||||
| 已处理 | 已完成处理的预警 | 🟢 绿色 |
|
||||
| 已忽略 | 已忽略的预警 | ⚪ 灰色 |
|
||||
|
||||
---
|
||||
|
||||
### 3️⃣ 预警记录处理优化
|
||||
|
||||
#### 功能位置
|
||||
```
|
||||
远程诊断与故障预警 → 预警记录
|
||||
```
|
||||
|
||||
#### 处理流程
|
||||
|
||||
**步骤1: 查看详情**
|
||||
```
|
||||
点击"详情" → 查看3个Tab:
|
||||
- 预警详情(故障码、诊断、原因)
|
||||
- 解决方案(分步骤指导)
|
||||
- 知识库(相关文章)
|
||||
```
|
||||
|
||||
**步骤2: 处理预警**
|
||||
```
|
||||
1. 填写处理备注
|
||||
2. 点击"标记已处理"
|
||||
3. 系统记录处理人、处理时间
|
||||
```
|
||||
|
||||
**步骤3: 查看处理记录**
|
||||
```
|
||||
已处理的预警显示:
|
||||
- 处理人员
|
||||
- 处理时间
|
||||
- 处理备注
|
||||
```
|
||||
|
||||
#### 统计数据
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────┐
|
||||
│ [总预警] [待处理] [已处理] [严重] [预测]│
|
||||
│ 15 8 7 2 3 │
|
||||
└─────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🎨 界面结构
|
||||
|
||||
### Tab导航
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────┐
|
||||
│ 远程诊断与故障预警 │
|
||||
├─────────────────────────────────────────┤
|
||||
│ [预警规则] [预警记录] [健康评估] [参数监测]│
|
||||
└─────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
### 预警规则 Tab
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────┐
|
||||
│ 预警规则管理 [新增规则] │
|
||||
├─────────────────────────────────────────┤
|
||||
│ 统计卡片 × 4 │
|
||||
├─────────────────────────────────────────┤
|
||||
│ 规则列表表格 │
|
||||
│ - 启用/禁用开关 │
|
||||
│ - 规则信息 │
|
||||
│ - 触发条件 │
|
||||
│ - 推送渠道 │
|
||||
│ - 编辑/删除操作 │
|
||||
└─────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
### 预警记录 Tab
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────┐
|
||||
│ 预警记录 [推送设置] │
|
||||
├─────────────────────────────────────────┤
|
||||
│ 统计卡片 × 5 │
|
||||
├─────────────────────────────────────────┤
|
||||
│ 预警列表表格 │
|
||||
│ - 级别标签 │
|
||||
│ - 农机名称 │
|
||||
│ - 故障码 │
|
||||
│ - 状态(待处理/已处理) │
|
||||
│ - 详情/知识库/发送操作 │
|
||||
└─────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📊 数据流程
|
||||
|
||||
### 预警触发流程
|
||||
|
||||
```
|
||||
1. 传感器数据采集
|
||||
↓
|
||||
2. 匹配预警规则
|
||||
- 检查规则是否启用
|
||||
- 检查触发条件
|
||||
- 检查持续时间
|
||||
↓
|
||||
3. 生成预警记录
|
||||
- 状态: 待处理
|
||||
- 记录检测时间
|
||||
↓
|
||||
4. 多渠道推送
|
||||
- 根据规则配置推送
|
||||
- 站内信/短信/邮件/推送
|
||||
↓
|
||||
5. 自动创建任务(可选)
|
||||
- 如果规则开启了自动任务
|
||||
- 创建维修任务
|
||||
```
|
||||
|
||||
### 预警处理流程
|
||||
|
||||
```
|
||||
1. 查看预警列表
|
||||
↓
|
||||
2. 点击"详情"查看
|
||||
- 预警详情
|
||||
- 解决方案
|
||||
- 知识库文章
|
||||
↓
|
||||
3. 填写处理备注
|
||||
↓
|
||||
4. 点击"标记已处理"
|
||||
↓
|
||||
5. 系统记录
|
||||
- 状态: 已处理
|
||||
- 处理人: 当前用户
|
||||
- 处理时间: 当前时间
|
||||
- 处理备注
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🔧 技术实现
|
||||
|
||||
### 新增文件
|
||||
|
||||
1. **`/components/machinery/fault/AlertRuleManagement.tsx`** (600+行)
|
||||
- 预警规则管理组件
|
||||
- CRUD操作
|
||||
- 规则配置表单
|
||||
|
||||
### 更新文件
|
||||
|
||||
2. **`/components/machinery/fault/FaultWarning.tsx`** (700+行)
|
||||
- 简化状态为"待处理"和"已处理"
|
||||
- 优化处理流程
|
||||
- 添加处理记录显示
|
||||
|
||||
3. **`/components/machinery/FaultDiagnosis.tsx`**
|
||||
- 添加Tab导航
|
||||
- 集成预警规则和预警记录
|
||||
|
||||
4. **`/types/equipment.ts`**
|
||||
- 更新状态类型定义
|
||||
- 移除"处理中"状态
|
||||
|
||||
### 数据存储
|
||||
|
||||
```typescript
|
||||
// 预警规则存储
|
||||
localStorage.setItem('smart_agriculture_alert_rules', JSON.stringify(rules));
|
||||
|
||||
// 预警记录存储
|
||||
localStorage.setItem('smart_agriculture_faults', JSON.stringify(faults));
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📝 使用示例
|
||||
|
||||
### 示例1: 创建温度预警规则
|
||||
|
||||
```typescript
|
||||
{
|
||||
name: '发动机温度过高预警',
|
||||
category: '冷却系统',
|
||||
level: 'critical',
|
||||
sensorKey: 'coolant_temp',
|
||||
threshold: {
|
||||
type: 'greater',
|
||||
value: 105,
|
||||
duration: 30
|
||||
},
|
||||
pushChannels: ['internal', 'sms', 'push'],
|
||||
autoCreateTask: true,
|
||||
enabled: true
|
||||
}
|
||||
```
|
||||
|
||||
**效果**: 当冷却液温度超过105℃并持续30秒时,自动触发严重预警,通过站内信、短信和推送通知,并自动创建维修任务。
|
||||
|
||||
### 示例2: 处理预警记录
|
||||
|
||||
```
|
||||
1. 进入"预警记录"Tab
|
||||
2. 找到待处理的预警
|
||||
3. 点击"详情"
|
||||
4. 查看解决方案和知识库
|
||||
5. 填写处理备注:
|
||||
"已检查冷却液液位,补充2L冷却液,
|
||||
检查水泵正常,散热器清洗完成"
|
||||
6. 点击"标记已处理"
|
||||
7. ✅ 完成
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ✅ 功能检查清单
|
||||
|
||||
### 预警规则管理
|
||||
|
||||
- [x] 新增规则
|
||||
- [x] 编辑规则
|
||||
- [x] 删除规则
|
||||
- [x] 启用/禁用规则
|
||||
- [x] 触发条件配置
|
||||
- [x] 推送渠道设置
|
||||
- [x] 自动创建任务
|
||||
- [x] 规则列表展示
|
||||
- [x] 统计数据
|
||||
|
||||
### 预警记录处理
|
||||
|
||||
- [x] 预警列表展示
|
||||
- [x] 状态筛选
|
||||
- [x] 查看详情
|
||||
- [x] 解决方案展示
|
||||
- [x] 知识库展示
|
||||
- [x] 标记已处理
|
||||
- [x] 处理备注
|
||||
- [x] 处理记录显示
|
||||
- [x] 多渠道推送
|
||||
|
||||
### 状态管理
|
||||
|
||||
- [x] 移除"处理中"状态
|
||||
- [x] 简化为"待处理"/"已处理"
|
||||
- [x] 类型定义更新
|
||||
- [x] 界面适配
|
||||
|
||||
---
|
||||
|
||||
## 🎯 核心改进
|
||||
|
||||
### 1. 灵活的规则配置
|
||||
|
||||
**原来**: 规则硬编码在代码中,难以修改
|
||||
|
||||
**现在**:
|
||||
- ✅ 可视化配置界面
|
||||
- ✅ 支持多种触发条件
|
||||
- ✅ 灵活的推送设置
|
||||
- ✅ 随时启用/禁用
|
||||
|
||||
### 2. 简化的处理流程
|
||||
|
||||
**原来**:
|
||||
```
|
||||
待处理 → 处理中 → 已解决
|
||||
```
|
||||
|
||||
**现在**:
|
||||
```
|
||||
待处理 → 已处理
|
||||
```
|
||||
|
||||
**优势**:
|
||||
- ✅ 流程更简洁
|
||||
- ✅ 操作更便捷
|
||||
- ✅ 状态更清晰
|
||||
|
||||
### 3. 完善的记录管理
|
||||
|
||||
**新增**:
|
||||
- ✅ 处理人员记录
|
||||
- ✅ 处理时间记录
|
||||
- ✅ 处理备注记录
|
||||
- ✅ 处理历史可追溯
|
||||
|
||||
---
|
||||
|
||||
## 📈 使用场景
|
||||
|
||||
### 场景1: 配置温度预警
|
||||
|
||||
```
|
||||
需求: 当发动机温度超过105℃时预警
|
||||
|
||||
操作:
|
||||
1. 进入"预警规则"
|
||||
2. 点击"新增规则"
|
||||
3. 填写:
|
||||
- 名称: 发动机温度过高预警
|
||||
- 级别: 严重
|
||||
- 参数: 冷却液温度
|
||||
- 条件: 大于
|
||||
- 阈值: 105
|
||||
- 持续: 30秒
|
||||
- 推送: 站内信+短信+推送
|
||||
- 自动任务: 启用
|
||||
4. 保存
|
||||
5. ✅ 完成
|
||||
```
|
||||
|
||||
### 场景2: 处理温度预警
|
||||
|
||||
```
|
||||
场景: 收到温度过高预警
|
||||
|
||||
操作:
|
||||
1. 进入"预警记录"
|
||||
2. 找到温度预警
|
||||
3. 点击"详情"
|
||||
4. 查看解决方案:
|
||||
- 立即停机
|
||||
- 检查冷却液
|
||||
- 检查水泵
|
||||
5. 执行维修操作
|
||||
6. 填写备注: "已补充冷却液,检查正常"
|
||||
7. 标记已处理
|
||||
8. ✅ 完成
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 💡 最佳实践
|
||||
|
||||
### 规则配置建议
|
||||
|
||||
1. **严重级别**: 使用短信和推送,确保及时响应
|
||||
2. **警告级别**: 使用站内信和推送,避免过度打扰
|
||||
3. **持续时间**: 设置合理值,避免频繁误报
|
||||
4. **自动任务**: 仅对严重故障启用
|
||||
|
||||
### 处理流程建议
|
||||
|
||||
1. **及时处理**: 尽快处理待处理的预警
|
||||
2. **详细备注**: 记录详细的处理过程
|
||||
3. **参考知识库**: 查看标准解决方案
|
||||
4. **经验总结**: 将处理经验添加到知识库
|
||||
|
||||
---
|
||||
|
||||
## 🎉 总结
|
||||
|
||||
### ✅ 主要成果
|
||||
|
||||
1. **预警规则管理**: 可视化配置,灵活管理
|
||||
2. **处理流程优化**: 简化状态,提升效率
|
||||
3. **记录可追溯**: 完整记录处理过程
|
||||
|
||||
### 📊 功能对比
|
||||
|
||||
| 功能 | 更新前 | 更新后 |
|
||||
|------|--------|--------|
|
||||
| 规则配置 | ❌ 硬编码 | ✅ 可视化 |
|
||||
| 处理状态 | 3个状态 | 2个状态 |
|
||||
| 处理记录 | ❌ 无 | ✅ 完整 |
|
||||
| 自动任务 | ❌ 无 | ✅ 支持 |
|
||||
|
||||
### 🚀 下一步
|
||||
|
||||
- [ ] 规则批量导入导出
|
||||
- [ ] 预警趋势分析
|
||||
- [ ] 预警统计报表
|
||||
- [ ] 移动端适配
|
||||
|
||||
---
|
||||
|
||||
**更新时间**: 2025-10-17
|
||||
**版本**: v2.0
|
||||
**状态**: ✅ **已完成上线**
|
||||
Reference in New Issue
Block a user