diff --git a/app/Plugins/Core/src/Lib/Pay/Service/WechatPay.php b/app/Plugins/Core/src/Lib/Pay/Service/WechatPay.php index 2f7a36fe9..25dedb884 100644 --- a/app/Plugins/Core/src/Lib/Pay/Service/WechatPay.php +++ b/app/Plugins/Core/src/Lib/Pay/Service/WechatPay.php @@ -14,15 +14,16 @@ class WechatPay implements PayInterFace * @var int | float */ private int|float $amount_multiple = 100; + /** * 计算实际金额 - * @param string|int $amount + * @param string|int|float $amount * @param bool $dividing * @return float|int */ - protected function calculate_amount(string|int $amount, bool $dividing = false) : float|int + protected function calculate_amount(string|int|float $amount, bool $dividing = false) : float|int { - if (!is_numeric($amount)) { + if (!is_numeric($amount) && is_float($amount)) { return 0; } if ($dividing === true) { diff --git a/app/Plugins/User/src/Controller/AssetController.php b/app/Plugins/User/src/Controller/AssetController.php index c39d691ba..b38c8f09a 100644 --- a/app/Plugins/User/src/Controller/AssetController.php +++ b/app/Plugins/User/src/Controller/AssetController.php @@ -38,7 +38,7 @@ public function money() public function money_recharge_submit() { $payment = request()->input('payment'); - $amount = request()->input('amount'); + $amount = (float) request()->input('amount'); $captcha = request()->input('captcha'); if (!$payment || !$amount || !$captcha) { return Json_Api(403, false, ['msg' => '请求参数不足']);