name: auto-generate-export-contracts
根据用户提供的订单合同信息,自动生成:
.docx 格式.xlsx 格式当用户:
支持两种输入格式:
结构化编号列表(标准格式):
1. 姓名:xxx;
2.任职:xxx;
3.意向车型:
(1) 车型中文名 英文名 - 型号:LZWxxxx
排放标准 代码:xxx X台颜色
4.合同签约公司中文名称:xxx;
5.合同签约公司英文名称:xxx
...
自然语言描述:用户自由描述订单内容
解析提取核心字段:
遍历 assets/vehicle-price-config.xlsx 中的所有sheet,在G列(型号)精确匹配ModelCode:
用户提供的价格优先于价格表。
ceil(总金额 × 0.30)(向上取整)num2words(总金额).upper()格式:HLXYWPA{年月日},如 HLXYWPA20260530
Proforma Invoice ({合同编号}-Proforma Invoice.xlsx):
assets/proforma-invoice-template.xlsx销售合同 ({合同编号}-车辆销售合同.docx):
assets/vehicle-sales-contract-template.docx向用户输出两个文件,并附加固定提示语:
销售合同、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-docxopenpyxlnum2wordsassets/proforma-invoice-template.xlsx: Proforma Invoice模板assets/vehicle-sales-contract-template.docx: 销售合同模板assets/vehicle-price-config.xlsx: 车型价格配置表(多sheet)