顺运宝列表顶部批量创建 PDD 采集任务已经可以选择执行客户端,但以下两条单条创建路径没有客户端选择:
根因是详情模板 /syb/collect-pdd 表单没有 client_id,详情 Handler 没加载当前账号可见客户端,提交 Handler 又固定调用传空客户端的单条包装函数。因此任务总是以无主 pending 创建。后端批量 Service 本身已支持可选客户端并校验当前账号可见范围。
/syb/collect-pdd
client_id
pending
做:
syb_id
assigned
不做:
SybDetail
syb/detail_modal
<label>
<select>
SybCollectPdd
CreateSybPddCollectTasksForUser(db, actor, []string{sybID}, clientID)
预计修改:
admin/handler/web/others.go
admin/templates/syb/detail_modal.html
admin/handler/web/others_test.go
admin/service/shopee_pdd_test.go
admin/main_test.go
docs/admin/05-ui-specification.md
assigned_client
go vet ./...
go build ./...
go test ./... -count=1
Set-Location admin $env:GOTOOLCHAIN='go1.23.0' go vet ./... go build ./... go test ./... -count=1
网页验收:登录���购员账号,分别从商品详情和列表“下一步”进入单条创建;验证不指定、指定本人可见客户端以及伪造不可见客户端三种情况。
currentUser
已完成代码实现与本地验证,进入生产部署:
f693d2a
354aa6b
docs/task/174-顺运宝单条采集客户端选择.md
生产部署与健康检查结果将在完成后继续回写。
生产部署完成,工单保持“待验收”:
df269f163ec8b565553a0b436bc807e3383a9cc468480ae932a0f106db6b5bf1
active
https://buy.833729.com/login
panic/fatal/迁移失败/数据库连接失败/进程失败
/opt/cmautobuy/backups/autobuy-before-354aa6b-retry-20260812T020301Z.sql.gz
e80e021
发布过程说明:首次暂存版本误将 config.yaml、data 链接到服务器上不存在的 /opt/cmautobuy/shared/,程序报“无法确定 data 目录”并退出。已立即回退到 e80e021 恢复公网 200;随后按正常版本的实际结构修正为 /opt/cmautobuy/config.yaml 与 /opt/cmautobuy/data,在旁路端口验证 200 后重新备份、切换并完成上述检查。该问题属于发布目录配置,不涉及代码或数据库迁移。
config.yaml
data
/opt/cmautobuy/shared/
/opt/cmautobuy/config.yaml
/opt/cmautobuy/data
用户于 2026-08-13 明确验收通过。工单已完成归档,现关闭工单。
No dependencies set.
The note is not visible to the blocked user.
基本信息
要解决什么
顺运宝列表顶部批量创建 PDD 采集任务已经可以选择执行客户端,但以下两条单条创建路径没有客户端选择:
根因是详情模板
/syb/collect-pdd表单没有client_id,详情 Handler 没加载当前账号可见客户端,提交 Handler 又固定调用传空客户端的单条包装函数。因此任务总是以无主pending创建。后端批量 Service 本身已支持可选客户端并校验当前账号可见范围。做什么 / 不做什么
做:
syb_id和client_id。assigned,不指定时为pending。不做:
怎么做
SybDetail查询当前账号可见客户端,并把列表传给syb/detail_modal。<label>和原生<select>;首项为“不指定(任意客户端可领取)”,并提供指定/不指定含义的辅助文字。SybCollectPdd读取client_id,调用CreateSybPddCollectTasksForUser(db, actor, []string{sybID}, clientID),复用现有可见范围校验、阶段校验、事务和来源关联。预计修改:
admin/handler/web/others.goadmin/templates/syb/detail_modal.htmladmin/handler/web/others_test.goadmin/service/shopee_pdd_test.go(按需要补充)admin/main_test.go或模板专项测试docs/admin/05-ui-specification.md验收标准
pending且assigned_client为空。assigned,assigned_client为所选客户端。client_id时不创建任务并返回明确提示。go vet ./...、go build ./...、go test ./... -count=1通过。怎么验证
网页验收:登录���购员账号,分别从商品详情和列表“下一步”进入单条创建;验证不指定、指定本人可见客户端以及伪造不可见客户端三种情况。
风险和回退
currentUser查询可见范围,提交时再次校验。已完成代码实现与本地验证,进入生产部署:
f693d2a(详情加载当前账号可见客户端,单条入口复用批量 Service,补充模板和真实 MySQL 服务测试)354aa6bdocs/task/174-顺运宝单条采集客户端选择.mdgo vet ./...、go build ./...、go test ./... -count=1全部通过;指定/不指定/不可见客户端场景通过临时 MySQL 8 数据库验证。生产部署与健康检查结果将在完成后继续回写。
生产部署完成,工单保持“待验收”:
354aa6b(功能实现提交f693d2a)df269f163ec8b565553a0b436bc807e3383a9cc468480ae932a0f106db6b5bf1active,服务器本机登录页 200,公网https://buy.833729.com/login200,开发机访问公网 200panic/fatal/迁移失败/数据库连接失败/进程失败为 0/opt/cmautobuy/backups/autobuy-before-354aa6b-retry-20260812T020301Z.sql.gz已通过 gzip 完整性检查;上一版e80e021保留发布过程说明:首次暂存版本误将
config.yaml、data链接到服务器上不存在的/opt/cmautobuy/shared/,程序报“无法确定 data 目录”并退出。已立即回退到e80e021恢复公网 200;随后按正常版本的实际结构修正为/opt/cmautobuy/config.yaml与/opt/cmautobuy/data,在旁路端口验证 200 后重新备份、切换并完成上述检查。该问题属于发布目录配置,不涉及代码或数据库迁移。用户于 2026-08-13 明确验收通过。工单已完成归档,现关闭工单。