# PRD：新增系统管理父菜单（系统配置 / 系统信息 / 操作日志）

> **版本**：v1.0  
> **创建日期**：2026-07-29  
> **状态**：待实现  
> **关联项目**：平台自动化测试可视化系统 (platform-auto-test)

---

## 一、需求背景

当前侧边栏中「系统配置」为单个菜单项，路由 `/settings` 指向 `Settings.vue`（目前为占位页面）。随着平台功能增多，需要将系统级别的管理功能整合为统一的父菜单分组，方便后续扩展更多系统管理功能。

## 二、需求描述

### 2.1 侧边栏变更

将当前侧边栏中的单个「系统配置」菜单项，替换为 **「系统管理」父菜单**，展开后包含三个子菜单：

| 菜单项 | 路由 | 说明 |
|--------|------|------|
| 系统配置 | `/system/settings` | 原 `/settings` 功能迁移至此 |
| 系统信息 | `/system/info` | 新增：展示平台运行环境信息 |
| 操作日志 | `/system/logs` | 新增：展示系统操作日志记录 |

### 2.2 页面规划

#### 2.2.1 系统配置 (`/system/settings`)

- 将当前 `Settings.vue` 迁移至新路由
- 功能待后续 Phase 5 实现，当前保留占位状态

#### 2.2.2 系统信息 (`/system/info`) — 新增

展示平台运行环境信息，包括：
- 后端版本、Python 版本、运行时间
- 数据库状态（连接数、大小）
- 前端版本、Node 版本
- 部署环境信息

**数据来源**：后端新增 `/api/system/info` 接口

#### 2.2.3 操作日志 (`/system/logs`) — 新增

展示系统关键操作日志，包括：
- 用例执行记录列表（最近的执行记录）
- 系统配置变更记录（预留）
- 支持按时间范围、操作类型筛选

**数据来源**：复用现有执行记录 API `/api/executions`

### 2.3 不涉及变更

- 不影响其他路由（总览、模块管理、用例管理、录制、执行中心、报告中心、设备模拟）
- 不影响数据库表结构
- 不涉及后端模型变更
- 不涉及 Playwright 执行引擎

## 三、变更范围

| 层面 | 变更内容 | 影响范围 |
|------|---------|---------|
| **路由** | 新增 `/system` 父路由 + 3 个子路由 | `frontend/src/router/index.ts` |
| **侧边栏** | 替换单菜单为父菜单 | `frontend/src/App.vue` |
| **页面迁移** | Settings.vue 迁移至 `/system/settings` | 路由路径变更，组件内容不变 |
| **新增页面** | SystemInfo.vue | 新建文件 |
| **新增页面** | OperationLogs.vue | 新建文件 |
| **新增 API** | `/api/system/info` 返回系统信息 | `backend/app/routers/system.py` |
| **后端路由注册** | 注册 system 路由 | `backend/app/main.py` |

## 四、验收标准

1. ✅ 侧边栏显示「系统管理」父菜单，展开后含 3 个子菜单
2. ✅ 点击「系统配置」→ 跳转 `/system/settings`，显示原 Settings 页面内容
3. ✅ 点击「系统信息」→ 跳转 `/system/info`，显示运行环境信息
4. ✅ 点击「操作日志」→ 跳转 `/system/logs`，显示执行记录列表
5. ✅ 旧路由 `/settings` → 301 重定向到 `/system/settings`
6. ✅ 其他窗口开发的功能不受影响
7. ✅ 页面标题正确显示

## 五、注意事项

- 旧路由 `/settings` 需做重定向，避免书签/链接失效
- 设备模拟模块的 `/device-sim` 路由命名风格已为嵌套路由，本次参照其模式实现
- 当前 Settings.vue 为占位页面，仅迁移路由，不改动其内容
- 系统信息页面数据从后端获取，需确保后端接口返回正确的格式