Files
cmautobuy/docs/task/174-顺运宝单条采集客户端选择.md
T
2026-08-12 09:57:39 +08:00

3.0 KiB

174 顺运宝单条采集客户端选择

背景与目标

顺运宝列表的批量创建采集任务支持指定客户端,但从商品详情或列表“下一步”进入详情后,单条创建和重新创建采集任务没有客户端选择,任务只能保持未分配。此次统一两个入口的能力,让采购员既可以指定当前账号可见的客户端,也可以继续使用默认的任意客户端领取方式。

最终方案

  • 顺运宝商品详情加载当前账号可见的客户端,并在创建、重新创建采集任务的表单中展示客户端下拉框。
  • 下拉框默认选择“不指定(任意客户端可领取)”,指定时显示客户端名称、编号和状态,并用辅助文字解释分配效果。
  • 单条入口复用批量创建的服务方法,以单个顺运宝记录编号调用,统一执行客户端可见性、处理阶段、重复任务和任务分配校验。
  • 不修改数据库结构、客户端领取接口以及顺运宝批量创建任务的既有行为。

改了哪些

  • admin/handler/web/others.go:详情接口加载可分配客户端;单条创建改用支持 client_id 的统一服务方法。
  • admin/templates/syb/detail_modal.html:增加执行客户端选择、默认不指定选项和分配说明。
  • admin/service/shopee_pdd_test.go:验证默认未分配、指定可见客户端和拒绝不可见客户端。
  • admin/syb_interaction_template_test.go:验证详情模板的客户端选择及提示内容。
  • docs/admin/05-ui-specification.md:补充顺运宝单条采集任务的客户端选择规范。

验收结果

验收标准 结果
详情中的创建和重新创建采集任务均展示当前账号可见的客户端 通过
客户端默认不指定,任务可由任意符合条件的客户端领取 通过
指定客户端后任务只分配给所选客户端 通过
不可见客户端不能通过构造请求完成分配 通过
单条与批量入口共用服务校验,既有批量行为不变 通过
Go 测试、静态检查和构建通过 通过

测试

  • 执行的命令:
    • GOTOOLCHAIN=go1.23.0 go test ./service -run 'TestCreateSybPddCollectTasksForUser_(同一PDD商品去重|指定可见客户端|拒绝不可见客户端)' -count=1
    • GOTOOLCHAIN=go1.23.0 go vet ./...
    • GOTOOLCHAIN=go1.23.0 go build ./...
    • GOTOOLCHAIN=go1.23.0 go test ./... -count=1
    • git diff --check
  • 结果:目标服务测试连接临时 MySQL 8 数据库通过;全量测试、静态检查、构建和补丁格式检查均通过。
  • 没验证到的部分:未在生产数据上实际创建采集任务,避免产生业务任务;生产部署后仅执行服务和页面健康检查。

相关提交

  • f693d2a 修复顺运宝单条采集客户端选择