docs(M01-B): 记录核心迁移与连接池进度

This commit is contained in:
Codex
2026-06-16 21:26:55 +08:00
parent 3add64bef9
commit 3cabb71de5
8 changed files with 131 additions and 17 deletions
@@ -0,0 +1,34 @@
# 数据库变更:2026-06-16 M01-B 核心 schema 基线
## 背景
M01-B 开始建立正式数据库迁移与旧表兼容层。旧 SQL 仅作为表意、字段类别和业务关系参考,不导入旧 `INSERT` 数据、文件 URL、日志或生产配置。
## Up
- `database/migrations/2026061601_m01b_core_schema.up.sql`
- 新增迁移记录表:`qipai_schema_migrations`
- 新增核心业务表:`qipai_tenants``qipai_stores``qipai_rooms``qipai_members``qipai_orders``qipai_payments``qipai_devices``qipai_audit_logs`
- 新增兼容映射表:`qipai_legacy_table_mappings`
## Down
- `database/migrations/2026061601_m01b_core_schema.down.sql`
- 仅用于空库、本地开发库或预生产演练库回滚;生产含业务数据后必须先备份并按运维流程人工确认。
## 数据迁移说明
- 首期只提供 schema 与脱敏 seed,不迁移真实旧数据。
- 旧表映射写入 `database/seeds/2026061601_m01b_minimal_seed.sql`
- 金额字段统一使用整数分,例如 `total_amount_cents``paid_amount_cents``amount_cents`
- 时间字段统一 `DATETIME(3)`,内部按 UTC 保存,业务日期后续按门店 `timezone` 计算。
- 业务表包含 `tenant_id`;可逻辑删除的表包含 `deleted_at`
## 验证方式
```bash
npm --prefix backend test
powershell -ExecutionPolicy Bypass -File scripts/dev/windows/check-backend.ps1
```
`backend/tests/migration-contract.test.mjs` 会检查 up/down/verify/seed 文件包含核心表、`tenant_id`、整数分金额字段、`DATETIME(3)` 和旧表映射。