## 1. 后端查询契约

- [x] 1.1 新增 `WecomAccountPageQuery.java`（文件用途：接收分页与筛选参数），为 `resolvedPage`、`resolvedSize` 写新手注释：代码作用（白话）、关联文件、关联逻辑；校验页码与页大小。
- [x] 1.2 新增 `WecomAccountResponse.java`（文件用途：限定企微列表单行返回字段），包含企微业务字段、创建/更新时间、关联 ID 与关联名称，不包含 `deleteTime`。
- [x] 1.3 新增 `WecomAccountPageResponse.java`（文件用途：承载列表、总数、页码、页大小），复用当前手机号资产分页的返回结构。

## 2. 后端只读列表实现

- [x] 2.1 新增 `WecomAccountService.java`（文件用途：读取企微资产并解析关联名称），注入既有企微、公司档案、手机号、设备和人员 Mapper。
- [x] 2.2 在 `WecomAccountService` 实现 `page`（文件用途：按筛选、分页和 `delete_time = 0` 查询企微账号）与 `toResponse`（文件用途：将实体及关联名称转换为接口行）；为构造方法和两个方法写完整新手注释：代码作用（白话）、关联文件、关联逻辑（调用链/数据流）。
- [x] 2.3 在 `WecomAccountService` 实现批量关联查询逻辑（文件用途：将当前页 ID 转换为名称），为每个辅助方法写完整新手注释；缺失名称返回 `null`，原 ID 保留。
- [x] 2.4 新增 `WecomAccountController.java`（文件用途：提供浏览器查询入口），实现 `GET /api/wecom-accounts`；为构造方法与 `page` 写完整新手注释：代码作用（白话）、关联文件、关联逻辑。

## 3. 前端企微资料页面

- [x] 3.1 新增 `frontend/src/modules/wecom/wecom-api-client.js`（文件用途：封装企微分页请求）；实现 `request` 与 `listWecomAccounts`，并为每个方法写完整新手注释：代码作用（白话）、关联文件、关联逻辑。
- [x] 3.2 新增 `frontend/src/modules/wecom/WecomAccountView.js`（文件用途：渲染企微资料真实列表）；实现 `setup`、`loadPage`、`submitSearch`、`resetSearch`、`changePage`，并为每个方法及业务回调写完整新手注释。
- [x] 3.3 在 `WecomAccountView.js` 展示企微字段、创建/更新时间，以及“名称（ID）”的关联字段；将 `realNameOwner` 标注为“企微实名人”，名称为空时显示“—”，不创建 `deleteTime` 列。
- [x] 3.4 修改 `frontend/src/router/index.js`（文件用途：管理 Hash 路由）并为新增或修改的方法写完整新手注释；用 `#/reference/wecom` 映射真实列表，移除静态 wechat 路由。
- [x] 3.5 修改 `frontend/src/App.js`（文件用途：提供全局导航）将企微导航入口更新为 `#/reference/wecom` 和真实页面文案；若新增方法或回调，写完整新手注释。

## 4. 自动化验证与文档

- [x] 4.1 新增 `backend/src/test/java/com/xyw/console/asset/controller/WecomAccountControllerTest.java`（文件用途：验证企微分页接口）；覆盖默认分页、筛选、删除记录过滤、关联名称和 `deleteTime` 不返回；为测试方法及业务回调写完整新手注释。
- [x] 4.2 新增 `frontend/tests/wecom-account.spec.js`（文件用途：验证真实企微列表路由）；覆盖接口请求、筛选参数、字段/关联名称展示、`deleteTime` 不展示和分页；为测试回调写完整新手注释。
- [x] 4.3 修改 `frontend/tests/legacy-reference.spec.js`（文件用途：验证仍保留的静态参考页）仅保留手机号参考页断言；为修改后的测试回调补齐完整新手注释。
- [x] 4.4 修改 `README.md`（文件用途：说明当前重构状态与本地入口）将企微页说明更新为真实列表和新的访问地址。
- [x] 4.5 执行 `mvn -q -DskipTests compile`、企微 Controller 测试、`npm run build` 与 Playwright；记录失败原因并先分析再修复。
