Document upload concurrency and visible selection behavior (#30 #31)

ila
2026-10-05 18:01:03 +08:00
parent 9ebe51001e
commit bbb42cb37c
+4 -2
@@ -4,6 +4,8 @@
单商品显示远端已有视频的覆盖警告;批量发现远端已有视频则跳过。上传文件取 Shopee ID 子目录下排序首个 mp4,先完成时长、格式、像素与大小校验。写入前在 SQLite 持久化幂等键。HTTP 202 和 `processing`/`unknown` 均不代表成功;再次操作仅查询原键,`succeeded` 才更新本地视频与上传状态。ERPGo 预检返回 200 且 `video: []` 时才确认远端当前无视频;返回 502 / `HHH_UPSTREAM_ERROR` / `stage=check` 表示视频状态未知,显示“视频状态无法确认,上传未提交”,不创建上传操作、不发送 PUT,保留本地 MP4 与 requestId。批量路径的该商品上传状态为 `unconfirmed`,不记作上传失败。`tempVideoUrl` 或 `videoUploadIdStr` 非空表示远端仍有处理中标记:单商品预览停止,执行前再次检查;批量遇到该商品标为待处理,不创建新操作、不发送 PUT。只有普通已存在视频且没有处理中标记时,单商品才可在明确覆盖确认后继续。用户确认后弹窗立即关闭,上传按钮在调用期间继续显示运行中;弹窗关闭不代表远端成功。单商品已有本地未决操作时,确认框改为“恢复原上传操作”,只查询或恢复原键,不提示覆盖、不发新 PUT;操作明确失败后才按新上传流程检查当前视频。远端操作 processing/unknown 或操作查询异常保留原键,商品上传状态为 `unconfirmed`,列表显示“待确认”;只有本次操作返回 `succeeded` 才显示“已上传”。
批量上传同时处理的不同商品数由本机 `upload.concurrency` 控制,默认 1、允许 1—4;参数设置页可修改并保存到 `config.yaml`。每件商品独立保存原幂等键;未决操作仍只查询、不重新提交。一个批次同一时刻只运行一组任务,用户需先明确勾选并确认。
## 未选择店铺的同步范围(2026-09-29,#26)
@@ -15,7 +17,7 @@
## 本地商品列表每页条数(2026-09-29)
分页栏可选20、50、100、200、500条,默认及重置20。切换每页条数后回到第一页、保留店铺/诊断/下载/上传等筛选、清空旧勾选;列表总数仍为全部匹配记录数。500条是显示范围,不表示自动批量处理500条,批量操作仍需勾选。
分页栏可选20、50、100、200、500条,默认及重置20。切换每页条数后回到第一页、保留店铺/诊断/下载/上传等筛选、清空旧勾选;列表总数仍为全部匹配记录数。500条是显示范围,不表示自动批量处理500条,批量操作仍需勾选。新搜索/重置和翻页清空旧勾选;后台刷新移除当前页不可见 ID,表头全选仅覆盖当前页,弹窗和实际处理只使用当前页可见的勾选。
后端本地查询允许1—500条,无效值回退20;空页仍返回匹配总数。分页只读取SQLite,不扫描或改写任务数据,不修改 erpgo 接口分页大小或外部同步规则。
@@ -129,7 +131,7 @@ MTOP 搜索方式、签名与请求参数保持现状。商品原链接以实际
- erpgo 已提供 Shopee 商品视频上传与操作查询契约;实际 Shopee 发布生效时间和独立验证仍待真实业务验收。
- SQLite 表结构与迁移方式。
- 并发下载与上传的默认并发数,以及淘宝风控的实际容忍阈值。
- 淘宝风控的实际容忍阈值。
- 视频与商品的匹配规则:一个商品搜到多个同款时,选哪一个的视频,是否需要人工确认。
- 失败重试策略:哪些失败自动重试、重试几次、哪些必须人工介入。
- Shopee 侧的实际生效延迟与验证方式。