Files
cmautobuy/docs/task/160-安全点击图片型颜色并取消默认尺码.md

2.7 KiB
Raw Permalink Blame History

#160 Client:安全点击图片型颜色并取消默认尺码

背景与目标

图片型颜色卡片同时包含商品图片、打开大图入口和底部颜色文字。旧代码点击整个 卡片中心,可能误入大图页。部分商品还会默认选中尺码,导致部分颜色不可选。

目标是在逐色采价前只取消一次明确选中的默认尺码,并保证图片型颜色只点击底部 文字区域;全部颜色处理完后仍继续采集尺码。

最终方案

  1. 进入规格面板后向下寻找尺码;只有发现唯一选中尺码时才点击一次,并用最新 控件树验证是否取消。
  2. 页面不支持取消时不重试,随后恢复到规格面板顶部和颜色列表左端。
  3. 图片型颜色优先使用同名 TextView 的坐标,排除 ImageView 和“打开大图” 区域;没有安全文字坐标时该颜色价格留空。
  4. 使用 ViewPager 与页码共同识别误入大图;最多按一次返回键,确认恢复规格 面板后继续,恢复失败则安全终止。
  5. 保留现有蛇形逐色采价、颜色缺价兼容和最终尺码只读采集流程。

最终实现与建单方案一致,未修改数据库、Admin 接口或 pdd_data 结构。

改了哪些文件

  • client/src/pdd_collect_service.py:增加默认尺码取消、安全文字点击和大图恢复。
  • client/test/test_pdd_collect_service.py:增加图片颜色、默认尺码和大图恢复测试。

验收结果

  • 图片型颜色点击底部文字,不点击图片或打开大图区域。
  • 唯一默认尺码只点击一次,并读取最新控件树验证。
  • 不支持取消时不重复点击。
  • 查找尺码后恢复面板顶部,再执行原蛇形逐色采价。
  • 误入大图最多返回一次,未恢复时返回明确错误。
  • 颜色处理完成后仍采集所有可见尺码文字。
  • 精确测试、Client 完整测试和语法检查通过。
  • 用户使用真机重新采集商品 624619167609 验收。

测试

在 client/ 目录执行:

C:/Python310/python.exe -m unittest discover -s test -p "test_pdd_collect_service.py"
C:/Python310/python.exe -m unittest discover -s test -p "test_*.py"
C:/Python310/python.exe -m py_compile src/pdd_collect_service.py test/test_pdd_collect_service.py

结果:采集服务 49 项通过,Client 完整 406 项通过,语法检查通过。

未验证到的部分:未使用真机重新采集;未执行采购、下单或付款。