feat: split generate title and image statuses
This commit is contained in:
+9
-1
@@ -3,7 +3,7 @@ id: T-554
|
||||
title: ②AI生成表格拆分标题/图片状态列并调整列宽
|
||||
phase: 7
|
||||
deps: [T-533, T-519, T-552, T-523]
|
||||
status: TODO
|
||||
status: DONE
|
||||
created: 2026-07-08
|
||||
---
|
||||
|
||||
@@ -33,6 +33,7 @@ created: 2026-07-08
|
||||
- `stage=collected` 且无标题:标题状态显示「待生成」。
|
||||
- 本轮未启用生成封面,或任务已生成标题但没有新封面且没有图片失败时,图片状态显示「未启用」;若需要生成封面但还没生成,则显示「待生成」。第一版可通过 ②当前「生成封面图片(成本较高)」开关参与推导,不写入 DB。
|
||||
- `stage=imported`:两个状态均显示「未采集」。
|
||||
- 若任务是采集阶段失败(有 `collect_attempts`、无 `generate_attempts`),两个状态列显示「采集失败」,避免旧整体状态的信息丢失。
|
||||
- `stage=applied`:按已有结果显示,标题/图片已有值则显示「已生成」,没有图片则显示「未启用」。
|
||||
|
||||
3. **列宽调整**
|
||||
@@ -56,3 +57,10 @@ created: 2026-07-08
|
||||
|
||||
只改②AI生成表格展示、状态推导和列宽;不改 DB schema、`tasks.stage/status` 语义、AI 生成编排、cmhub HTTP、运行日志、底部进度条、Excel、Shopee/CDP。
|
||||
|
||||
## 执行记录
|
||||
|
||||
- 2026-07-08:完成 T-554。
|
||||
- 代码:`app/gui/models.py` 将 `GenerateTaskTableModel` 表头改为 `店铺 / 商品ID / 旧标题 / 新标题 / 标题状态 / 图片状态`,新增标题/图片组件状态推导;采集失败保留显示「采集失败」,生成阶段标题失败/图片失败分别显示在对应状态列,tooltip 继续显示完整 `last_error`。
|
||||
- 代码:`app/gui/tabs/generate.py` 将②表格表头从等宽 Stretch 改为权重列宽,权重为 `1.0 / 0.5 / 1.0 / 1.0 / 1.25 / 1.25`;刷新、窗口 resize、splitter 移动时重新应用列宽;当前「生成封面图片(成本较高)」开关联动图片状态的「待生成 / 未启用」展示。
|
||||
- 测试:`tests/test_gui.py` 更新表头断言、旧整体状态断言和 tooltip 列号,新增 `test_generate_table_splits_title_and_cover_statuses_and_widths` 覆盖采集失败、标题失败、图片失败、标题成功图片未启用、开启封面后的待生成状态,以及商品ID列宽小于普通列、两个状态列宽基本相等且大于普通列。
|
||||
- 验证:`py -3.10 -m unittest tests.test_gui` 通过(105 tests);`python -m ruff check app tests main.py` 通过;`py -3.10 -m compileall app main.py` 通过;`git diff --check` 通过;`py -3.10 -m unittest discover -s tests` 通过(258 tests)。
|
||||
|
||||
Reference in New Issue
Block a user