2.1 KiB
2.1 KiB
203 Admin:SYB 同步低优先级补全蝦皮店铺和图片
- 类型:需求
- 父级大工单:#14
- 所属 MVP / 版本:#15 后续版本
- 状态:已完成,待用户验收
- 日期:2026-08-13
- Gitea 工单:#203
背景与目标
SYB 明细已经提供蝦皮店铺名和无需登录即可访问的图片 URL,但此前只保存在货运单表, 由 SYB 补建的蝦皮商品缺少这两项。目标是在不覆盖人工和商品目录权威字段的前提下补全。
最终方案
同步写入蝦皮商品骨架时,非空店铺和图片按字段级 syb 低优先级来源写入;只补空值
或更新同来源新观测。商品目录接口可以把 syb 值提升为权威来源。MySQL v15 按每个
商品最新非空观测回填历史数据,迁移可重放。图片仍只保存外部 URL,不代理或缓存。
改了哪些
admin/repository/syb.go:统一 SYB 商品元数据写入和历史回填。admin/repository/catalog_import.go:允许目录来源替换syb低优先级字段。admin/repository/mysql_db.go:增加 MySQL v15 迁移与自检。admin/repository/syb_test.go:覆盖同来源更新、接口来源和人工字段保护。docs/admin/:更新需求、数据来源优先级和界面基线。
验收结果
| 验收标准 | 结果 |
|---|---|
| 新同步商品可从 SYB 补全店铺和图片 | 通过 |
| 空值、人工值和接口权威值不被 SYB 覆盖 | 通过 |
| 历史记录通过 v15 幂等回填 | 代码与迁移测试已补,待独立 MySQL 8.4 库实跑 |
| 图片继续使用原始 URL,不落二进制 | 通过 |
测试
- 执行的命令:
$env:GOTOOLCHAIN="go1.23.0"; go vet ./...; go build ./...; go test ./... -count=1 - 结果:通过;未配置 MySQL 集成测试开关时,隔离库测试按设计跳过。
- 没验证到的部分:真实 MySQL 8.4 首次建库、重复迁移和 v14 升级实跑。已尝试
使用
autobuy_test,但现有buy账号无该隔离库权限;未使用生产autobuy代测。
相关提交
ad1ccc2完善 SYB 蝦皮主数据与软删除