feat(generate): filter tasks by product status

This commit is contained in:
chengma
2026-07-20 10:32:04 +08:00
parent 9852b1c9c1
commit fa101c16ce
4 changed files with 75 additions and 10 deletions
+10 -7
View File
@@ -1,7 +1,7 @@
---
id: T-671
title: AI生成商品状态筛选与生成状态命名
status: TODO
status: DONE
phase: 7
deps: [T-669]
created: 2026-07-20
@@ -23,11 +23,11 @@ created: 2026-07-20
## 验收标准
- [ ] ②筛选行显示「商品状态」和「生成状态」两个明确标签,商品状态位于生成状态左侧。
- [ ] 商品状态下拉能分别筛出架上商品、未上架、审核中、状态未知和待检测,并可与生成状态、批次、店铺、商品 ID 筛选叠加。
- [ ] 商品状态筛选不会改变 SQLite 数据、标题/封面生成结果或进度状态。
- [ ] 筛选异常商品后点击开始生成,默认范围仍不执行异常商品;只有用户在确认框主动选择「生成全部商品」才会执行。
- [ ] `tests/test_gui.py` 覆盖控件顺序和中文标签、筛选交集、NULL/unknown 区分,以及异常筛选下生成范围确认仍生效。
- [x] ②筛选行显示「商品状态」和「生成状态」两个明确标签,商品状态位于生成状态左侧。
- [x] 商品状态下拉能分别筛出架上商品、未上架、审核中、状态未知和待检测,并可与生成状态、批次、店铺、商品 ID 筛选叠加。
- [x] 商品状态筛选不会改变 SQLite 数据、标题/封面生成结果或进度状态。
- [x] 筛选异常商品后点击开始生成,默认范围仍不执行异常商品;只有用户在确认框主动选择「生成全部商品」才会执行。
- [x] `tests/test_gui.py` 覆盖控件顺序和中文标签、筛选交集、NULL/unknown 区分,以及异常筛选下生成范围确认仍生效。
## 验证
@@ -47,4 +47,7 @@ git diff --check
## 执行记录
- 待实现。
- ②筛选行新增「商品状态」下拉,原「状态」改名为「生成状态」;商品状态使用 T-669 的共享选项和原始空值识别,与批次、店铺、商品 ID、生成状态叠加筛选。
- 开始生成仍只从当前筛选后的 `model.tasks` 取候选,并继续执行既有商品状态范围确认;异常商品在默认「生成架上商品」范围内不入队。
- 更新路由文档,并补充控件标签、组合筛选、待检测/状态未知与默认安全计划的 GUI 回归测试。
- 验证通过:`py -3.10 -m unittest discover -s tests`(623 项)、`py -3.10 -m ruff check app tests main.py`、`py -3.10 -m compileall app main.py`、`git diff --check`。