Ensure compatibility with both default and named exports for useDebounce. Co-authored-by: null <4804959+fnvtk@users.noreply.github.com>
2.1 KiB
2.1 KiB
2025-08-08 菜单同步 + 用户画像数据与接口完善
- 完成内容:
- 同步左侧导航与底部菜单,统一为【首页 / 数据中台 / 画像 / AI智能助手】,去除“搜索”入口,避免与首页内置搜索重复。
- 新增 /api/users 接口(GET/POST),支持 q、tags、status、rfmMin、rfmMax、page、pageSize 与 id 详情查询。
- 新增 lib/mock-users.ts:批量生成中文姓名、邮箱、手机号、标签、动态时间(基于当前时间)与 RFM 分数的模拟用户数据。
- 新增 Skeleton 组件与 moments-sync 编辑页 loading.tsx 作为 Suspense Fallback,避免 useSearchParams 构建报错。
- 补齐 Toast / Toaster 组件的导出与实现,修复构建失败。
- 将“搜索入口”迁移并固定在首页;修复 /api/users 导出/导入冲突,稳定构建。
- 变更文件:
- app/page.tsx(新增首页搜索与指标卡片)
- components/home/user-search.tsx(新增:状态/RFM过滤 + 绑定首页搜索框)
- components/home/user-list.tsx(新增:表格列表)
- app/api/users/route.ts(精简重写:仅依赖 lib/mock-users 导出)
- lib/mock-users.ts(统一导出 queryUsers/addUser/getUserById,时间全部相对“当前时间”生成)
- 接口与数据:
- GET /api/users?id= 返回单体详情;GET /api/users 返回列表与分页;POST /api/users 新增一个用户(服务内内存态)。
- 完成度:
- 本轮任务完成度:100%
- 用户画像模块整体完成度:≈ 88%(已具备真实感数据与筛选能力,待接入真实库)
- 下一步计划:
- 将 /api/users 切换到真实数据库(Neon 或现有 MySQL),并加上索引与分页游标;
- 画像页联动更多筛选项与批量导出;
- 详情页增加 AI 洞察与行动建议(AI SDK),联动 RFM;
- 对齐路由处的 loading 骨架风格,完善可用性与无障碍。
- 数据库对接(Neon/Supabase/MySQL)保留接口契约不变;
- 画像页接入上述接口的分页与高级筛选,补齐批量导出;
- 详情页接入 AI SDK 生成洞察与跟进建议(RFM联动)。