软件项目预算计算(AI 按量付费版)
概述
本技能提供软件项目预算计算能力,并以支付宝「AI 按量付费(Machine Pay / A402)」方式封装为在线 API,实现"调用一次、付费一次"的商业化。
- 核心计算:
scripts/budget_calculator.py(纯标准库) - 按量付费服务端:
server/a402_server.py(基于 HTTP 402 Payment Required 协议) - 接入文档:
README.md、references/calculation-rules.md
预算构成(五大成本块)
| 成本块 | 明细 | 录入方式 |
|---|---|---|
| ① 销售费用 | 销售费用(含销售奖金) | 金额 |
| ② 产品费用 | 产品费用 | 按合同额百分比 或 金额(二选一) |
| ③ 实施费用 | 人力成本 + 设备采购 + 差旅费 + 快递杂费 | 多项求和 |
| ④ 财务税费 | 多税种分列 | 固定金额 或 按比例 |
| ⑤ 其他固定成本 | 其他固定成本 | 金额 |
计算口径
- 总成本 = 销售 + 产品 + 实施 + 税费 + 其他
- 税前利润 = 合同金额 − 总成本
- 纯利润(税后) = 税前利润 − 企业所得税
- 毛利率 = 税前利润 ÷ 合同金额
按量付费 API
接口
POST /api/budget/calculate
A402 交互流程
- 首次请求(未支付)→ 服务端调支付宝预下单 → 返回
402+ 响应头amtPaymentLink - 用户支付后携带
Payment-Proof请求头重试 - 服务端验证凭证 → 返回计算结果
本地启动(MOCK 沙箱联调)
python3 server/a402_server.py --port 8080
python3 server/test_client.py # 另一个终端跑测试
生产部署
配置 server/config.example.json(改名 config.json),填入:
- app_id:支付宝应用 ID
- private_key / alipay_public_key:应用私钥 / 支付宝公钥
- service_id:按量付费注册分配的服务标识
python3 server/a402_server.py --port 8080 --config server/config.json
配套资源
| 资源 | 用途 |
|---|---|
scripts/budget_calculator.py |
核心计算:--json 单方案、--compare 多方案、--template 税种模板 |
server/a402_server.py |
按量付费 API 服务端(A402 协议) |
server/config.example.json |
生产配置模板 |
server/test_client.py |
沙箱联调测试客户端 |
references/calculation-rules.md |
计算公式与口径说明 |
README.md |
部署与接入说明 |
质量红线
- 不编造:任何金额、税率、人数必须来自用户录入,未录入标注"缺失"。
- 口径透明:产品费用模式、投入比例、税种基数、纯利润口径均需明确标注。
- 安全:生产私钥绝不写入代码或日志,统一走环境变量或 config.json。
- 幂等:
trade_no不应重复履约,避免同一笔支付被多次使用。