网淘吧来吧,欢迎您!

Invoice Generator技能使用说明

2026-03-28 新闻来源:网淘吧 围观:18
电脑广告
手机广告

发票生成器

根据结构化JSON数据生成PDF发票

设置

  1. 安装Node.js依赖项:
cd invoice-generator && npm install
  1. 设置INVOICE_DIR环境变量(或在skills.entries.invoice-generator.env中设置):
export INVOICE_DIR="/path/to/your/invoices"

这将创建以下目录结构:

$INVOICE_DIR/
├── configs/    # Optional: saved invoice configs
└── invoices/   # Generated PDF output

使用方法

# From stdin (on-the-fly)
cat invoice-data.json | {baseDir}/scripts/generate.sh

# From a full file path
{baseDir}/scripts/generate.sh /path/to/invoice-data.json

# From a saved config (looks in $INVOICE_DIR/configs/)
{baseDir}/scripts/generate.sh client-template
# Loads: $INVOICE_DIR/configs/client-template.json

# Output goes to: $INVOICE_DIR/invoices/invoice-{number}.pdf (auto-versions if exists)

输入数据格式

JSON输入必须包含以下字段:

{
  "company": {
    "name": "Your Company",
    "address": "123 Main St",
    "cityStateZip": "City, State, 12345",
    "country": "Country"
  },
  "client": {
    "name": "Client Name",
    "address": "456 Client Ave",
    "cityStateZip": "City, State, 67890",
    "country": "Country",
    "taxId": "TAX123"
  },
  "invoice": {
    "number": "INV-2025.01",
    "date": "Jan 15 2025",
    "dueDate": "Jan 30 2025"
  },
  "items": [
    {
      "description": "Service description",
      "rate": "1000.00",
      "currency": "USD"
    }
  ],
  "totals": {
    "currency": "USD",
    "total": "1,000.00"
  }
}

完整字段说明请参阅references/data-schema.md文件

输出

脚本成功运行时将输出生成的PDF文件路径:

$INVOICE_DIR/invoices/invoice-INV-2025.01.pdf
# If that filename already exists, the script will write:
# $INVOICE_DIR/invoices/invoice-INV-2025.01-2.pdf (then -3, etc.)

错误处理

  • 若JSON无效或缺少必填字段,则以代码1退出
  • 若weasyprint生成PDF失败,则以代码2退出
  • 错误信息将输出至stderr
免责申明
部分文章来自各大搜索引擎,如有侵权,请与我联系删除。
打赏
文章底部电脑广告
手机广告位-内容正文底部

相关文章

您是本站第344657名访客 今日有90篇新文章/评论