Files
medical-mall/docs/ops/2026-02-10__admin__user-label-db-and-ui.md

32 lines
1.5 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.
# 用户标签数据库设计与 RPC (v1)
## 摘要
为“用户标签”功能新增数据库表 `public.ak_user_labels`(支持逻辑删除),并提供管理端 RPC分页列表/保存/删除/状态切换)。同时启用 RLS默认仅允许管理端通过 RPC 访问。
## 动机
- 完善用户画像体系,支持对用户进行行为特征标记。
- 替换前端 `pages/mall/admin/user/label.uvue` 中的硬编码 Mock 数据,实现真实数据持久化。
## 影响范围
- 数据库:新增 `ak_user_labels` 表及相关索引、RLS 策略、4 个管理端 RPC。
- 前端:新增 `userLabelService.uts`,重构 `label.uvue` 页面。
## 变更清单
- 数据库 SQL
- `docs/sql/10_schema/user/ak_user_labels_v1.sql`
- `docs/sql/20_rls/user/ak_user_labels_rls_v1.sql`
- `docs/sql/30_rpc/user/rpc_admin_user_label_list_v1.sql`
- `docs/sql/30_rpc/user/rpc_admin_user_label_save_v1.sql`
- `docs/sql/30_rpc/user/rpc_admin_user_label_delete_v1.sql`
- `docs/sql/30_rpc/user/rpc_admin_user_label_set_status_v1.sql`
- 前端代码:
- `services/admin/userLabelService.uts`
- `pages/mall/admin/user/label.uvue`
## 兼容性与风险
- 逻辑删除:采用 `deleted_at` 字段,确保历史关联数据不被物理破坏。
- 安全性:所有管理操作均通过 `SECURITY DEFINER` RPC 并校验 `admin/analytics` 角色。
## 验证方式
- 执行 SQL 后,通过 Admin 端的“用户标签”菜单进行增删改查操作,观察数据库及界面响应。