feat(admin): implement user level, group and label modules with database, rpc and ui

This commit is contained in:
comlibmb
2026-02-10 20:34:45 +08:00
parent 80e5a1ddeb
commit 47968565a5
28 changed files with 1896 additions and 140 deletions

View File

@@ -0,0 +1,31 @@
# 用户分组数据库设计与 RPC (v1)
## 摘要
为“用户分组”功能新增数据库表 `public.ak_user_groups`(支持逻辑删除),并提供管理端 RPC分页列表/保存/删除/状态切换)。同时启用 RLS默认仅允许管理端通过 RPC 访问。
## 动机
- 完善用户精细化运营体系,支持对用户进行分组分类。
- 替换前端 `pages/mall/admin/user/group.uvue` 中的硬编码 Mock 数据,实现真实数据持久化与完整交互。
## 影响范围
- 数据库:新增 `ak_user_groups` 表及相关索引、RLS 策略、4 个管理端 RPC。
- 前端:新增 `userGroupService.uts`,重构 `group.uvue` 页面。
## 变更清单
- 数据库 SQL
- `docs/sql/10_schema/user/ak_user_groups_v1.sql`
- `docs/sql/20_rls/user/ak_user_groups_rls_v1.sql`
- `docs/sql/30_rpc/user/rpc_admin_user_group_list_v1.sql`
- `docs/sql/30_rpc/user/rpc_admin_user_group_save_v1.sql`
- `docs/sql/30_rpc/user/rpc_admin_user_group_delete_v1.sql`
- `docs/sql/30_rpc/user/rpc_admin_user_group_set_status_v1.sql`
- 前端代码:
- `services/admin/userGroupService.uts`
- `pages/mall/admin/user/group.uvue`
## 兼容性与风险
- 逻辑删除:采用 `deleted_at` 字段,确保历史关联数据不被物理破坏。
- 安全性:所有管理操作均通过 `SECURITY DEFINER` RPC 并校验 `admin/analytics` 角色。
## 验证方式
- 执行 SQL 后,通过 Admin 端的“用户分组”菜单进行增删改查操作,观察数据库及界面响应。