Files
cmautobuy/docs/task/138-批量重新采集并拆分任务执行按钮.md
T

2.1 KiB

138 批量重新采集并拆分任务执行按钮

  • 类型:需求
  • 父级大工单:#1
  • 所属 MVP / 版本:#2
  • 状态:已完成,用户验收通过
  • 日期:2026-08-11
  • Gitea 工单:#138

背景与目标

原“重新执行”只支持一条采集任务。改为独立的“重新采集”按钮,支持从勾选记录中过滤采购任务,并把可执行的采集任务加入串行队列。

最终方案

Repository 统一完成批量预检,返回可执行、类型过滤和安全阻止三类结果。用户确认后,固定 Android 设备线程按任务编号逐条重新采集;开始每一条前再次校验状态,避免确认后状态变化造成重复执行。

改了哪些

  • client/src/pdd_ui.py:增加批量重新采集交互,并调整操作按钮顺序。
  • client/src/pdd_ui_event.py:增加批量确认、串行队列、停止和结果汇总。
  • client/src/task_models.py、client/src/task_repository.py:增加批量命令、预检结果和数据库安全校验。
  • client/test/:补充多选按钮、批量分类和原流程回归测试。
  • client/AGENTS.md、docs/client/:同步稳定交互和线程规则。

验收结果

验收标准 结果
“重新执行”拆为“重新采集”和“重新采购” 通过
多选后只把采集任务加入重新采集队列 通过
确认框显示可执行、过滤和阻止数量 通过
固定设备线程逐条执行,停止后不启动剩余任务 通过(自动测试);真机待验收
完成后显示成功、失败和跳过数量 通过

测试

  • 执行的命令:C:/Python310/python.exe -m unittest discover -v -s test -p 'test_*.py'
  • 结果:370 项测试全部通过。
  • 执行的命令:延迟关闭的 PyQt5 离屏 MainWindow 冒烟测试。
  • 结果:输出 SMOKE_OK。
  • 没验证到的部分:未连接真实 Android 设备执行多条 PDD 重新采集;需要用户真机验收。

相关提交

  • 598c808 增加批量重新采集和安全重新采购