修复发票PDF单页模板版式
This commit is contained in:
@@ -225,7 +225,7 @@ SourceMessage 原文和邮件会话完整正文已迁移到登录权限体系:
|
||||
- PDF 上传到阿里云 OSS,返回 `pdf_url`、`object_key`、`pdf_file_name`、`pdf_size_bytes` 和 `duration_millis`。
|
||||
- CP2 不落库,不提供转换历史查询;如果需要自动处理邮件附件,应先进入 M008 后续持久化任务和 worker checkpoint。
|
||||
- M009 Manual Invoice 不调用上述调试接口,也不使用 `X-TH-Hotel-Document-Conversion-Key`;它通过登录 Bearer token、`RESERVATION_INVOICE_GENERATE` 权限和后端内部转换 Adapter 生成 PDF。
|
||||
- M009 Manual Invoice 当前模板资源为 `server/src/main/resources/templates/reservation-invoice/proforma-invoice-v1.xlsx`,部署包必须包含该资源。
|
||||
- M009 Manual Invoice 当前模板资源为 `server/src/main/resources/templates/reservation-invoice/proforma-invoice-v1.xlsx`,部署包必须包含该资源;模板为 A4 纵向单页版式,缺少字体或 LibreOffice 版本差异仍可能影响最终分页,测试环境上线后需用真实浏览器打开生成 PDF 复核。
|
||||
- M009 Manual Invoice 会写入 `workflow_reservation_invoice_generation`,上线前需确认 Flyway 已执行到 V22。
|
||||
- M009 Manual Invoice 失败记录也可能保留已上传成功的 Excel / PDF object key;排查或清理 OSS 生成物时应以生成记录为主,不只看 `SUCCEEDED` 状态。
|
||||
|
||||
|
||||
@@ -328,9 +328,10 @@ server/src/main/resources/templates/reservation-invoice/proforma-invoice-v1.xlsx
|
||||
模板字段映射原则:
|
||||
|
||||
- 模板固定文案、Logo、银行信息、税号可以先保留在模板内。
|
||||
- 当前 `PROFORMA_INVOICE_V1` 使用 A4 纵向单页模板,打印区域固定为 `A1:H52`,后端渲染时会再次写入纸张、缩放和打印区域,避免 LibreOffice 转 PDF 时分页漂移。
|
||||
- 可动态变更但不属于单张 Invoice 的配置,后续迁移到酒店发票配置。
|
||||
- 用户输入字段通过后端模板填充器写入指定单元格。
|
||||
- 明细行需要支持 1 到 N 行;超过模板默认行数时,后端应复制行样式和公式。
|
||||
- 第一版明细行固定支持 1 到 10 行;超过模板默认行数时,后续 checkpoint 再做复制行样式和公式。
|
||||
- 金额公式由后端统一写入或由模板公式统一生成,不复制历史案例中不一致的公式。
|
||||
|
||||
## 9. 权限、安全和审计
|
||||
@@ -358,6 +359,7 @@ server/src/main/resources/templates/reservation-invoice/proforma-invoice-v1.xlsx
|
||||
- 已完成:新增业务接口 `POST /api/reservation/invoices/manual-generations`。
|
||||
- 已完成:新增生成记录表 `workflow_reservation_invoice_generation` 和业务审计。
|
||||
- 已完成:根据请求 payload 填充受控 Excel 模板 `templates/reservation-invoice/proforma-invoice-v1.xlsx`。
|
||||
- 已完成:模板切换为接近酒店历史样张的 A4 单页版式,后端渲染器固定 `A1:H52` 打印区域,避免生成 PDF 被拆成多页。
|
||||
- 已完成:复用平台 Excel 转 PDF Adapter 生成 PDF,并上传阿里云 OSS。
|
||||
- 已完成:返回 PDF URL、对象 Key、金额摘要和生成状态。
|
||||
- 已完成:失败记录保留已上传成功的 Excel / PDF object key;业务审计完成后才标记 `SUCCEEDED`。
|
||||
|
||||
Reference in New Issue
Block a user