- web_ui.py: major refactor with improved runner, mode selection, progress tracking - scripts: add device_runtime, device_calibrate, calibration_trace, record_android_flow - docs: add phone-control-manual, update device-adaptation and windows-migration - invoice_tool: enhance H5 automation flow and visual fallback - calibrate.py: expand calibration capabilities - add skills/ and tests/ directories - remove obsolete .opencode/skills/invoice-wrapup Co-Authored-By: Claude <noreply@anthropic.com>
90 lines
3.5 KiB
Markdown
90 lines
3.5 KiB
Markdown
# 铁路系统发票
|
||
|
||
铁路系统发票专项工作区,用于沉淀铁路系统相关发票资料、处理脚本、核对记录和衍生产出。
|
||
|
||
> 🤖 Agent 上手先读 [`AGENTS.md`](./AGENTS.md) 的操作守则(通用协议在 [`../docs/trio-protocol.md`](../docs/trio-protocol.md));改动后记得追加 [`CHANGELOG.md`](./CHANGELOG.md)(强标签格式见文件顶部)。
|
||
|
||
## 当前接力点 (Handoff)
|
||
|
||
> 只保留最新一条,下一轮 wrap-up 直接覆盖。历史接力沉淀到 obwiki。
|
||
|
||
### 概述
|
||
**02 批次收尾完成(去重+儿童票标注+清一轮按钮),Web UI 改动需重启验证,敬曦翔未开票待确认。**
|
||
|
||
### 明细
|
||
2026-07-11:02 批次开票跑完,做了三件收尾事。① 按发票号去重:删了主目录 3 份重复张辰铭 `_invoice.pdf`(同一发票号 26119121152005549789),手工目录 4 份确认无重。② 儿童票标注:`annotate_roster_invoices.py` 新增 `is_child_ticket()` + `--child-suffix` 参数,读 PDF 正文检测「孩」字,状态列输出「已开票-孩」。7 位儿童票:陈露萱/胡初然/邱瑞泽/邱景媛/胡云辰/高振瑜/王楚渃。③ Web UI 加「清一轮开票记录」按钮:`reset_current_round()` + `/api/reset-round` + `confirm()` 二次确认,归档到 `archive/round-resets/<ts>/`,保留 roster/tasks/agent_id_last8。另把 `invoice-wrapup` skill 从 `.opencode/skills/` 移到 `skills/invoice-wrapup/`。
|
||
|
||
**待办**:
|
||
1. `./scripts/restart_web_ui.sh` 重启 Web UI,验证「清一轮开票记录」按钮功能
|
||
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)
|