# 批量购买套餐脚本功能总结 ## 功能说明 新增 Python 运维脚本 `scripts/batch_package_purchase/batch_purchase.py`,用于读取单列 CSV,并逐资产调用后台 `POST /api/admin/orders` 接口购买同一个套餐。 ## 输入与配置 - CSV 每行一个 ICCID 或虚拟号,首行表头可选。 - `--base-url` 配置接口地址。 - `--package-id` 指定本批次统一购买的套餐 ID。 - 认证支持已有 Access Token,或使用后台账号自动登录获取 Token。 - 支付方式固定为 `wallet`。 ## 安全控制 - 默认仅预演,显式增加 `--execute` 后才会真实下单。 - 下单前统一校验 CSV,重复资产会阻断整批执行。 - 每个资产独立调用一次接口,结果逐条刷新到 CSV。 - POST 请求不自动重试,避免响应丢失造成重复购买。 - Token 和密码支持环境变量传入,不写入结果文件。 ## 输出 结果 CSV 包含: - CSV 原始行号和资产标识。 - 成功或失败状态。 - HTTP 状态码和业务错误码。 - 接口消息。 - 成功订单的订单 ID、订单号和订单金额。 脚本执行结束时,成功数量与输入总数一致则退出码为 `0`;存在失败或中途因认证失效停止时退出码为 `2`;参数、CSV 或登录错误时退出码为 `1`。