ether-docs/02-DESIGN/domains/inspection-redesign/task_list.md

538 lines
15 KiB
Markdown

# 巡检管理模块重构任务列表
## 任务概览
| 阶段 | 任务数 | 预计工作量 |
|------|--------|------------|
| M1: 数据库变更 | 4 | 0.5天 |
| M2: 后端实体和Repository | 8 | 1天 |
| M3: 后端Service层 | 8 | 2天 |
| M4: 后端Controller层 | 8 | 1天 |
| M5: 前端巡检点管理 | 5 | 1.5天 |
| M6: 前端巡检计划管理 | 6 | 2天 |
| M7: 前端任务详情 | 4 | 1天 |
| M8: 测试和验证 | 5 | 1天 |
**总计**: 48个任务
---
## M1: 数据库变更
### M1-T1: 创建巡检路径表
- **类型**: 数据库
- **优先级**: 高
- **描述**: 创建 `ops_inspection_path`
- **验收标准**:
- 表结构符合规格文档
- 索引创建正确
- 外键约束正确
### M1-T2: 创建巡检路径点表
- **类型**: 数据库
- **优先级**: 高
- **描述**: 创建 `ops_inspection_path_point`
- **验收标准**:
- 表结构符合规格文档
- 索引创建正确
- 外键约束正确
### M1-T3: 创建执行人排班表和打卡记录表
- **类型**: 数据库
- **优先级**: 高
- **描述**: 创建 `ops_inspection_schedule``ops_inspection_checkin`
- **验收标准**:
- 表结构符合规格文档
- 索引创建正确
- 外键约束正确
### M1-T4: 修改现有表结构
- **类型**: 数据库
- **优先级**: 高
- **描述**: 修改 `ops_inspection_plan`, `ops_inspection_point`, `ops_inspection_task`
- **验收标准**:
- 新增字段正确
- 现有数据不受影响
- 默认值设置正确
---
## M2: 后端实体和Repository
### M2-T1: 创建InspectionPath实体
- **类型**: 后端
- **优先级**: 高
- **描述**: 创建巡检路径实体类
- **文件**: `ether-ops/src/main/java/com/ether/ops/entity/InspectionPath.java`
- **验收标准**:
- 实体字段完整
- 注解正确
- 编译通过
### M2-T2: 创建InspectionPathPoint实体
- **类型**: 后端
- **优先级**: 高
- **描述**: 创建巡检路径点实体类
- **文件**: `ether-ops/src/main/java/com/ether/ops/entity/InspectionPathPoint.java`
- **验收标准**:
- 实体字段完整
- 注解正确
- 编译通过
### M2-T3: 创建InspectionSchedule实体
- **类型**: 后端
- **优先级**: 高
- **描述**: 创建执行人排班实体类
- **文件**: `ether-ops/src/main/java/com/ether/ops/entity/InspectionSchedule.java`
- **验收标准**:
- 实体字段完整
- 注解正确
- 编译通过
### M2-T4: 创建InspectionCheckin实体
- **类型**: 后端
- **优先级**: 高
- **描述**: 创建打卡记录实体类
- **文件**: `ether-ops/src/main/java/com/ether/ops/entity/InspectionCheckin.java`
- **验收标准**:
- 实体字段完整
- 注解正确
- 编译通过
### M2-T5: 创建Repository接口
- **类型**: 后端
- **优先级**: 高
- **描述**: 创建所有新实体的Repository接口
- **文件**:
- `InspectionPathRepository.java`
- `InspectionPathPointRepository.java`
- `InspectionScheduleRepository.java`
- `InspectionCheckinRepository.java`
- **验收标准**:
- 接口定义完整
- 自定义查询方法正确
- 编译通过
### M2-T6: 修改InspectionPlan实体
- **类型**: 后端
- **优先级**: 高
- **描述**: 添加新字段到巡检计划实体
- **文件**: `ether-ops/src/main/java/com/ether/ops/entity/InspectionPlan.java`
- **验收标准**:
- 新增字段: minCompletionsPerCycle, executorIds, executorNames, pathId
- 编译通过
### M2-T7: 修改InspectionPoint实体
- **类型**: 后端
- **优先级**: 高
- **描述**: 添加二维码和NFC数据字段
- **文件**: `ether-ops/src/main/java/com/ether/ops/entity/InspectionPoint.java`
- **验收标准**:
- 新增字段: qrData, nfcData
- 编译通过
### M2-T8: 修改InspectionTask实体
- **类型**: 后端
- **优先级**: 高
- **描述**: 添加路径相关字段
- **文件**: `ether-ops/src/main/java/com/ether/ops/entity/InspectionTask.java`
- **验收标准**:
- 新增字段: pathId, plannedPath, actualPath, pathIssues, taskSummary
- 编译通过
---
## M3: 后端Service层
### M3-T1: 实现批量创建巡检点服务
- **类型**: 后端
- **优先级**: 高
- **描述**: 实现批量创建巡检点功能,支持自动编号
- **文件**: `ether-ops/src/main/java/com/ether/ops/service/InspectionPointService.java`
- **验收标准**:
- 支持批量创建
- 支持自动编号
- 单元测试通过
### M3-T2: 实现二维码生成服务
- **类型**: 后端
- **优先级**: 高
- **描述**: 实现二维码生成功能,存储完整信息
- **文件**: `ether-ops/src/main/java/com/ether/ops/service/InspectionQrCodeService.java`
- **验收标准**:
- 生成QR Code图片
- 存储完整JSON数据
- 支持批量生成
- 单元测试通过
### M3-T3: 实现NFC数据准备服务
- **类型**: 后端
- **优先级**: 高
- **描述**: 实现NFC数据准备功能
- **文件**: `ether-ops/src/main/java/com/ether/ops/service/InspectionNfcService.java`
- **验收标准**:
- 生成NFC数据
- 记录NFC标签ID
- 单元测试通过
### M3-T4: 实现路径编排服务
- **类型**: 后端
- **优先级**: 高
- **描述**: 实现巡检路径创建、更新、查询功能
- **文件**: `ether-ops/src/main/java/com/ether/ops/service/InspectionPathService.java`
- **验收标准**:
- 支持路径CRUD
- 支持路径点排序
- 支持间隔时间设置
- 单元测试通过
### M3-T5: 实现排班管理服务
- **类型**: 后端
- **优先级**: 高
- **描述**: 实现执行人排班管理功能
- **文件**: `ether-ops/src/main/java/com/ether/ops/service/InspectionScheduleService.java`
- **验收标准**:
- 支持按周排班
- 支持快速排班
- 单元测试通过
### M3-T6: 实现打卡服务
- **类型**: 后端
- **优先级**: 高
- **描述**: 实现扫码打卡功能
- **文件**: `ether-ops/src/main/java/com/ether/ops/service/InspectionCheckinService.java`
- **验收标准**:
- 支持二维码打卡
- 支持NFC打卡
- 记录打卡时间和位置
- 单元测试通过
### M3-T7: 实现路径比对服务
- **类型**: 后端
- **优先级**: 高
- **描述**: 实现计划路径与实际路径比对功能
- **文件**: `ether-ops/src/main/java/com/ether/ops/service/InspectionPathComparisonService.java`
- **验收标准**:
- 比对路径顺序
- 检测时间间隔问题
- 生成问题列表
- 单元测试通过
### M3-T8: 实现计划复制服务
- **类型**: 后端
- **优先级**: 中
- **描述**: 实现巡检计划复制功能
- **文件**: `ether-ops/src/main/java/com/ether/ops/service/InspectionPlanService.java`
- **验收标准**:
- 复制计划基本信息
- 复制路径配置
- 复制执行人设置
- 复制排班配置
- 单元测试通过
---
## M4: 后端Controller层
### M4-T1: 实现巡检点批量API
- **类型**: 后端
- **优先级**: 高
- **描述**: 实现巡检点批量创建API
- **文件**: `ether-ops/src/main/java/com/ether/ops/controller/InspectionPointController.java`
- **验收标准**:
- POST /api/v1/ops/inspection/points/batch
- 请求/响应格式正确
- 集成测试通过
### M4-T2: 实现二维码API
- **类型**: 后端
- **优先级**: 高
- **描述**: 实现二维码生成和批量生成API
- **文件**: `ether-ops/src/main/java/com/ether/ops/controller/InspectionPointController.java`
- **验收标准**:
- POST /api/v1/ops/inspection/points/{id}/generate-qrcode
- POST /api/v1/ops/inspection/points/batch-qrcode
- 集成测试通过
### M4-T3: 实现NFC API
- **类型**: 后端
- **优先级**: 高
- **描述**: 实现NFC数据准备API
- **文件**: `ether-ops/src/main/java/com/ether/ops/controller/InspectionPointController.java`
- **验收标准**:
- GET /api/v1/ops/inspection/points/{id}/nfc-data
- 集成测试通过
### M4-T4: 实现路径API
- **类型**: 后端
- **优先级**: 高
- **描述**: 实现路径CRUD API
- **文件**: `ether-ops/src/main/java/com/ether/ops/controller/InspectionPathController.java`
- **验收标准**:
- POST /api/v1/ops/inspection/plans/{planId}/path
- PUT /api/v1/ops/inspection/plans/{planId}/path
- GET /api/v1/ops/inspection/plans/{planId}/path
- 集成测试通过
### M4-T5: 实现排班API
- **类型**: 后端
- **优先级**: 高
- **描述**: 实现排班管理API
- **文件**: `ether-ops/src/main/java/com/ether/ops/controller/InspectionScheduleController.java`
- **验收标准**:
- POST /api/v1/ops/inspection/plans/{planId}/schedule
- GET /api/v1/ops/inspection/plans/{planId}/schedule
- 集成测试通过
### M4-T6: 实现打卡API
- **类型**: 后端
- **优先级**: 高
- **描述**: 实现扫码打卡API
- **文件**: `ether-ops/src/main/java/com/ether/ops/controller/InspectionCheckinController.java`
- **验收标准**:
- POST /api/v1/ops/inspection/checkin
- GET /api/v1/ops/inspection/tasks/{taskId}/checkins
- 集成测试通过
### M4-T7: 实现路径比对API
- **类型**: 后端
- **优先级**: 高
- **描述**: 实现路径比对API
- **文件**: `ether-ops/src/main/java/com/ether/ops/controller/InspectionTaskController.java`
- **验收标准**:
- GET /api/v1/ops/inspection/tasks/{taskId}/path-comparison
- 集成测试通过
### M4-T8: 实现计划复制API
- **类型**: 后端
- **优先级**: 中
- **描述**: 实现计划复制API
- **文件**: `ether-ops/src/main/java/com/ether/ops/controller/InspectionPlanController.java`
- **验收标准**:
- POST /api/v1/ops/inspection/plans/{id}/copy
- 集成测试通过
---
## M5: 前端巡检点管理
### M5-T1: 实现批量创建组件
- **类型**: 前端
- **优先级**: 高
- **描述**: 实现巡检点批量创建组件,支持表格输入和自动编号
- **文件**: `ether-ui-admin/src/views/ops/inspection/point/components/BatchCreateModal.vue`
- **验收标准**:
- 表格形式输入
- 支持自动编号
- 支持混合模式
- 组件测试通过
### M5-T2: 实现二维码生成和显示
- **类型**: 前端
- **优先级**: 高
- **描述**: 实现二维码生成、显示、下载功能
- **文件**: `ether-ui-admin/src/views/ops/inspection/point/components/QrCodeModal.vue`
- **验收标准**:
- 显示二维码图片
- 支持单个下载
- 支持批量下载
- 支持打印
### M5-T3: 实现NFC写入界面
- **类型**: 前端
- **优先级**: 高
- **描述**: 实现NFC数据展示和写入引导界面
- **文件**: `ether-ui-admin/src/views/ops/inspection/point/components/NfcWriteModal.vue`
- **验收标准**:
- 显示NFC数据
- 提供写入引导
- 记录写入状态
### M5-T4: 更新巡检点管理页面
- **类型**: 前端
- **优先级**: 高
- **描述**: 更新巡检点管理页面,集成新功能
- **文件**: `ether-ui-admin/src/views/ops/inspection/point/index.vue`
- **验收标准**:
- 集成批量创建
- 集成二维码功能
- 集成NFC功能
- 页面功能正常
### M5-T5: 更新巡检点API
- **类型**: 前端
- **优先级**: 高
- **描述**: 添加新的巡检点API调用
- **文件**: `ether-ui-admin/src/api/ops/inspection.ts`
- **验收标准**:
- 批量创建API
- 二维码API
- NFC API
- 类型定义正确
---
## M6: 前端巡检计划管理
### M6-T1: 实现路径编排组件
- **类型**: 前端
- **优先级**: 高
- **描述**: 实现巡检路径编排组件,支持拖拽排序
- **文件**: `ether-ui-admin/src/views/ops/inspection/plan/components/PathEditor.vue`
- **验收标准**:
- 拖拽排序功能
- 间隔时间设置
- 实时显示总时间
- 组件测试通过
### M6-T2: 实现执行人选择器
- **类型**: 前端
- **优先级**: 高
- **描述**: 实现人员选择器,支持筛选本部门人员
- **文件**: `ether-ui-admin/src/components/PersonnelSelector.vue`
- **验收标准**:
- 支持多选
- 支持部门筛选
- 支持权限筛选
- 组件测试通过
### M6-T3: 实现排班管理组件
- **类型**: 前端
- **优先级**: 高
- **描述**: 实现按周循环排班管理组件
- **文件**: `ether-ui-admin/src/views/ops/inspection/plan/components/ScheduleEditor.vue`
- **验收标准**:
- 周视图展示
- 支持快速排班
- 支持轮流排班
- 组件测试通过
### M6-T4: 更新巡检计划表单
- **类型**: 前端
- **优先级**: 高
- **描述**: 更新巡检计划表单,添加新字段
- **文件**: `ether-ui-admin/src/views/ops/inspection/plan/index.vue`
- **验收标准**:
- 添加最少完成次数字段
- 集成执行人选择
- Tab页切换正常
### M6-T5: 实现计划复制功能
- **类型**: 前端
- **优先级**: 中
- **描述**: 实现巡检计划复制功能
- **文件**: `ether-ui-admin/src/views/ops/inspection/plan/index.vue`
- **验收标准**:
- 复制按钮
- 复制弹窗
- 复制成功提示
### M6-T6: 更新巡检计划API
- **类型**: 前端
- **优先级**: 高
- **描述**: 添加新的巡检计划API调用
- **文件**: `ether-ui-admin/src/api/ops/inspection.ts`
- **验收标准**:
- 路径API
- 排班API
- 复制API
- 类型定义正确
---
## M7: 前端任务详情
### M7-T1: 实现时间线对比组件
- **类型**: 前端
- **优先级**: 高
- **描述**: 实现计划路径与实际路径的时间线对比展示
- **文件**: `ether-ui-admin/src/views/ops/inspection/task/components/PathTimeline.vue`
- **验收标准**:
- 时间线展示
- 计划路径虚线
- 实际路径实线
- 问题点红色标记
- 组件测试通过
### M7-T2: 实现问题标记展示
- **类型**: 前端
- **优先级**: 高
- **描述**: 实现问题标记和详情展示
- **文件**: `ether-ui-admin/src/views/ops/inspection/task/components/IssueDisplay.vue`
- **验收标准**:
- 问题列表展示
- 问题详情弹窗
- 问题照片展示
- 组件测试通过
### M7-T3: 实现任务简报组件
- **类型**: 前端
- **优先级**: 高
- **描述**: 实现任务简报组件,显示问题摘要
- **文件**: `ether-ui-admin/src/views/ops/inspection/task/components/TaskSummary.vue`
- **验收标准**:
- 任务状态展示
- 完成进度展示
- 问题摘要展示
- 组件测试通过
### M7-T4: 更新任务详情页面
- **类型**: 前端
- **优先级**: 高
- **描述**: 更新任务详情页面,集成新组件
- **文件**: `ether-ui-admin/src/views/ops/inspection/task/index.vue`
- **验收标准**:
- 集成时间线组件
- 集成问题展示
- 集成简报组件
- 页面功能正常
---
## M8: 测试和验证
### M8-T1: 后端单元测试
- **类型**: 测试
- **优先级**: 高
- **描述**: 编写所有新Service的单元测试
- **验收标准**:
- 测试覆盖率 > 80%
- 所有测试通过
### M8-T2: 后端集成测试
- **类型**: 测试
- **优先级**: 高
- **描述**: 编写所有新API的集成测试
- **验收标准**:
- 所有API测试通过
- 测试覆盖率 > 70%
### M8-T3: 前端组件测试
- **类型**: 测试
- **优先级**: 高
- **描述**: 编写关键组件的单元测试
- **验收标准**:
- 关键组件测试通过
- 测试覆盖率 > 60%
### M8-T4: E2E测试
- **类型**: 测试
- **优先级**: 高
- **描述**: 编写端到端测试场景
- **验收标准**:
- 巡检点批量创建流程
- 路径编排流程
- 排班管理流程
- 打卡流程
- 路径比对流程
- 所有测试通过
### M8-T5: 功能验证
- **类型**: 测试
- **优先级**: 高
- **描述**: 完整功能验证
- **验收标准**:
- 启动所有服务
- 验证所有功能
- 修复发现的问题