chore: v1 整理 — 清理历史文件、DDL 合并、文档归档
- 清理 1155 个已删除的历史文件(废弃 prompt_logs、tmp、旧 ops 脚本) - export/ 数据文件从 git 移除(已在 .gitignore) - demo-miniprogram 从 tmp/ 移入 apps/,添加 CLAUDE.md 注解 - DDL 合并:完整 schema 定义填充到 db/*/schemas/(从 docs/database/ddl/ 复制) - 39 个 v1 迁移脚本归档到 db/_archived/migrations_v1_merged/ - 4 个迁移变更类 BD_Manual 文档归档到 docs/database/_archived/ - .gitignore 补充 .vite/ 和 apps/*.zip - settings.json 添加 effortLevel 默认配置 - scripts/ops/ 新增运维脚本入库 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
53
docs/database/_archived/BD_manual_auth_users_avatar.md
Normal file
53
docs/database/_archived/BD_manual_auth_users_avatar.md
Normal file
@@ -0,0 +1,53 @@
|
||||
# BD 手册:auth.users.avatar_url 字段
|
||||
|
||||
## 概述
|
||||
|
||||
`auth.users` 表新增 `avatar_url` 字段,存储用户头像的相对路径。
|
||||
|
||||
## 字段定义
|
||||
|
||||
| 字段 | 类型 | 约束 | 说明 |
|
||||
|------|------|------|------|
|
||||
| `avatar_url` | `VARCHAR(500)` | `NULL` | 头像相对路径,格式 `avatars/{user_id}.jpg` |
|
||||
|
||||
## 数据流
|
||||
|
||||
1. 小程序端通过 `<button open-type="chooseAvatar">` 获取微信头像临时路径
|
||||
2. 通过 `wx.uploadFile` 上传到 `POST /api/xcx/avatar/upload`
|
||||
3. 后端保存文件到 `AVATAR_EXPORT_PATH/{user_id}.jpg`(覆盖式,幂等)
|
||||
4. 数据库 `avatar_url` 更新为 `avatars/{user_id}.jpg`(相对路径)
|
||||
5. 小程序通过 `GET /api/xcx/avatar/{user_id}` 获取头像文件
|
||||
|
||||
## 关联接口
|
||||
|
||||
| 接口 | 方法 | 说明 |
|
||||
|------|------|------|
|
||||
| `/api/xcx/avatar/upload` | POST | 上传头像,更新 avatar_url |
|
||||
| `/api/xcx/avatar/{user_id}` | GET | 获取头像文件(FileResponse) |
|
||||
| `/api/xcx/me` | GET | 返回 avatar_url 字段 |
|
||||
|
||||
## 设计决策
|
||||
|
||||
- 审核表 `auth.user_applications` 不冗余 `avatar_url`,通过 JOIN `auth.users` 获取(头像可能更新)
|
||||
- 文件命名按 `user_id`,覆盖式保存(幂等,无历史版本)
|
||||
- 文件大小限制 2MB,空文件拒绝
|
||||
|
||||
## 迁移脚本
|
||||
|
||||
`db/zqyy_app/migrations/20260324_add_avatar_url_to_users.sql`
|
||||
|
||||
## 环境变量
|
||||
|
||||
`AVATAR_EXPORT_PATH` — 头像文件存储目录,缺失时后端报 500 错误
|
||||
|
||||
## 回滚
|
||||
|
||||
```sql
|
||||
ALTER TABLE auth.users DROP COLUMN IF EXISTS avatar_url;
|
||||
```
|
||||
|
||||
## 验证
|
||||
|
||||
```sql
|
||||
SELECT id, avatar_url FROM auth.users WHERE avatar_url IS NOT NULL LIMIT 5;
|
||||
```
|
||||
Reference in New Issue
Block a user