1.1 KiB
1.1 KiB
有更新,主要是 /api/payment/plans。 前端判断方式: 调用: GET /api/payment/plans 如果用户已登录,请带上: Authorization: Bearer 后端会返回: { "isFirstRecharge": true, "firstRechargeOffer": { "enabled": true, "type": "first_recharge_half_price", "discountPercent": 50 }, "plans": [ { "planId": "vip_monthly", "amountCents": 995, "originalAmountCents": 1990, "isFirstRechargeOffer": true, "firstRechargeDiscountPercent": 50, "promotionType": "first_recharge_half_price" } ] } 前端逻辑很简单: data.isFirstRecharge === true 或 plan.isFirstRechargeOffer === true:展示首充价 amountCents:实际支付价,也就是首充半价 originalAmountCents:划线原价 firstRechargeDiscountPercent:折扣,比如 50 不需要前端自己算半价 创建订单还是原接口: POST /api/payment/create-order 前端只传原来的 planId/payChannel/autoRenew,不用传首充字段。后端会重新判断首充资格,并按半价创建订单,防止前端伪造价格。