Files
fquiz/memory/2026-06-19.md
T
2026-06-19 23:06:15 +08:00

19 lines
1.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Work Log - 菜单状态切换接口统一(FL-119)
- 背景:
- 菜单管理页创建、编辑、删除均使用 `/api/v1/admin/menus*`,但表格和卡片视图的启用/禁用状态切换仍调用 `/api/menus/{id}`,接口资源族不一致。
- 本次处理:
-`web/src/app/admin/menus/page.tsx` 新增统一的菜单状态切换函数,表格与卡片视图复用同一逻辑。
- 状态切换请求统一为 `PATCH /api/v1/admin/menus/{id}`payload 仅包含 `{ status }`
- 新增行级 `updatingStatusMenuId` busy 状态,状态切换期间禁用对应行/卡片操作。
- 状态切换成功后刷新菜单列表,并通过统一 toast 状态反馈成功/失败,避免重复提示或残留旧错误。
- 验证:
- 基线:`npm --workspace web exec eslint src/app/admin/menus/page.tsx` 通过,存在 3 条既有 warning。
- 修改后:`npm --workspace web exec eslint src/app/admin/menus/page.tsx` 通过,仅剩 1 条既有 pagination hook warning。
- 修改后:`npm --workspace web exec tsc --noEmit` 通过。
- 风险与关注点:
- 改动仅影响菜单管理页状态切换的前端请求路径、复用逻辑和行级 busy 状态,不改变后端接口、字段结构或菜单 CRUD 其他行为。