SKILL.md 3.9 KB


name: auto-generate-export-contracts

description: 根据订单合同信息自动生成车辆出口销售合同(Word)和Proforma Invoice(Excel)。用于处理海外车辆出口业务,支持从订单文本解析买方信息、车型列表、贸易条款等,自动匹配车型价格配置表,生成标准格式的中英双语销售合同和PI表格。当用户提供订单信息、要求生成销售合同/PI/Proforma Invoice时触发。

海外合同自动生成 Skill

功能

根据用户提供的订单合同信息,自动生成:

  1. 车辆销售合同 (Vehicle Sales Contract) - .docx 格式
  2. Proforma Invoice - .xlsx 格式

触发条件

当用户:

  • 提供订单信息并要求生成销售合同/PI/Proforma Invoice
  • 提供包含车型、买方公司、贸易条款等信息的订单文本

工作流程

Step 1: 接收订单信息

支持两种输入格式:

  • 结构化编号列表(标准格式):

    1. 姓名:xxx;
    2.任职:xxx;
    3.意向车型:
    (1) 车型中文名  英文名 - 型号:LZWxxxx
    排放标准  代码:xxx  X台颜色
    4.合同签约公司中文名称:xxx;
    5.合同签约公司英文名称:xxx
    ...
    
  • 自然语言描述:用户自由描述订单内容

解析提取核心字段:

  • 买方公司中英文名称和地址
  • 合同联系电话
  • 车型列表(型号、发动机代码、数量、颜色)
  • 贸易条款(FCA/FOB/EXW)
  • 出发港口、目的地国家

Step 2: 车型价格匹配

遍历 assets/vehicle-price-config.xlsx 中的所有sheet,在G列(型号)精确匹配ModelCode:

  • 匹配成功 → 根据贸易条款获取对应USD价格(FCA→O列, FOB→N列, EXW→P列)
  • 匹配失败 → 提示用户提供该车型的单价USD

用户提供的价格优先于价格表。

Step 3: 计算汇总

  • 总数量 = Σ 各车型数量
  • 总金额 = Σ (单价 × 数量)
  • 30%金额 = ceil(总金额 × 0.30)(向上取整)
  • 70%金额 = 总金额 - 30%金额
  • 英文大写 = num2words(总金额).upper()

Step 4: 生成合同编号

格式:HLXYWPA{年月日},如 HLXYWPA20260530

Step 5: 生成文件

Proforma Invoice ({合同编号}-Proforma Invoice.xlsx):

  • 复制模板 assets/proforma-invoice-template.xlsx
  • 替换买方信息、合同编号、日期、车型明细、价格、汇总信息
  • 保留Excel公式(SUM、乘法公式)

销售合同 ({合同编号}-车辆销售合同.docx):

  • 复制模板 assets/vehicle-sales-contract-template.docx
  • 替换段落文本(合同编号、日期、买方信息、贸易条款等)
  • 替换表格(车辆明细表、汇总信息)
  • 银行账户信息保持模板固定值

Step 6: 输出

向用户输出两个文件,并附加固定提示语:

销售合同、Proforma Invoice已生成,报价员核对无误后再发送给客户。

脚本使用

python scripts/generate_contracts.py <订单信息文件.txt> -o <输出目录> -p '{"LZW1028SPY": 6176}'

参数:

  • order_file: 订单信息文本文件路径
  • -o, --output: 输出目录(默认当前目录)
  • -p, --prices: JSON字符串,手动提供缺失的车型价格

Python API:

from scripts.generate_contracts import generate_contracts

result = generate_contracts(order_text, output_dir='.', user_prices={"LZW1028SPY": 6176})
# result['success'] = True/False
# result['pi_path'] = PI文件路径
# result['contract_path'] = 销售合同文件路径
# result['missing_prices'] = 未匹配到价格的车型列表

依赖

  • python-docx
  • openpyxl
  • num2words

模板文件

  • assets/proforma-invoice-template.xlsx: Proforma Invoice模板
  • assets/vehicle-sales-contract-template.docx: 销售合同模板
  • assets/vehicle-price-config.xlsx: 车型价格配置表(多sheet)

字段映射详情

详见 references/field-mapping.md