From 399535561734d41df0d4aa98db0eb4d4f2cf8068 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EB=B3=B4=EA=B3=A4?= Date: Fri, 20 Mar 2026 11:11:45 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20[=EA=B3=84=EC=A2=8C=EB=82=B4=EC=97=AD]?= =?UTF-8?q?=20=EC=9E=94=EC=95=A1=20=EC=9E=AC=EA=B3=84=EC=82=B0=EC=9D=84=20?= =?UTF-8?q?=EC=88=98=EB=8F=99=EC=9E=85=EB=A0=A5=EB=BF=90=20=EC=95=84?= =?UTF-8?q?=EB=8B=88=EB=9D=BC=20=EC=A0=84=EC=B2=B4=20=EA=B1=B0=EB=9E=98?= =?UTF-8?q?=EC=97=90=20=EC=A0=81=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/Barobill/EaccountController.php | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/app/Http/Controllers/Barobill/EaccountController.php b/app/Http/Controllers/Barobill/EaccountController.php index a4c0bd47..278f6c47 100644 --- a/app/Http/Controllers/Barobill/EaccountController.php +++ b/app/Http/Controllers/Barobill/EaccountController.php @@ -1945,14 +1945,19 @@ private function recalcManualBalances(array $logs, ?float $baseBalance = null): $prevBalance = $baseBalance; foreach ($logs as &$log) { - if (! empty($log['isManual'])) { - $deposit = (float) ($log['deposit'] ?? 0); - $withdraw = (float) ($log['withdraw'] ?? 0); - $newBalance = ($prevBalance !== null ? $prevBalance : 0) + $deposit - $withdraw; + $deposit = (float) ($log['deposit'] ?? 0); + $withdraw = (float) ($log['withdraw'] ?? 0); + + if ($prevBalance !== null) { + // 이전 잔액이 있으면 모든 거래(API/수동 무관)의 잔액을 재계산 + $newBalance = $prevBalance + $deposit - $withdraw; $log['balance'] = $newBalance; $log['balanceFormatted'] = number_format($newBalance); + $prevBalance = $newBalance; + } else { + // 이전 잔액 없음: 첫 거래의 DB 잔액을 신뢰하여 기준점으로 사용 + $prevBalance = (float) ($log['balance'] ?? 0); } - $prevBalance = (float) ($log['balance'] ?? 0); } unset($log);