完成URS系统的余额检查(check)功能,允许URS系统查询用户在农场系统中的钻石余额和提取费用信息。
文件: ThirdParty/Urs/Webhook/UrsCheckWebhook.php
功能:
关键方法:
handler(): 主处理方法,验证参数并调用核心逻辑processCheck(): 核心余额检查逻辑validateCheckRequest(): 请求参数验证processCheck方法实现:
{
"check": true/false, // 是否允许提取
"diamond_balance": "49.9950", // 钻石余额
"principal_total": "10.0000", // 本金总数
"fee_total": "0.0000", // 手续费总数
"required_total": "10.0000", // 所需总数
"message": "余额充足,允许提取" // 状态消息
}
文件: test_urs_check_webhook.php
功能:
用户ID: 10003 (URS) -> 39026 (农场)
检查金额: 10.0000 钻石
用户余额: 49.9950 钻石
手续费: 0.0000 钻石
所需总额: 10.0000 钻石
结果: ✅ 允许提取
用户ID: 10003 (URS) -> 39026 (农场)
检查金额: 1000000.0000 钻石
用户余额: 49.9950 钻石
手续费: 0.0000 钻石
所需总额: 1000000.0000 钻石
结果: ❌ 不允许提取(余额不足)
用户ID: 88888 (URS) -> 39036 (农场)
检查金额: 50.0000 钻石
用户余额: 0.0000 钻石
手续费: 0.0000 钻石
所需总额: 50.0000 钻石
结果: ❌ 不允许提取(余额不足)
number_format($balance / 10000, 4)进行格式化kku_urs_promotion_user_mappingsurs_user_id -> farm_user_idstatus = 1 (激活)URS余额检查完成 {
"urs_user_id": "10003",
"farm_user_id": 39026,
"amount": "10.0000",
"diamond_balance": "49.9950",
"fee_amount": "0.0000",
"required_total": "10.0000",
"is_allowed": true
}
URS余额检查失败:未找到用户映射关系 {
"urs_user_id": "99999",
"amount": "50.0000"
}