Files
fquiz/memory/2026-04-27.md
T
2026-04-29 23:10:25 +08:00

79 lines
4.0 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 - 后台首页按 Ant Design 规范优化(2026-04-27
- 背景:
- 用户要求“按照 ant design 规范优化页面”。
- 本次按最小闭环默认命中后台首页 `/admin`,不改接口、权限与路由,仅优化页面组织与组件用法。
- 本次改动:
- `web/src/app/admin/page.tsx`
- 新增模块分组筛选:使用 `Segmented` 展示“全部 + 各业务分类”并联动卡片列表。
- 新增筛选结果统计:在顶部统计区增加“筛选结果”卡片。
- 卡片内容结构标准化:模块卡片改为 `Card.Meta + Typography.Paragraph(ellipsis) + Tag`,信息层级更符合 AntD 卡片模式。
- 加入分类色标映射(`CATEGORY_COLORS`),保持类别可读性。
- 保留仓库既有 `Card` 类型兼容方案(`AntCard` 强转),并扩展 `Meta` 子组件,兼容 React 19 + 当前 AntD 类型约束。
- 权限逻辑不变:仍由 `visible(hasPermission)` 决定模块可见性。
- AntD CLI 校验(按技能要求):
- 变更前 API 查询(JSON):
- `info Card/Grid/Statistic/Typography/Tag/Avatar/Empty/Space/Segmented/Badge/Flex --format json`
- 变更后规范检查:
- `npx @ant-design/cli lint web/src/app/admin/page.tsx --format json` -> 无问题(`total=0`)。
- 验证:
- `npm --workspace web exec tsc --noEmit --pretty false` -> 通过。
- 风险与影响:
- 影响范围仅前端后台首页展示层(`/admin`)。
- 未改动后端接口、RBAC、菜单数据与路由注册,功能行为保持不变。
## Work Log - 左侧菜单收缩按钮下沉到左下角并补齐菜单图标(2026-04-27)
- 背景:
- 用户要求“左侧菜单收缩按钮放到左下角,给菜单都配上图标”。
- 本次改动:
- `web/src/app/admin/layout.tsx`
- 桌面端收缩按钮从顶部 `Header` 移除,改为侧栏底部按钮(左下角)。
- 侧栏菜单构建函数新增图标注入:优先使用后端 `menu.icon`,其次按 `menu.path` 回退,最后按“目录/叶子”使用默认图标兜底,确保每个菜单都有图标。
- 增加默认菜单图标映射,覆盖当前 seed 中 `LayoutDashboard/Users/ShieldCheck/MenuSquare/Settings2/Network/Zap/Map/RadarChart/Experiment/FolderTree/FileText/Terminal`
- `web/src/app/globals.css`
- 侧栏改为“菜单区域滚动 + 底部按钮固定”布局,保证按钮稳定停靠在左下角且不挤占菜单可视区。
- AntD CLI 校验(按技能要求):
- 变更前 API 查询(JSON):
- `info Layout/Menu/Button --format json`
- 变更后规范检查:
- `npx @ant-design/cli lint web/src/app/admin/layout.tsx --format json` -> 无问题(`total=0`)。
- 验证:
- `npm --workspace web exec tsc --noEmit --pretty false` -> 通过。
- 风险与影响:
- 仅影响后台壳层导航展示与交互,不改动路由、权限与接口数据结构。
- 若后端返回了未收录的新 `menu.icon` 字符串,会走路径或通用兜底图标,不会出现“无图标”空位。
## Work Log - 打包更新镜像并重启(2026-04-27)
- 背景:
- 用户要求“打包更新镜像并重启”。
- 本次执行:
- `docker compose build`
- `docker compose up -d`
- 验证:
- `docker compose ps`
- `api/web/celery-worker/celery-beat/db/redis/minio` 均为 `Up`,其中 `api/db/redis``healthy`
- `curl -fsS http://127.0.0.1:8000/health`
- 返回 `{"status":"ok","service":"fquiz-api","version":"0.1.0"}`
- `curl -I -fsS http://127.0.0.1:3000/`
- 返回 `HTTP/1.1 200 OK`
- `docker compose logs --tail=80 api/web/celery-worker/celery-beat`
- API 启动完成且 `/health` 返回 200。
- Web Ready。
- Celery worker/beat 启动并连接 Redis。
- 风险与影响:
- 发布过程中重建并重启了 `api/web/celery-worker/celery-beat`,存在短时服务切换窗口。
- Celery worker 存在既有 root 运行告警(非本次新增),当前服务可用。