diff --git a/app/Models/User.php b/app/Models/User.php index 71ff9f0..65d50d0 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -211,15 +211,19 @@ public function reduce(string $amount = "0", string $description = "消费", boo /** * 增加余额 * - * @param string $amount - * @param string $payment - * @param string $description - * @param array $options + * @param string|null $amount + * @param string $payment + * @param string $description + * @param array $options * * @return string */ - public function charge(string $amount = "0", string $payment = 'console', string $description = '充值', array $options = []): string + public function charge(string|null $amount = "0", string $payment = 'console', string $description = '充值', array $options = []): string { + if ($amount === null || $amount === '') { + return $this->balance; + } + Cache::lock('user_balance_' . $this->id, 10)->block(10, function () use ($amount, $description, $payment, $options) { $this->refresh(); $this->balance = bcadd($this->balance, $amount, 2);