# Ether E2E测试Bug跟踪文档 **测试日期**: 2026-03-03 **测试人员**: AI Assistant **版本**: v1.0 --- ## 一、测试结果汇总 | 测试项 | 结果 | |--------|------| | 登录API | ✅ 通过 | | 权限查询API | ✅ 通过 | | 项目列表API | ✅ 通过 | | 用户列表API | ✅ 通过 | | 角色列表API | ❌ 失败 | | 工单列表API | ❌ 失败 | | 设备创建API | ❌ 失败 | | 访客预约API | ❌ 失败 | | 巡检计划API | ❌ 失败 | | 通知列表API | ❌ 失败 | **通过率**: 4/10 (40%) --- ## 二、Bug详细记录 ### Bug 001: 角色列表API返回500错误 | 字段 | 内容 | |------|------| | **Bug ID** | BUG-001 | | **模块** | 权限管理 | | **API** | GET /api/v1/auth/permissions/roles | | **错误描述** | 系统内部错误,返回500 | | **错误信息** | `{"code":500,"message":"系统内部错误,请稍后重试","path":"/api/v1/auth/permissions/roles"}` | | **严重程度** | P1 | | **状态** | 已修复 | | **发现时间** | 2026-03-03 | | **修复时间** | 2026-03-03 | **问题根因**: `ProjectContextInterceptor` 设置的 `ProjectContextHolder` 与 `PermissionController` 使用的不是同一个类。拦截器设置的是 `com.ether.auth.context.ProjectContextHolder`,而 Controller 使用的是 `com.ether.common.context.ProjectContextHolder`。 **修复方案**: 修改 `ProjectContextInterceptor`,在设置项目上下文时同时设置两个 `ProjectContextHolder`。 --- ### Bug 002: 工单列表API缺少项目上下文 | 字段 | 内容 | |------|------| | **Bug ID** | BUG-002 | | **模块** | 工单管理 | | **API** | GET /api/v1/ops/work-orders | | **错误描述** | 项目上下文不能为空 | | **错误信息** | `{"code":400,"message":"项目上下文不能为空","data":null,"success":false}` | | **严重程度** | P1 | | **状态** | 待修复 | | **发现时间** | 2026-03-03 | **初步分析**: 工单API需要项目ID作为上下文参数 --- ### Bug 003: 设备创建API失败 | 字段 | 内容 | |------|------| | **Bug ID** | BUG-003 | | **模块** | 设备管理 | | **API** | POST /api/v1/mdm/equipments | | **错误描述** | 缺少项目上下文 | | **严重程度** | P1 | | **状态** | 待修复 | | **发现时间** | 2026-03-03 | --- ### Bug 004: 访客预约API失败 | 字段 | 内容 | |------|------| | **Bug ID** | BUG-004 | | **模块** | 访客管理 | | **API** | GET /api/v1/mdm/visitor-appointments | | **错误描述** | 缺少项目上下文 | | **严重程度** | P1 | | **状态** | 待修复 | | **发现时间** | 2026-03-03 | --- ### Bug 005: 巡检计划API失败 | 字段 | 内容 | |------|------| | **Bug ID** | BUG-005 | | **模块** | 巡检管理 | | **API** | GET /api/v1/ops/inspection-plans | | **错误描述** | 缺少项目上下文 | | **严重程度** | P1 | | **状态** | 待修复 | | **发现时间** | 2026-03-03 | --- ### Bug 006: 通知列表API失败 | 字段 | 内容 | |------|------| | **Bug ID** | BUG-006 | | **模块** | 通知管理 | | **API** | GET /api/v1/ops/notifications | | **错误描述** | 缺少项目上下文 | | **严重程度** | P1 | | **状态** | 待修复 | | **发现时间** | 2026-03-03 | --- ## 三、修复计划 ### Phase 1: 修复项目上下文问题 需要修复的API(5个): 1. 工单列表 - BUG-002 2. 设备创建 - BUG-003 3. 访客预约 - BUG-004 4. 巡检计划 - BUG-005 5. 通知列表 - BUG-006 **修复方案**: 添加项目上下文header: `X-Project-Id` ### Phase 2: 修复角色列表500错误 1. 检查后端日志 2. 定位具体错误原因 3. 修复并验证 --- ## 四、历史记录 | 日期 | 操作 | 说明 | |------|------|------| | 2026-03-03 | 创建 | 初始Bug跟踪文档 |