From 48cfe4be04d5806be8d8595e20d81f4891276472 Mon Sep 17 00:00:00 2001 From: li Date: Wed, 25 Feb 2026 19:09:20 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E7=BB=93=E7=AE=97?= =?UTF-8?q?=E5=90=8E=E4=BD=99=E9=A2=9D=E4=B8=8D=E6=9B=B4=E6=96=B0=E5=92=8C?= =?UTF-8?q?=E6=B5=81=E6=B0=B4=E7=BC=BA=E5=A4=B1=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1. 去掉PK10结算中is_virtual过滤,统一更新余额和写入transactions - PK10PeriodController.php (手动结算) - auto_period_task.php (自动结算) 2. live.php轮询回调增加余额同步显示 --- .DS_Store | Bin 8196 -> 8196 bytes App/.DS_Store | Bin 10244 -> 10244 bytes App/Controllers/.DS_Store | Bin 10244 -> 10244 bytes .../Admin/PK10PeriodController.php | 37 ++++++++---------- App/Views/.DS_Store | Bin 10244 -> 10244 bytes App/Views/Web/live.php | 7 ++++ cron/auto_period_task.php | 28 ++++++------- 7 files changed, 37 insertions(+), 35 deletions(-) diff --git a/.DS_Store b/.DS_Store index a0d7e006b7cbdae905a202647ce82bbd347a5771..c81fa467e2966b6a1d47be4b0abffe168704cdb9 100755 GIT binary patch delta 75 zcmZp1XmOa3$h;$|U}NDl_K6L=o7p*}I3~XmEafmaGuBZsv@n?LFKj>gj=+2rfz5{m VUD!6WOMGLQEGMkBSxxjV69BR37s3Dl delta 87 zcmZp1XmOa3$h%ghZi(t@b2DQd1w#vi$!i6q8M`L$6O?D{p3Ea4wV7G)BpZHZ Xn_DCr**CK*u(59D5k0^JR%`|U-4q@* delta 43 wcmZn(XbIS0C@@)FaQ9?>0rAZ&f+yKPoXwpQb?lp26*yQo^NH?f0t#6G06gOjUH||9 diff --git a/App/Controllers/.DS_Store b/App/Controllers/.DS_Store index 94d94f2bc05714c8650360e8b7ea1768b1452896..fd23da5ea03dabf3e691db7a46e20a6a6ad2e7d5 100755 GIT binary patch delta 51 zcmZn(XbIS$D!{m7@;R|WZi(t@b2DQd1w#vi$qNOf8M`L$6_97_-h5X;lYcY2!Y`Ih HqRh+yx*ZTd delta 30 mcmZn(XbIS$Dlqw+*zU~_1=RRAvnl*$nY>C`ZL@~xT_ym)0SmqW diff --git a/App/Controllers/Admin/PK10PeriodController.php b/App/Controllers/Admin/PK10PeriodController.php index ebe58e2..a920965 100644 --- a/App/Controllers/Admin/PK10PeriodController.php +++ b/App/Controllers/Admin/PK10PeriodController.php @@ -201,27 +201,24 @@ class PK10PeriodController extends AdminBaseController { 'win_amount' => $winAmount, ], ['id' => $bet['id']]); - // 非虚拟账户才更新余额 - if (!(int)$bet['is_virtual']) { - $stmt = $this->db->medoo->pdo->prepare("SELECT balance FROM users WHERE id = :id FOR UPDATE"); - $stmt->execute([':id' => $bet['user_id']]); - $user = $stmt->fetch(\PDO::FETCH_ASSOC); - $newBalance = (float)$user['balance'] + $payout; + $stmt = $this->db->medoo->pdo->prepare("SELECT balance FROM users WHERE id = :id FOR UPDATE"); + $stmt->execute([':id' => $bet['user_id']]); + $user = $stmt->fetch(\PDO::FETCH_ASSOC); + $newBalance = (float)$user['balance'] + $payout; - $this->db->update('users', ['balance' => $newBalance], ['id' => $bet['user_id']]); - $this->db->insert('transactions', [ - 'user_id' => $bet['user_id'], - 'type' => 'win', - 'amount' => $payout, - 'balance_before' => $user['balance'], - 'balance_after' => $newBalance, - 'related_id' => $periodId, - 'description' => 'PK10 Win - Period ' . $period['period_number'], - 'is_virtual' => $bet['is_virtual'], - 'created_at' => date('Y-m-d H:i:s'), - ]); - $totalPayout += $payout; - } + $this->db->update('users', ['balance' => $newBalance], ['id' => $bet['user_id']]); + $this->db->insert('transactions', [ + 'user_id' => $bet['user_id'], + 'type' => 'win', + 'amount' => $payout, + 'balance_before' => $user['balance'], + 'balance_after' => $newBalance, + 'related_id' => $periodId, + 'description' => 'PK10 Win - Period ' . $period['period_number'], + 'is_virtual' => $bet['is_virtual'], + 'created_at' => date('Y-m-d H:i:s'), + ]); + $totalPayout += $payout; $wins++; } else { $this->db->update('bets', ['status' => 'lose', 'win_amount' => 0], ['id' => $bet['id']]); diff --git a/App/Views/.DS_Store b/App/Views/.DS_Store index 90951bdf36b9ea39168a717c1e464b433af97eec..0cfcd9216b17d11c291e0c2936483f21ac20f683 100755 GIT binary patch delta 81 zcmZn(XbIS`UW{?ahhD 'win', 'win_amount' => $winAmount, 'settled_at' => date('Y-m-d H:i:s'), ], ['id' => $bet['id']]); - if (!(int)$bet['is_virtual']) { - $stmt = $db->medoo->pdo->prepare("SELECT balance FROM users WHERE id = :id FOR UPDATE"); - $stmt->execute([':id' => $bet['user_id']]); - $user = $stmt->fetch(\PDO::FETCH_ASSOC); - $newBalance = (float)$user['balance'] + $payout; + $stmt = $db->medoo->pdo->prepare("SELECT balance FROM users WHERE id = :id FOR UPDATE"); + $stmt->execute([':id' => $bet['user_id']]); + $user = $stmt->fetch(\PDO::FETCH_ASSOC); + $newBalance = (float)$user['balance'] + $payout; - $db->update('users', ['balance' => $newBalance], ['id' => $bet['user_id']]); - $db->insert('transactions', [ - 'user_id' => $bet['user_id'], 'type' => 'win', - 'amount' => $payout, 'balance_before' => $user['balance'], - 'balance_after' => $newBalance, 'related_id' => $periodId, - 'description' => $gameName . ' Auto Win - ' . $period['period_number'], - 'is_virtual' => $bet['is_virtual'], 'created_at' => date('Y-m-d H:i:s'), - ]); - $totalPayout += $payout; - } + $db->update('users', ['balance' => $newBalance], ['id' => $bet['user_id']]); + $db->insert('transactions', [ + 'user_id' => $bet['user_id'], 'type' => 'win', + 'amount' => $payout, 'balance_before' => $user['balance'], + 'balance_after' => $newBalance, 'related_id' => $periodId, + 'description' => $gameName . ' Auto Win - ' . $period['period_number'], + 'is_virtual' => $bet['is_virtual'], 'created_at' => date('Y-m-d H:i:s'), + ]); + $totalPayout += $payout; $wins++; } else { $db->update('bets', [