From 85ecd1f54f398515735f8c4409b6ca3d966e4a70 Mon Sep 17 00:00:00 2001 From: Nexus Agent Date: Mon, 8 Jun 2026 14:36:21 +0800 Subject: [PATCH] =?UTF-8?q?fix(servers):=20=E6=9C=AA=E8=AE=BE=E8=B7=AF?= =?UTF-8?q?=E5=BE=84=E5=8C=BA=E8=A1=A8=E6=A0=BC=E7=BB=91=E5=AE=9A=20sort-b?= =?UTF-8?q?y=20=E5=90=AF=E7=94=A8=E6=9C=8D=E5=8A=A1=E7=AB=AF=E6=8E=92?= =?UTF-8?q?=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 未设路径面板缺 v-model:sort-by,列头点击不触发 API;与主表共享 sortBy。 Co-authored-by: Cursor --- ...2026-06-08-unset-path-table-sort-deploy.md | 25 +++++++++++++++++++ .../2026-06-08-unset-path-table-sort.md | 25 +++++++++++++++++++ .../servers/ServerUnsetPathPanel.vue | 5 ++++ frontend/src/pages/ServersPage.vue | 1 + 4 files changed, 56 insertions(+) create mode 100644 docs/audit/2026-06-08-unset-path-table-sort-deploy.md create mode 100644 docs/changelog/2026-06-08-unset-path-table-sort.md diff --git a/docs/audit/2026-06-08-unset-path-table-sort-deploy.md b/docs/audit/2026-06-08-unset-path-table-sort-deploy.md new file mode 100644 index 00000000..4b336000 --- /dev/null +++ b/docs/audit/2026-06-08-unset-path-table-sort-deploy.md @@ -0,0 +1,25 @@ +# 审计 — 未设路径服务器表格排序 + +**Changelog**: `docs/changelog/2026-06-08-unset-path-table-sort.md` + +## 变更文件 + +`ServerUnsetPathPanel.vue` · `ServersPage.vue` · `web/app/index.html` · `web/app/assets/*` + +## Step 3 + +| 项 | 结论 | +|----|------| +| sort-by 与主表共享 | PASS(同一 `sortBy` ref + `listQueryParams`) | +| API 参数 | PASS(`target_path_unset=true` + `sort_by`/`sort_order` 已有) | +| 无后端改动 | PASS | + +## Closure + +Gate 7/7 PASS · 生产部署 · `/health` 200 + +## DoD + +- [x] 未设路径区列头可排序 +- [x] 与主表排序状态一致 +- [x] 前端构建通过 diff --git a/docs/changelog/2026-06-08-unset-path-table-sort.md b/docs/changelog/2026-06-08-unset-path-table-sort.md new file mode 100644 index 00000000..342b837e --- /dev/null +++ b/docs/changelog/2026-06-08-unset-path-table-sort.md @@ -0,0 +1,25 @@ +# 未设路径服务器表格排序修复 + +**日期**:2026-06-08 + +## 变更摘要 + +修复「未设置路径服务器」区域点击表头排序无效的问题:为 `ServerUnsetPathPanel` 的 `v-data-table-server` 绑定 `sort-by`,与主表共享同一排序状态并走服务端 `sort_by` / `sort_order` 参数。 + +## 动机 + +主表已有 `v-model:sort-by`,未设路径区缺绑定,列头点击无 API 请求、顺序不变。 + +## 涉及文件 + +- `frontend/src/components/servers/ServerUnsetPathPanel.vue` — 新增 `sortBy` prop 与 `update:sort-by` emit +- `frontend/src/pages/ServersPage.vue` — `v-model:sort-by="sortBy"` 传给未设路径面板 + +## 迁移 / 重启 + +无。前端构建部署即可。 + +## 验证 + +1. 打开服务器页,在未设路径区点击「名称」「心跳」等列头,列表顺序应变化且与主表排序一致。 +2. `GET /api/servers/?target_path_unset=true&sort_by=...&sort_order=...` 应出现在网络请求中。 diff --git a/frontend/src/components/servers/ServerUnsetPathPanel.vue b/frontend/src/components/servers/ServerUnsetPathPanel.vue index fead6a75..4215f129 100644 --- a/frontend/src/components/servers/ServerUnsetPathPanel.vue +++ b/frontend/src/components/servers/ServerUnsetPathPanel.vue @@ -53,8 +53,10 @@ show-select show-expand :model-value="selectedItems" + :sort-by="sortBy" v-model:expanded="expandedModel" @update:model-value="$emit('update:selected-items', $event)" + @update:sort-by="$emit('update:sort-by', $event)" @update:page="$emit('update:page', $event)" @update:items-per-page="$emit('update:items-per-page', $event)" > @@ -177,6 +179,7 @@