生产管理系统前端 - 更新瓦力提交的产品原型到参考目录

This commit is contained in:
2025-10-23 10:57:14 +08:00
parent 83523dad64
commit 28229ce795
354 changed files with 147599 additions and 7892 deletions

View File

@@ -0,0 +1,446 @@
# 动态农机分类使用指南
## 🎯 功能说明
系统现已支持使用手动添加的农机类型和使用场景数据。您在"分类管理"中添加的自定义类型和场景会自动出现在以下位置:
### 1. 农机档案表单
**位置**: 新增/编辑农机时
**功能**:
- ✅ "农机类型"下拉框会显示所有自定义类型
- ✅ "使用场景"下拉框会显示所有自定义场景
- ✅ 实时同步,添加后立即可用
### 2. 农机列表筛选
**位置**: 农机档案列表页面
**功能**:
- ✅ 筛选栏的"农机类型"选择器包含所有自定义类型
- ✅ 筛选栏的"使用场景"选择器包含所有自定义场景
- ✅ 支持按任意分类/标签组合进行过滤
---
## 🚀 完整使用流程
### 步骤1: 添加自定义农机类型
```
1. 进入"农机档案"页面
2. 点击"分类管理"按钮
3. 切换到"农机类型"标签
4. 点击"新增类型"
5. 填写类型信息:
├─ 类型编码: YJSJ
├─ 类型名称: 育秧设备
└─ 描述: 用于水稻育秧作业
6. 点击"保存"
✅ 新类型已添加!
```
### 步骤2: 在表单中使用新类型
```
1. 点击"新增农机"按钮
2. 在"农机类型"下拉框中
✅ 看到"育秧设备"选项
3. 选择"育秧设备"
4. 继续填写其他信息
5. 保存农机档案
✅ 农机已归类到"育秧设备"
```
### 步骤3: 按新类型筛选
```
1. 在农机列表页面
2. 点击"农机类型"筛选器
✅ 看到"育秧设备"选项
3. 选择"育秧设备"
✅ 列表只显示该类型的设备!
```
---
## 📊 数据同步机制
### 自动同步时机
**农机表单**:
```typescript
// 每次打开表单时,自动从 localStorage 加载最新数据
useEffect(() => {
loadMachineryTypes(); // 加载农机类型
loadUsageScenarios(); // 加载使用场景
}, [open]);
```
**农机列表**:
```typescript
// 当设备列表更新时,重新加载分类数据
useEffect(() => {
loadMachineryTypes(); // 加载农机类型
loadUsageScenarios(); // 加载使用场景
}, [machinery]);
```
### 数据存储
```
localStorage 存储键:
├─ machinery_types → 农机类型数据
└─ usage_scenarios → 使用场景数据
```
---
## 🔄 数据合并策略
系统会将预置数据和自定义数据合并:
### 农机类型合并
```typescript
// 预置类型
const defaultTypes = ['耕地机械', '播种机械', '收获机械',
'植保机械', '灌溉机械', '运输机械', '其他'];
// 自定义类型(从分类管理添加)
const customTypes = ['育秧设备', '烘干设备', '加工机械'];
// 最终显示(去重)
const allTypes = [...customTypes, '其他'];
// 结果: ['育秧设备', '烘干设备', '加工机械', ... , '其他']
```
### 使用场景合并
```typescript
// 预置场景
const defaultScenarios = ['旱地', '水田', '通用', '其他'];
// 自定义场景(从分类管理添加)
const customScenarios = ['耕地作业', '播种作业', '植保作业',
'收获作业', '灌溉作业', '运输作业'];
// 最终显示(去重)
const allScenarios = [...customScenarios, '其他'];
// 结果: ['耕地作业', '播种作业', ... , '其他']
```
---
## 🎨 界面效果
### 农机表单中的下拉框
**农机类型选择器**:
```
┌─────────────────────────┐
│ 农机类型 * │
├─────────────────────────┤
│ [选择类型 ▼] │
│ │
│ • 拖拉机 │
│ • 收割机 │
│ • 播种机 │
│ • 植保机 │
│ • 育秧设备 ← 自定义 │
│ • 烘干设备 ← 自定义 │
│ • 其他 │
└─────────────────────────┘
提示: 可在"分类管理"中添加自定义类型
```
**使用场景选择器**:
```
┌─────────────────────────┐
│ 使用场景 * │
├─────────────────────────┤
│ [选择场景 ▼] │
│ │
│ • 耕地作业 ← 自定义 │
│ • 播种作业 ← 自定义 │
│ • 植保作业 ← 自定义 │
│ • 收获作业 ← 自定义 │
│ • 灌溉作业 ← 自定义 │
│ • 运输作业 ← 自定义 │
│ • 其他 │
└─────────────────────────┘
提示: 可在"分类管理"中添加自定义场景
```
### 列表页面的筛选器
```
┌──────────────────────────────────────────────────────────┐
│ [搜索框...] [农机类型 ▼] [使用场景 ▼] [设备状态 ▼] [清空] │
│ │
│ ┌──────────────┐ ┌──────────────┐ │
│ │ 全部类型 │ │ 全部场景 │ │
│ │ 拖拉机 │ │ 耕地作业 ✓ │ ← 支持自定义分类 │
│ │ 收割机 │ │ 播种作业 │ │
│ │ 播种机 │ │ 植保作业 │ │
│ │ 育秧设备 ✓ │ │ 收获作业 │ │
│ │ 烘干设备 │ │ 灌溉作业 │ │
│ └──────────────┘ └──────────────┘ │
└──────────────────────────────────────────────────────────┘
```
---
## 💡 使用技巧
### 技巧1: 批量设置类型
如果需要给多台设备设置相同的类型:
```
1. 先在分类管理中添加类型
2. 批量编辑设备时统一选择
3. 避免重复创建相似类型
```
### 技巧2: 场景关联
建议将类型和场景关联使用:
```
类型: 拖拉机
场景: 耕地作业、运输作业
类型: 播种机
场景: 播种作业
类型: 收割机
场景: 收获作业
```
### 技巧3: 统一命名规范
保持命名一致性:
```
✅ 推荐:
- 耕地作业、播种作业、收获作业
- 拖拉机、播种机、收割机
❌ 避免:
- 耕地、耕地作业、田间耕地
- 拖拉机、拖拉机设备、拖拉机械
```
---
## 🔍 高级筛选
### 组合筛选示例
**示例1: 筛选旱地使用的拖拉机**
```
农机类型: 拖拉机
使用场景: 旱地
设备状态: 正常
```
**示例2: 筛选需要维护的播种设备**
```
农机类型: 播种机
设备状态: 待维护
```
**示例3: 按标签和场景筛选**
```
使用场景: 耕地作业
标签: 重点设备
```
### 筛选逻辑
```typescript
// 所有筛选条件为 AND 关系
if (类型匹配 && 场景匹配 && 状态匹配 && 标签匹配 && 关键词匹配) {
显示该设备
}
```
---
## 📈 统计分析
### 按自定义分类统计
在"分类管理" → "统计分析"页面可以看到:
```
农机类型分布:
├─ 拖拉机 ████████████ 12台 (32%)
├─ 播种机 ████████ 8台 (21%)
├─ 收割机 ██████ 6台 (16%)
├─ 育秧设备 ████ 4台 (11%) ← 自定义
└─ 烘干设备 ██ 2台 (5%) ← 自定义
使用场景分布:
├─ 耕地作业 ██████████████ 15台 (39%) ← 自定义
├─ 播种作业 ██████████ 10台 (26%) ← 自定义
├─ 收获作业 ████████ 8台 (21%) ← 自定义
└─ 运输作业 ████ 5台 (13%) ← 自定义
```
---
## ⚠️ 注意事项
### 1. 类型删除影响
```
⚠️ 删除类型前检查:
- 确认没有设备使用该类型
- 系统会显示关联设备数量
- 建议先修改设备类型再删除
```
### 2. 命名冲突
```
⚠️ 避免重复命名:
- 系统不会阻止重复名称
- 但会导致混淆
- 建议使用唯一的名称
```
### 3. 数据一致性
```
⚠️ 保持数据准确:
- 定期检查分类是否合理
- 清理不再使用的分类
- 统一团队的分类标准
```
---
## 🔧 故障排查
### 问题1: 新类型不显示
**症状**: 添加了类型但表单中看不到
**解决方案**:
```
1. 关闭并重新打开表单
2. 刷新浏览器页面
3. 检查浏览器控制台是否有错误
4. 确认 localStorage 中有数据
```
### 问题2: 筛选不生效
**症状**: 选择类型筛选但列表不更新
**解决方案**:
```
1. 点击"清空筛选"重置
2. 刷新页面
3. 检查设备数据中的类型字段是否匹配
```
### 问题3: 数据丢失
**症状**: 添加的类型突然消失
**解决方案**:
```
1. 检查是否清除了浏览器数据
2. localStorage 数据在清除缓存时会丢失
3. 建议定期导出数据备份(未来功能)
```
---
## 📱 移动端支持
系统在移动设备上同样支持动态分类:
```
✅ 触摸选择类型和场景
✅ 下拉菜单自适应屏幕
✅ 筛选器响应式布局
```
---
## 🔮 未来增强
计划中的功能:
### 1. 批量操作
```
- [ ] 批量修改设备类型
- [ ] 批量修改使用场景
- [ ] 导入时自动匹配分类
```
### 2. 智能推荐
```
- [ ] 根据设备名称智能推荐类型
- [ ] 根据型号推荐使用场景
- [ ] 学习用户的分类习惯
```
### 3. 数据同步
```
- [ ] 云端存储分类数据
- [ ] 团队共享分类体系
- [ ] 跨设备同步
```
---
## 📞 技术支持
### 常见问题
**Q: 可以修改预置的类型吗?**
A: 预置类型不可修改,但你可以添加自定义类型。
**Q: 删除类型会删除设备吗?**
A: 不会,但会显示警告提示该类型下的设备数量。
**Q: 数据存储在哪里?**
A: 存储在浏览器的 localStorage 中。
**Q: 会与其他用户共享吗?**
A: 目前是本地存储,不同浏览器/用户独立。
---
## 🎉 总结
动态分类功能让您可以:
✅ 自由定义农机类型和使用场景
✅ 表单中实时使用自定义分类
✅ 灵活筛选和统计分析
✅ 适应不同的业务需求
现在开始使用吧!
```
农机档案 → 分类管理 → 添加分类 → 在表单中使用 🚀
```
---
**文档版本**: v1.0.0
**更新时间**: 2025-10-16
**适用版本**: 智慧农业生产管理系统 v2.0+
---
## 📚 相关文档
- [农机分类管理功能说明](/components/machinery/CLASSIFICATION_MANAGEMENT_README.md)
- [分类管理集成总结](/CLASSIFICATION_INTEGRATION_SUMMARY.md)
- [快速上手指南](/CLASSIFICATION_QUICK_START.md)