From 2c3bccb9a00ffc9ea88868fd308aed167c612b1b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EB=B3=B4=EA=B3=A4?= Date: Tue, 10 Feb 2026 16:55:48 +0900 Subject: [PATCH] =?UTF-8?q?fix:save()=EC=97=90=EC=84=9C=20=EC=88=98?= =?UTF-8?q?=EB=8F=99=20=EA=B1=B0=EB=9E=98=20=EC=8A=A4=ED=82=B5=20(?= =?UTF-8?q?=EC=9E=AC=EA=B3=84=EC=82=B0=20balance=EB=A1=9C=20=EC=9D=B8?= =?UTF-8?q?=ED=95=9C=20=EC=B6=A9=EB=8F=8C=20=EB=B0=A9=EC=A7=80)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 수동 거래의 balance는 화면에서 재계산된 값이므로 DB 원본값과 다름. save()에서 처리하면 잘못된 레코드 매칭 또는 unique key 충돌 발생. 수동 거래는 updateManual()에서만 처리하도록 스킵. Co-Authored-By: Claude Opus 4.6 --- app/Http/Controllers/Barobill/EaccountController.php | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/app/Http/Controllers/Barobill/EaccountController.php b/app/Http/Controllers/Barobill/EaccountController.php index 42140628..a5eab35e 100644 --- a/app/Http/Controllers/Barobill/EaccountController.php +++ b/app/Http/Controllers/Barobill/EaccountController.php @@ -906,6 +906,13 @@ public function save(Request $request): JsonResponse DB::beginTransaction(); foreach ($transactions as $trans) { + // 수동 입력 거래는 스킵 (updateManual에서 별도 처리) + // 수동 거래의 balance는 화면에서 재계산된 값이므로 save()에서 처리하면 + // 다른 레코드와 unique key 충돌 발생 + if (!empty($trans['isManual'])) { + continue; + } + // 거래일시 생성 $transDt = ($trans['transDate'] ?? '') . ($trans['transTime'] ?? '');