# 铁路系统发票 铁路系统发票专项工作区,用于沉淀铁路系统相关发票资料、处理脚本、核对记录和衍生产出。 > 🤖 Agent 上手先读 [`AGENTS.md`](./AGENTS.md) 的操作守则(通用协议在 [`../docs/trio-protocol.md`](../docs/trio-protocol.md));改动后记得追加 [`CHANGELOG.md`](./CHANGELOG.md)(强标签格式见文件顶部)。 ## 当前接力点 (Handoff) > 只保留最新一条,下一轮 wrap-up 直接覆盖。历史接力沉淀到 obwiki。 ### 概述 **换手机后开票报错的适配改造已完成,下一步需在 `/calibrate` 页生成 `device_profile.json` 并实测。** ### 明细 2026-07-09:跟踪 `web_runner.log` 定位换手机报错三根因(硬编码像素/滑动幅度绝对值/视觉 fallback 失败)。Web UI 三处改造:① 首页状态栏加「设备校准」入口;② run-actions 排加「查缺补漏」toggle 按钮(`final_retry_pass` 可见可控);③ 总进度表按 progress 行序(开票处理顺序)排列。产出文档 `docs/device-adaptation.md`(截屏节点清单)+ `docs/web-ui-adaptation-log.md`(操作记录)。 **待办**: 1. 在 `http://127.0.0.1:8765/calibrate` 点「保存设备配置」生成 `work/device_profile.json` 2. 逐状态截图校准(重点:「确认」「继续开票」「开具」) 3. 真换手机后实测滑动比例适配 ## 项目结构 ```text 铁路系统发票/ ├── AGENTS.md ├── CHANGELOG.md ├── CLAUDE.md -> AGENTS.md ├── INDEX.md ├── config.example.json ├── config.local.json(本地自建,忽略提交) ├── data/ │ ├── attachments/ │ ├── input/开票码批次/ │ └── mail/ ├── docs/ │ └── usage.md ├── output/ ├── scripts/ │ ├── invoice_tool.py │ ├── web_ui.py │ ├── restart_web_ui.sh │ ├── web_ui_watchdog.sh │ ├── vision_fallback.py │ └── record_step.py ├── templates/ │ └── android_flow.example.json └── work/ ``` ## 子模块导航 (本项目暂无子目录) ## 常用操作 ```bash # 初始化目录和配置模板 python3 scripts/invoice_tool.py init cp config.example.json config.local.json # 导入二维码/手工码生成开票任务 python3 scripts/invoice_tool.py import-codes # 导入名单并匹配身份证后 8 位 python3 scripts/invoice_tool.py import-roster --input /path/to/名单.xlsx python3 scripts/invoice_tool.py match-roster --masked-name '张*岩' # Android 页面读取和身份证后 8 位输入 python3 scripts/invoice_tool.py android-dump --output work/android_page.txt python3 scripts/invoice_tool.py android-type-id --tap 500,1200 # 本地 Web UI:上传名单、看进度、启动/停止批处理 ./scripts/restart_web_ui.sh # 生成网页辅助开票页 python3 scripts/invoice_tool.py rpa-plan # 归集邮件/附件并导出汇总 python3 scripts/invoice_tool.py collect-mail python3 scripts/invoice_tool.py collect-attachments python3 scripts/invoice_tool.py export-summary ``` ## 相关链接 - 📓 演绎记录:[CHANGELOG.md](./CHANGELOG.md) - 🤖 Agent 守则:[AGENTS.md](./AGENTS.md) - 使用说明:[docs/usage.md](./docs/usage.md)