📜 负载管理拆卸历史功能优化
🎉 功能优化完成
农机负载管理 - 负载管理 模块拆卸历史功能已优化!
拆卸历史现在针对农机显示,更符合实际使用场景。
请清除浏览器缓存并刷新页面查看新功能!
⚠️ 重要变更
- ❌ 移除:设备详情对话框中的"拆卸历史"标签页
- ✅ 新增:农机设备管理中的"拆卸历史"标签页
- 🔄 逻辑调整:从"设备视角"改为"农机视角"
📊 新布局设计
┌──────────────┬────────────────────────────────────────────┐
│ 农机列表 │ 设备管理 - 拖拉机-001 [挂载设备] │
│ ──────── │ ──────────────────────────────────────── │
│ ┌────────┐ │ [当前挂载 (3)] [拆卸历史] ← 标签页切换 │
│ │拖拉机 │ │ ──────────────────────────────────────── │
│ │-001 ✓ │ │ │
│ │3设备 │ │ ┌─ 当前挂载标签页 ──────────────────────┐│
│ └────────┘ │ │ GPS定位器 | 在线 | 信号85% | 电量78% ││
│ │ │ ────────────────────────────────────── ││
│ ┌────────┐ │ │ 高清摄像头 | 在线 | 信号92% | 电量65% ││
│ │收割机 │ │ │ ────────────────────────────────────── ││
│ │-002 │ │ │ 油耗监测仪 | 在线 | 信号88% | 电量82% ││
│ │1设备 │ │ └───────────────────────────────────────┘│
│ └────────┘ │ │
│ │ ┌─ 拆卸历史标签页 ──────────────────────┐│
│ │ │ 共 8 条记录 ││
│ │ │ ││
│ │ │ 设备 | 挂载时间 | 卸载时间 | 时长 ││
│ │ │ ────────────────────────────────────── ││
│ │ │ GPS | 10-28... | (进行中) | 15.2h ││
│ │ │ 摄像 | 10-20... | 10-25... | 5.4天 ││
│ │ │ 油耗 | 09-15... | 09-20... | 3.2天 ││
│ │ └───────────────────────────────────────┘│
└──────────────┴────────────────────────────────────────────┘
🎯 功能定位调整
| 视角 |
之前(错误) |
现在(正确) |
| 数据维度 |
设备视角:某个设备在哪些农机上使用过 |
农机视角:某台农机使用过哪些设备 |
| 显示位置 |
设备详情对话框中 |
农机设备管理区域中 |
| 使用场景 |
查看设备的使用历史 |
管理农机的设备挂载记录 |
| 操作流程 |
选农机 → 选设备 → 查详情 → 看历史 |
选农机 → 切换到拆卸历史标签 |
✨ 新功能特性
- ✅ Tab布局:右侧区域使用Tab切换"当前挂载"和"拆卸历史"
- ✅ 数量显示:当前挂载标签页显示设备数量,如"当前挂载 (3)"
- ✅ 农机视角:显示该农机的所有设备挂载/卸载记录
- ✅ 历史记录:包括已卸载和正在挂载的所有记录
- ✅ 时长计算:自动计算每次挂载的时长
- ✅ 时间排序:按时间倒序,最新记录在最上面
- ✅ 完整信息:设备、时间、操作人、时长、状态、备注
📋 拆卸历史表格字段
| 字段 |
说明 |
示例 |
| 设备 |
设备名称和编号 |
GPS定位器 IOT-GPS-001 |
| 挂载时间 |
设备挂载的日期和时间 |
2024-10-28 09:30:00 |
| 挂载人 |
执行挂载操作的人员 |
张三 |
| 卸载时间 |
设备卸载的日期和时间 |
2024-10-28 17:30:00 或 "-"(未卸载) |
| 卸载人 |
执行卸载操作的人员 |
李四 或 "-"(未卸载) |
| 挂载时长 |
自动计算的挂载时长 |
15.2 小时(进行中) 5.4 天(129.5 小时) |
| 状态 |
已挂载或已卸载 |
已挂载 / 已卸载 |
| 备注 |
挂载时的备注说明 |
用于实时定位追踪 |
⏱️ 挂载时长计算
- 📊 进行中:从挂载时间到当前时间 → "15.2 小时(进行中)"
- 📊 小于24小时:已完成的挂载 → "8.5 小时"
- 📊 大于24小时:自动转换单位 → "5.4 天(129.5 小时)"
- 📊 精确计算:精确到小数点后1位
🔄 使用流程
步骤1:在左侧农机列表中选择一台农机
步骤2:右侧显示该农机的设备管理界面
步骤3:点击"当前挂载"标签页,查看正在使用的设备
步骤4:点击"拆卸历史"标签页,查看所有历史记录
步骤5:在表格中查看详细的挂载/卸载信息和时长
💡 应用场景
- 📊 设备管理:了解该农机使用过哪些设备
- 📊 时长统计:查看每个设备在该农机上的使用时长
- 📊 操作追溯:追溯每次挂载和卸载的操作人
- 📊 设备利用率:评估设备在该农机上的使用频率
- 📊 维护记录:为设备维护提供使用历史依据
- 📊 审计需求:满足农机设备使用记录的审计要求
🎨 界面优化
- ✅ Tab布局:清晰分离"当前挂载"和"拆卸历史"
- ✅ 数量提示:标签页显示当前挂载数量
- ✅ 表格展示:历史记录使用表格,信息一目了然
- ✅ 状态徽章:已挂载(绿色)、已卸载(灰色)
- ✅ 时间格式:日期和时间分两行显示
- ✅ 空状态:无历史记录时显示友好提示
- ✅ 备注显示:过长备注自动截断,悬停显示完整内容
- ✅ Dark模式:完美支持深色主题
🔧 技术实现
- ✅ 右侧区域改为Tab布局(Tabs组件)
- ✅ 2个TabsTrigger:"当前挂载"和"拆卸历史"
- ✅ 拆卸历史过滤:
machineryId === selectedMachineryId
- ✅ 时间倒序排序:按
createdAt 降序
- ✅ 时长计算函数:
calculateDuration()
- ✅ 设备信息关联:从
iotDevices 获取设备详情
- ✅ 从设备详情对话框移除历史标签页
⚠️ 与之前版本的区别
| 项目 |
之前(错误) |
现在(正确) |
| 入口 |
设备详情对话框 → 拆卸历史标签 |
农机设备管理 → 拆卸历史标签 |
| 筛选条件 |
deviceId === 选中设备ID |
machineryId === 选中农机ID |
| 显示内容 |
该设备在哪些农机上使用过 |
该农机使用过哪些设备 |
| 表格列 |
显示"农机"列 |
显示"设备"列 |
| 操作步骤 |
4步(选农机→选设备→查详情→看历史) |
2步(选农机→切换标签) |
🔄 如何清除缓存并刷新?
Windows / Linux: 按 Ctrl + Shift + R 或 Ctrl + F5
Mac: 按 Cmd + Shift + R
或者:右键点击刷新按钮 → 选择"清空缓存并硬性重新加载"
Chrome: F12 打开开发者工具 → 右键刷新按钮 → 清空缓存并硬性重新加载
⚡ 立即体验
1. 清除浏览器缓存
2. 刷新页面
3. 进入 智能农机管理系统 → 农机负载管理 → 负载管理
4. 在左侧选择一台农机(如:拖拉机-001)
5. 在右侧点击"拆卸历史"标签页
6. 查看该农机的所有设备挂载/卸载历史记录
📝 数据说明
- ✅ 数据来源:
smart_agriculture_load_mount_records
- ✅ 筛选条件:
machineryId === selectedMachineryId
- ✅ 包含所有状态:已挂载 + 已卸载
- ✅ 时间排序:最新记录在最上面
- ✅ 实时计算:进行中的挂载显示当前时长
- ✅ 永久保存:历史记录不会删除
🎯 优化收益
- ✅ 逻辑清晰:从农机视角管理设备,更符合实际业务
- ✅ 操作简便:减少了操作步骤,提高效率
- ✅ 信息集中:农机的所有设备信息集中展示
- ✅ 便于管理:快速了解农机的设备使用历史
- ✅ 界面友好:Tab切换清晰,不会混淆