| | |
| | | private fun getPaymentMethods() { |
| | | ApiManager.getInstance().requestGetLoading( |
| | | this, |
| | | "sell/paymentmethod/get", |
| | | "terminal/paymentmethod/get", |
| | | PaymentMethodResponse::class.java, |
| | | null, |
| | | object : SubscriberListener<BaseResponse<PaymentMethodResponse>>() { |
| | |
| | | 0.0 |
| | | } |
| | | |
| | | // 获取当前余额(转换为元) |
| | | val currentBalance = userCard?.let { |
| | | // 将分转换为元 |
| | | it.balance / 100.0 |
| | | } ?: run { |
| | | // 如果用户卡为空,则使用服务器返回的余额 |
| | | cardInfo?.balance ?: 0.0 |
| | | } |
| | | |
| | | // 计算充值后的总余额 |
| | | val totalAmountAfterRecharge = currentBalance + rechargeAmount + bonusAmount |
| | | |
| | | // 检查是否超过最大余额限制9999.99元 |
| | | if (totalAmountAfterRecharge > 9999.99) { |
| | | val maxRechargeAmount = 9999.99 - currentBalance |
| | | ToastUtil.show("充值失败:充值后余额不能超过9999.99元\n当前余额:${String.format("%.2f", currentBalance)}元\n最多可充值:${String.format("%.2f", maxRechargeAmount)}元") |
| | | return |
| | | } |
| | | |
| | | // 调用充值接口 |
| | | callRechargeApi(rechargeAmount, bonusAmount) |
| | | } |
| | |
| | | val userCard = UserCard().apply { |
| | | // 设置用户卡信息 |
| | | cardInfo?.let { info -> |
| | | userCode = info.cardNum ?: "" |
| | | |
| | | // 计算新余额:原有余额 + 充值金额 + 赠送金额 |
| | | val originalBalance = |
| | | this@RechargeDetailActivity.userCard?.balance ?: 0 // 原有余额(分) |
| | | val rechargeAmountInCents = (rechargeAmount * 100).toInt() // 充值金额转分 |
| | | val bonusAmountInCents = (bonusAmount * 100).toInt() // 赠送金额转分 |
| | | |
| | | balance = originalBalance + rechargeAmountInCents + bonusAmountInCents |
| | | balance = MornyUtil.changeY2F(rechargeResult.balance) |
| | | } |
| | | |
| | | // 设置其他必要信息 |