From 1dee6d0de81111912cd1e651d8162561ed2bd5a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EB=B3=B4=EA=B3=A4?= Date: Wed, 4 Mar 2026 11:13:14 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20[payables]=20=EC=A0=84=ED=91=9C=20?= =?UTF-8?q?=EC=82=AD=EC=A0=9C=20500=20=EC=97=90=EB=9F=AC=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Accept: application/json 헤더 추가 (HTML 응답 방지) - findOrFail → find + 수동 404 처리 (에러 메시지 개선) - try-catch 추가로 상세 에러 메시지 반환 --- .../Controllers/Finance/PayableController.php | 29 ++++++++++++++----- resources/views/finance/payables.blade.php | 2 +- 2 files changed, 23 insertions(+), 8 deletions(-) diff --git a/app/Http/Controllers/Finance/PayableController.php b/app/Http/Controllers/Finance/PayableController.php index 8d2c20bf..1a9024f0 100644 --- a/app/Http/Controllers/Finance/PayableController.php +++ b/app/Http/Controllers/Finance/PayableController.php @@ -512,15 +512,30 @@ public function journalPayables(Request $request): JsonResponse */ public function deleteJournalEntry(int $id): JsonResponse { - $tenantId = session('selected_tenant_id', 1); + try { + $tenantId = session('selected_tenant_id', 1); - $entry = JournalEntry::where('tenant_id', $tenantId)->findOrFail($id); + $entry = JournalEntry::where('tenant_id', $tenantId)->find($id); - $entry->delete(); + if (! $entry) { + return response()->json([ + 'success' => false, + 'message' => "전표(ID: {$id})를 찾을 수 없습니다. (tenant: {$tenantId})", + ], 404); + } - return response()->json([ - 'success' => true, - 'message' => "전표 {$entry->entry_no}이(가) 삭제되었습니다.", - ]); + $entryNo = $entry->entry_no; + $entry->delete(); + + return response()->json([ + 'success' => true, + 'message' => "전표 {$entryNo}이(가) 삭제되었습니다.", + ]); + } catch (\Throwable $e) { + return response()->json([ + 'success' => false, + 'message' => '삭제 오류: '.$e->getMessage(), + ], 500); + } } } diff --git a/resources/views/finance/payables.blade.php b/resources/views/finance/payables.blade.php index dcc74d1d..0e68bbed 100644 --- a/resources/views/finance/payables.blade.php +++ b/resources/views/finance/payables.blade.php @@ -87,7 +87,7 @@ function IntegratedTab({ startDate, endDate, account, vendorSearch }) { try { const res = await fetch(`/finance/payables/journal-entry/${journalEntryId}`, { method: 'DELETE', - headers: { 'X-CSRF-TOKEN': document.querySelector('meta[name="csrf-token"]').content }, + headers: { 'X-CSRF-TOKEN': document.querySelector('meta[name="csrf-token"]').content, 'Accept': 'application/json' }, }); const json = await res.json(); if (json.success) {