Admin:增加商品目录导入记录接口和管理页面 #134

Closed
opened 2026-08-11 09:50:27 +08:00 by ila · 1 comment
Owner

基本信息

  • 类型:需求
  • 父级大工单:#14
  • 所属 MVP / 版本:#15
  • 阶段:商品目录导入可观测性
  • 依赖:#132、#133
  • 状态:待验收

要解决什么

第三方脚本提交后需要查询批次结果,管理员也需要查看每批数据的状态、数量和失败原因。完整原始请求不应落库或展示,但不能只靠短期日志排错。

做什么 / 不做什么

  • 做:实现 GET /api/v1/integrations/catalog/batches/:batch_id;新增管理员网页 /integrations/catalog 的分页导入记录和详情;在蝦皮/PDD 页提供统一“导入记录”入口。
  • 不做:不展示或保存 Token、Authorization、完整 JSON;不提供网页重放/修改批次;不让采购员查看系统级导入详情(MVP 默认管理员可见)。

怎么做

  • 预计新增 integration 查询 handler、Admin Web handler/templates、service/repository 分页查询和测试;页面沿用顶部工具条/表格/右下角状态与分页。
  • 列表展示来源、batch_id、状态、请求次数、首次/最后接收时间、observed_at、完成时���、耗时和四类新增/更新/冲突/失败计数。
  • 详情只展示失败/冲突项的数组位置、业务 ID、错误码、摘要和可重试标记;长错误做长度上限。
  • 相同内容幂等重放不新增批次,只增加请求次数和最后请求时间;同 batch_id 不同内容记录冲突尝试。

验收标准

  • 第三方脚本可用 batch_id 查询成功、处理中、失败和冲突结果。
  • 管理员可分页筛选并查看批次详情,采购员访问返回 403/无入口。
  • 幂等重放只更新请求次数/最后时间,不重复生成记录。
  • 页面和接口都不包含 Token、Authorization、Cookie 或完整请求体。
  • 1000 条记录下分页计数、排序和筛选使用数据库查询且结果正确。
  • 蝦皮和 PDD 页面都能进入同一导入记录页。

怎么验证

Go 1.23 build/test/vet;httptest 覆盖 API 查询和管理员/采购员权限;repository 测试覆盖分页、筛选和幂等请求次数;1366×768 人工检查列表与详情页面。

风险和回退

查询接口和页面可独立移除;批次基础表保留给导入幂等,不因 UI 回退删除审计记录。

实施记录

  • 代码提交:3ac4467
  • 归档提交:8f68845
  • 归档:docs/task/134-商品目录导入记录.md
  • Go 1.23 build/test/vet 全部通过;未做 1366×768 浏览器人工视觉检查。
## 基本信息 - 类型:需求 - 父级大工单:#14 - 所属 MVP / 版本:#15 - 阶段:商品目录导入可观测性 - 依赖:#132、#133 - 状态:待验收 ## 要解决什么 第三方脚本提交后需要查询批次结果,管理员也需要查看每批数据的状态、数量和失败原因。完整原始请求不应落库或展示,但不能只靠短期日志排错。 ## 做什么 / 不做什么 - 做:实现 GET /api/v1/integrations/catalog/batches/:batch_id;新增管理员网页 /integrations/catalog 的分页导入记录和详情;在蝦皮/PDD 页提供统一“导入记录”入口。 - 不做:不展示或保存 Token、Authorization、完整 JSON;不提供网页重放/修改批次;不让采购员查看系统级导入详情(MVP 默认管理员可见)。 ## 怎么做 - 预计新增 integration 查询 handler、Admin Web handler/templates、service/repository 分页查询和测试;页面沿用顶部工具条/表格/右下角状态与分页。 - 列表展示来源、batch_id、状态、请求次数、首次/最后接收时间、observed_at、完成时���、耗时和四类新增/更新/冲突/失败计数。 - 详情只展示失败/冲突项的数组位置、业务 ID、错误码、摘要和可重试标记;长错误做长度上限。 - 相同内容幂等重放不新增批次,只增加请求次数和最后请求时间;同 batch_id 不同内容记录冲突尝试。 ## 验收标准 - [x] 第三方脚本可用 batch_id 查询成功、处理中、失败和冲突结果。 - [x] 管理员可分页筛选并查看批次详情,采购员访问返回 403/无入口。 - [x] 幂等重放只更新请求次数/最后时间,不重复生成记录。 - [x] 页面和接口都不包含 Token、Authorization、Cookie 或完整请求体。 - [x] 1000 条记录下分页计数、排序和筛选使用数据库查询且结果正确。 - [x] 蝦皮和 PDD 页面都能进入同一导入记录页。 ## 怎么验证 Go 1.23 build/test/vet;httptest 覆盖 API 查询和管理员/采购员权限;repository 测试覆盖分页、筛选和幂等请求次数;1366×768 人工检查列表与详情页面。 ## 风险和回退 查询接口和页面可独立移除;批次基础表保留给导入幂等,不因 UI 回退删除审计记录。 ## 实施记录 - 代码提交:3ac4467 - 归档提交:8f68845 - 归档:docs/task/134-商品目录导入记录.md - Go 1.23 build/test/vet 全部通过;未做 1366×768 浏览器人工视觉检查。
Author
Owner

用户于 2026-08-12 明确验收通过。已确认本地归档 docs/task/134-商品目录导入记录.md 存在,现关闭工单。

用户于 2026-08-12 明确验收通过。已确认本地归档 `docs/task/134-商品目录导入记录.md` 存在,现关闭工单。
ila closed this issue 2026-08-12 10:31:43 +08:00
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: chengma/cmautobuy#134