移除 SYB 商品页同步提示并集中到执行记录 #77

Closed
opened 2026-08-24 16:39:55 +08:00 by ila · 2 comments
Owner

原始需求摘要

  • 来源:用户对话。
  • 提出时间:2026-08-24。
  • 用户确认:SYB 同步已经迁移到定时任务后,不应在 SYB 商品页面显示同步成功、失败、运行中状态或弹窗;同步结果应与商品业务页面解耦,集中放到同步记录,并可从对应定时任务进入执行记录。

当前事实

  • #75 已实现每小时 SYB 自动同步,并保留独立路由 /syb-sync-runs/index 和只读同步记录 API。
  • SYB 商品页目前仍在加载时查询最近同步记录;运行中每 3 秒轮询,结束后刷新商品列表并弹出成功/失败消息,同时页面顶部显示同步状态横幅。
  • go-admin 定时任务页可展示任务名称、Cron、调用目标和启停状态,但对应的 GoAutoSYBHourlySync 行没有进入业务同步记录的快捷入口。
  • 独立同步记录页已能展示状态、时间范围、进度、数量、操作人、失败原因和店铺统计。

目标与方案

  1. SYB 商品页完全移除同步状态横幅、最近记录查询、同步轮询以及完成/失败消息。
  2. SYB 商品页只加载商品和采购准备数据;后台同步状态变化不再主动刷新或打断该页面,用户按查询、分页或刷新页面获取最新数据。
  3. 保留并完善独立“同步记录”页作为 SYB 同步结果的唯一 Web 展示位置:
    • 列表展示每次同步的简要结果;
    • 详情展示失败原因、进度和店铺统计;
    • 文案改为自动同步语义,失败时说明系统会在下个调度周期重试,不再提示回商品页手工导入。
  4. 在 go-admin 定时任务列表中,仅对调用目标为 GoAutoSYBHourlySync 的行增加“执行记录”操作,跳转到 /syb-sync-runs/index。
  5. 不把 SYB 业务结果混入通用 WebSocket“日志”;通用定时任务仍使用原有“日志”能力。
  6. 不修改同步服务、Cron、数据库、接口、权限、并发与重试策略。

设计证据

复用现有 SYB 商品页、定时任务页、同步记录页和 Element Plus 组件,不新增页面或主要流程。本次是对 #75 存量交互的边界修正,采用以下标注式低保真说明:

SYB 商品:
[已选择] [店铺] [订单号] [解析状态] [查询] [重置] [创建采购]
(无同步横幅、无同步弹窗、无同步轮询)

定时任务 / “SYB 每小时自动同步”行:
[修改] [启动/停止] [执行记录] [删除]
                         │
                         └──> SYB 同步记录

同步记录:
[状态] [日期范围] [查询] [重置]
列表:范围 | 状态 | 进度 | 数量 | 操作人 | 开始时间 | 详情

状态覆盖:

  • SYB 商品页:同步运行、成功、失败均不显示提示,也不请求同步记录接口。
  • 同步记录页:空、加载、失败、运行中、成功、失败、已中断继续使用现有状态。
  • 定时任务页:非 SYB 任务不显示“执行记录”;SYB 任务显示明确文字按钮,支持键盘焦点。
  • 页面权限沿用现有路由和接口权限,不扩大访问范围。

本次属于现有页面小范围行为修正,用户已确认文字方案;不新增 QuantUX/HTML 原型。

子项目影响与依赖

  • 仅 web 及长期业务规则 Wiki。
  • 依赖 #75 的自动同步、独立同步记录页和 GoAutoSYBHourlySync 调用目标;可在 #75 待验收期间作为其后续修正实施。
  • 不影响 Server、Android、PDD、采购状态机或支付边界。
  • 不需要数据库迁移,不触发高风险迁移门禁。

验收标准

  • 进入或刷新 SYB 商品页时不再请求 /syb-products/sync-runs。
  • SYB 商品页不显示同步运行、成功、失败或中断横幅,不弹同步结果消息。
  • 后台同步状态变化不会触发 SYB 商品页轮询;商品查询、筛选、采购入口不回归。
  • 独立同步记录页继续显示历史与运行中记录,并能查看失败原因和店铺统计。
  • 同步记录页文案符合定时自动同步语义,不再提示返回商品页手工导入。
  • 定时任务列表的 GoAutoSYBHourlySync 行显示“执行记录”,点击进入 SYB 同步记录页。
  • 其他定时任务不显示 SYB“执行记录”入口,原有修改、启停、删除、通用日志能力不受影响。
  • Web ESLint、生产构建和相关 Playwright 回归通过。

风险与回退

  • 移除商品页同步完成后的自动刷新后,已经停留在该页的用户需主动查询或刷新才能看到后台新数据;这是用户确认的页面解耦结果。
  • 可回退本工单 Web 提交,恢复 #75 的横幅和轮询。

文档影响

有长期文档影响:更新 Wiki “Business Rules and Glossary”中 SYB 自动同步的展示边界,然后在线回读 revision,并同步核心镜像。架构、API、配置、数据库和安全规则不变。

## 原始需求摘要 - 来源:用户对话。 - 提出时间:2026-08-24。 - 用户确认:SYB 同步已经迁移到定时任务后,不应在 SYB 商品页面显示同步成功、失败、运行中状态或弹窗;同步结果应与商品业务页面解耦,集中放到同步记录,并可从对应定时任务进入执行记录。 ## 当前事实 - #75 已实现每小时 SYB 自动同步,并保留独立路由 `/syb-sync-runs/index` 和只读同步记录 API。 - SYB 商品页目前仍在加载时查询最近同步记录;运行中每 3 秒轮询,结束后刷新商品列表并弹出成功/失败消息,同时页面顶部显示同步状态横幅。 - go-admin 定时任务页可展示任务名称、Cron、调用目标和启停状态,但对应的 `GoAutoSYBHourlySync` 行没有进入业务同步记录的快捷入口。 - 独立同步记录页已能展示状态、时间范围、进度、数量、操作人、失败原因和店铺统计。 ## 目标与方案 1. SYB 商品页完全移除同步状态横幅、最近记录查询、同步轮询以及完成/失败消息。 2. SYB 商品页只加载商品和采购准备数据;后台同步状态变化不再主动刷新或打断该页面,用户按查询、分页或刷新页面获取最新数据。 3. 保留并完善独立“同步记录”页作为 SYB 同步结果的唯一 Web 展示位置: - 列表展示每次同步的简要结果; - 详情展示失败原因、进度和店铺统计; - 文案改为自动同步语义,失败时说明系统会在下个调度周期重试,不再提示回商品页手工导入。 4. 在 go-admin 定时任务列表中,仅对调用目标为 `GoAutoSYBHourlySync` 的行增加“执行记录”操作,跳转到 `/syb-sync-runs/index`。 5. 不把 SYB 业务结果混入通用 WebSocket“日志”;通用定时任务仍使用原有“日志”能力。 6. 不修改同步服务、Cron、数据库、接口、权限、并发与重试策略。 ## 设计证据 复用现有 SYB 商品页、定时任务页、同步记录页和 Element Plus 组件,不新增页面或主要流程。本次是对 #75 存量交互的边界修正,采用以下标注式低保真说明: ```text SYB 商品: [已选择] [店铺] [订单号] [解析状态] [查询] [重置] [创建采购] (无同步横幅、无同步弹窗、无同步轮询) 定时任务 / “SYB 每小时自动同步”行: [修改] [启动/停止] [执行记录] [删除] │ └──> SYB 同步记录 同步记录: [状态] [日期范围] [查询] [重置] 列表:范围 | 状态 | 进度 | 数量 | 操作人 | 开始时间 | 详情 ``` 状态覆盖: - SYB 商品页:同步运行、成功、失败均不显示提示,也不请求同步记录接口。 - 同步记录页:空、加载、失败、运行中、成功、失败、已中断继续使用现有状态。 - 定时任务页:非 SYB 任务不显示“执行记录”;SYB 任务显示明确文字按钮,支持键盘焦点。 - 页面权限沿用现有路由和接口权限,不扩大访问范围。 本次属于现有页面小范围行为修正,用户已确认文字方案;不新增 QuantUX/HTML 原型。 ## 子项目影响与依赖 - 仅 `web` 及长期业务规则 Wiki。 - 依赖 #75 的自动同步、独立同步记录页和 `GoAutoSYBHourlySync` 调用目标;可在 #75 待验收期间作为其后续修正实施。 - 不影响 Server、Android、PDD、采购状态机或支付边界。 - 不需要数据库迁移,不触发高风险迁移门禁。 ## 验收标准 - [ ] 进入或刷新 SYB 商品页时不再请求 `/syb-products/sync-runs`。 - [ ] SYB 商品页不显示同步运行、成功、失败或中断横幅,不弹同步结果消息。 - [ ] 后台同步状态变化不会触发 SYB 商品页轮询;商品查询、筛选、采购入口不回归。 - [ ] 独立同步记录页继续显示历史与运行中记录,并能查看失败原因和店铺统计。 - [ ] 同步记录页文案符合定时自动同步语义,不再提示返回商品页手工导入。 - [ ] 定时任务列表的 `GoAutoSYBHourlySync` 行显示“执行记录”,点击进入 SYB 同步记录页。 - [ ] 其他定时任务不显示 SYB“执行记录”入口,原有修改、启停、删除、通用日志能力不受影响。 - [ ] Web ESLint、生产构建和相关 Playwright 回归通过。 ## 风险与回退 - 移除商品页同步完成后的自动刷新后,已经停留在该页的用户需主动查询或刷新才能看到后台新数据;这是用户确认的页面解耦结果。 - 可回退本工单 Web 提交,恢复 #75 的横幅和轮询。 ## 文档影响 有长期文档影响:更新 Wiki “Business Rules and Glossary”中 SYB 自动同步的展示边界,然后在线回读 revision,并同步核心镜像。架构、API、配置、数据库和安全规则不变。
Author
Owner

#77 已实施并推送,当前保持待验收。

实现:

  • SYB 商品页已移除最近同步记录查询、状态横幅、3 秒轮询及成功/失败消息;后台同步不会再打断商品操作。
  • 独立页面更名为“SYB 同步记录”,保留运行进度、结果、失败原因和店铺统计,并改为下个调度周期重试的自动同步语义。
  • go-admin 定时任务列表仅对 GoAutoSYBHourlySync 显示“执行记录”,点击进入 SYB 同步记录;其他任务不显示该入口。
  • 未修改 Server、数据库、Cron、权限、同步互斥、Android、采购或支付边界。

验证:

  • pnpm lint:0 errors;保留上游既有 30 warnings。
  • pnpm build:prod:通过;保留上游既有 CSS/大 chunk 警告。
  • pnpm exec playwright test tests/e2e/syb-product-layout.spec.ts tests/e2e/syb-sync-run.spec.ts:5 passed。
  • Playwright 已验证商品页等待 3.5 秒仍不请求 sync-runs、不重复刷新商品、不显示同步状态;定时任务仅一个“执行记录”入口并能跳转。
  • python dev_scripts/harness.py check --strict、git diff --check:通过。
  • Wiki “Business Rules and Glossary”已在线更新并回读,revision 8e5668f30853e7afa2c03186ff882458a5d15d9c;核心镜像 sync --check 通过。

提交:3261561(已推送 main)。

遗留说明:

  • 移除商品页同步完成后的自动刷新后,停留页面需主动点击查询或刷新才能读取后台新数据,这是本工单确认的解耦行为。
  • 工作区原有未跟踪文件 gitea.zip 未触碰。
#77 已实施并推送,当前保持待验收。 实现: - SYB 商品页已移除最近同步记录查询、状态横幅、3 秒轮询及成功/失败消息;后台同步不会再打断商品操作。 - 独立页面更名为“SYB 同步记录”,保留运行进度、结果、失败原因和店铺统计,并改为下个调度周期重试的自动同步语义。 - go-admin 定时任务列表仅对 `GoAutoSYBHourlySync` 显示“执行记录”,点击进入 SYB 同步记录;其他任务不显示该入口。 - 未修改 Server、数据库、Cron、权限、同步互斥、Android、采购或支付边界。 验证: - `pnpm lint`:0 errors;保留上游既有 30 warnings。 - `pnpm build:prod`:通过;保留上游既有 CSS/大 chunk 警告。 - `pnpm exec playwright test tests/e2e/syb-product-layout.spec.ts tests/e2e/syb-sync-run.spec.ts`:5 passed。 - Playwright 已验证商品页等待 3.5 秒仍不请求 `sync-runs`、不重复刷新商品、不显示同步状态;定时任务仅一个“执行记录”入口并能跳转。 - `python dev_scripts/harness.py check --strict`、`git diff --check`:通过。 - Wiki “Business Rules and Glossary”已在线更新并回读,revision `8e5668f30853e7afa2c03186ff882458a5d15d9c`;核心镜像 `sync --check` 通过。 提交:`3261561`(已推送 `main`)。 遗留说明: - 移除商品页同步完成后的自动刷新后,停留页面需主动点击查询或刷新才能读取后台新数据,这是本工单确认的解耦行为。 - 工作区原有未跟踪文件 `gitea.zip` 未触碰。
Author
Owner

用户于 2026-08-28 明确确认本工单验收通过。按项目流程记录验收结论并关闭工单;本次仅更新工单状态,无新增长期文档事实,不重复同步 Wiki。

用户于 2026-08-28 明确确认本工单验收通过。按项目流程记录验收结论并关闭工单;本次仅更新工单状态,无新增长期文档事实,不重复同步 Wiki。
ila closed this issue 2026-08-28 15:07:34 +08:00
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: OPC/goauto#77