Files
one-pipe-system/openspec/changes/add-device-management/proposal.md
sexygoat 5c6312c407
Some checks failed
构建并部署前端到测试环境 / build-and-deploy (push) Failing after 6s
fetch(add): 新增
2026-01-27 09:18:45 +08:00

2.4 KiB
Raw Blame History

Change: 添加设备管理功能

Why

当前系统只有设备导入页面,缺少完整的设备管理能力。需要提供设备的全生命周期管理,包括:

  • 查看和搜索设备列表
  • 查看设备详情和绑定的卡信息
  • 管理设备与卡的绑定关系
  • 批量分配和回收设备
  • 完善设备导入流程和任务追踪

这是物联网卡管理系统的核心资产管理功能之一。

What Changes

新增功能

  • 设备列表页面: 支持多条件搜索、分页、列筛选、批量操作(分配、回收、删除)
  • 设备详情页面: 展示设备基本信息、绑定的卡列表、操作历史
  • 卡绑定管理: 在设备详情页绑定/解绑卡
  • 批量分配对话框: 选择设备批量分配给店铺
  • 批量回收对话框: 从店铺批量回收设备
  • 设备导入改进: 基于对象存储的三步导入流程
  • 导入任务管理: 任务列表和详情查看

API 集成

  • DeviceService: 11个API接口
  • 类型定义: Device, DeviceBinding, ImportTask 等

UI 组件

  • 遵循现有组件模式 (ArtTableFullScreen, ArtSearchBar等)
  • 复用 CommonStatus 统一状态变量
  • 使用 ElDescriptions、ElTag、ElSwitch 等组件

Impact

影响的功能模块

  • 新增: 资产管理 / 设备列表(主列表页)
  • 新增: 资产管理 / 设备详情
  • 改进: 批量操作 / 设备导入(改为对象存储模式)
  • 新增: 批量操作 / 导入任务列表(独立页面)

影响的代码

  • src/api/modules/device.ts (新增)
  • src/types/api/device.ts (新增)
  • src/views/asset-management/device-list/index.vue (新增)
  • src/views/asset-management/device-detail/index.vue (新增)
  • src/views/asset-management/task-management/index.vue (修改:支持设备导入任务)
  • src/views/asset-management/task-detail/index.vue (修改:支持设备导入任务详情)
  • src/views/batch/device-import/index.vue (修改:使用对象存储)
  • src/router/routes/asyncRoutes.ts (新增路由)
  • src/router/routesAlias.ts (新增路由别名)
  • src/locales/langs/zh.json (新增翻译)
  • src/api/modules/index.ts (导出 DeviceService)
  • src/types/api/index.ts (导出 Device 类型)

依赖关系

  • 依赖现有的 StorageService (对象存储)
  • 依赖现有的 ShopService (店铺选择)
  • 设备与卡的关联管理
  • 任务管理页面需要支持多种任务类型ICCID导入 + 设备导入)