From 08d68cbcae4925207ac507e9b89261e9ab9a388c Mon Sep 17 00:00:00 2001 From: xboard Date: Fri, 20 Mar 2026 13:59:14 +0800 Subject: [PATCH] fix: intval u/d to avoid bigint overflow (#821) --- app/Jobs/StatUserJob.php | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/app/Jobs/StatUserJob.php b/app/Jobs/StatUserJob.php index 4e3b81c..620443c 100644 --- a/app/Jobs/StatUserJob.php +++ b/app/Jobs/StatUserJob.php @@ -85,8 +85,8 @@ class StatUserJob implements ShouldQueue if ($existingRecord) { $existingRecord->update([ - 'u' => $existingRecord->u + ($v[0] * $this->server['rate']), - 'd' => $existingRecord->d + ($v[1] * $this->server['rate']), + 'u' => $existingRecord->u + intval($v[0] * $this->server['rate']), + 'd' => $existingRecord->d + intval($v[1] * $this->server['rate']), 'updated_at' => time(), ]); } else { @@ -95,8 +95,8 @@ class StatUserJob implements ShouldQueue 'server_rate' => $this->server['rate'], 'record_at' => $recordAt, 'record_type' => $this->recordType, - 'u' => ($v[0] * $this->server['rate']), - 'd' => ($v[1] * $this->server['rate']), + 'u' => intval($v[0] * $this->server['rate']), + 'd' => intval($v[1] * $this->server['rate']), 'created_at' => time(), 'updated_at' => time(), ]); @@ -112,8 +112,8 @@ class StatUserJob implements ShouldQueue 'server_rate' => $this->server['rate'], 'record_at' => $recordAt, 'record_type' => $this->recordType, - 'u' => ($v[0] * $this->server['rate']), - 'd' => ($v[1] * $this->server['rate']), + 'u' => intval($v[0] * $this->server['rate']), + 'd' => intval($v[1] * $this->server['rate']), 'created_at' => time(), 'updated_at' => time(), ], @@ -133,8 +133,8 @@ class StatUserJob implements ShouldQueue { $table = (new StatUser())->getTable(); $now = time(); - $u = ($v[0] * $this->server['rate']); - $d = ($v[1] * $this->server['rate']); + $u = intval($v[0] * $this->server['rate']); + $d = intval($v[1] * $this->server['rate']); $sql = "INSERT INTO {$table} (user_id, server_rate, record_at, record_type, u, d, created_at, updated_at) VALUES (?, ?, ?, ?, ?, ?, ?, ?)