Add HTTP print API for packing list and sign-off receipt

- core/printing.py: SumatraPDF silent print backend (dry_run, timeout, error capture)
- core/print_document.py: orchestrate generate() + print, per-report paper size, printer fallback
- core/print_api.py: FastAPI POST /api/print + GET /api/health, HTTPBearer auth, English Swagger at /api/docs
- serve.py: uvicorn entrypoint
- config: printers/print/api sections in settings.yaml + core/settings.py
- requirements.txt: add fastapi, uvicorn
- .gitignore: ignore logs/
This commit is contained in:
Misaka_Company
2026-08-05 16:22:59 +08:00
parent df8f25f6da
commit bf9199189a
7 changed files with 399 additions and 1 deletions

View File

@@ -6,3 +6,7 @@ pydantic-yaml>=0.12
# dev / verification only (not required at runtime)
pytest>=8.0
pymupdf>=1.24
# HTTP 打印服务(新增打印接口)
fastapi>=0.110
uvicorn>=0.29