feat: Flyway V3 pet_health 结构基线 + V4 字典种子 + pet 域错误码(T2-01)
- V3:pet_health schema 8 张表(breeds/pets/pet_owners/pet_weight_records/ vaccine_catalog/pet_vaccinations/health_events/care_reminders),列、CHECK、 部分唯一索引、updated_at 触发器与目标模型一致 - 强制裁剪:剥离 bootstrap SQL 1156~1166 行 4 条指向 marketplace 的跨 schema 外键(provider_id/booking_id 保留为裸可空 uuid,M5 迁移 marketplace 时补回) - ADR-010:health_event_media 不建(media 剪出 M2,纯增量表后续补零成本) - V4:breeds(28 条)与 vaccine_catalog(10 条)字典种子,生产参考数据走正式 迁移链不放 db/dev;正典目录内容由产品侧供稿(D2-6) - ErrorCode 预置 pets 域四码:40300 PET_ACCESS_DENIED、40401 PET_NOT_FOUND、 40402 RECORD_NOT_FOUND、40902 VERSION_CONFLICT(第二波接口直接消费) - 新增 PetHealthMigrationIntegrationTest:干净 postgres:18 上全量迁移验证 表数、结构抽查、4 条 FK 确不存在、触发器与种子数据 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -13,9 +13,13 @@ public enum ErrorCode {
|
||||
INVALID_CREDENTIALS(40100, 401, "用户名或密码错误"),
|
||||
TOKEN_INVALID(40101, 401, "token 无效或过期"),
|
||||
REFRESH_TOKEN_INVALID(40102, 401, "refresh token 已失效或被重用"),
|
||||
PET_ACCESS_DENIED(40300, 403, "无权操作该宠物"),
|
||||
USER_NOT_FOUND(40400, 404, "用户不存在"),
|
||||
PET_NOT_FOUND(40401, 404, "宠物不存在"),
|
||||
RECORD_NOT_FOUND(40402, 404, "记录不存在"),
|
||||
USERNAME_EXISTS(40900, 409, "用户名已存在"),
|
||||
PHONE_EXISTS(40901, 409, "手机号已被使用"),
|
||||
VERSION_CONFLICT(40902, 409, "数据已被修改,请刷新后重试"),
|
||||
LOGIN_LOCKED(42300, 423, "登录失败次数过多,账号已临时锁定"),
|
||||
INTERNAL_ERROR(50000, 500, "服务器内部错误"),
|
||||
DOWNSTREAM_UNAVAILABLE(50300, 503, "依赖服务暂不可用");
|
||||
|
||||
Reference in New Issue
Block a user