From 650f0ee3a74b44b611962f89820be09db91f4243 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EB=B3=B4=EA=B3=A4?= Date: Tue, 3 Mar 2026 19:30:24 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20[hr]=20=EC=82=AC=EC=97=85=EC=86=8C?= =?UTF-8?q?=EB=93=9D=EC=9E=90=20=EC=9E=84=EA=B8=88=EB=8C=80=EC=9E=A5=20?= =?UTF-8?q?=ED=96=89=20=EC=82=AD=EC=A0=9C=20=ED=9B=84=20=EC=9D=BC=EA=B4=84?= =?UTF-8?q?=EC=A0=80=EC=9E=A5=20=EC=8B=A4=ED=8C=A8=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 모든 행 삭제 시 "저장할 데이터가 없습니다" 오류 → 확인 후 서버 전송으로 변경 - 백엔드 validation: required|array → present|array (빈 배열 허용) - 서버의 orphan draft 자동 삭제 로직이 정상 동작하도록 수정 --- .../Api/Admin/HR/BusinessIncomePaymentController.php | 2 +- .../views/hr/business-income-payments/index.blade.php | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/app/Http/Controllers/Api/Admin/HR/BusinessIncomePaymentController.php b/app/Http/Controllers/Api/Admin/HR/BusinessIncomePaymentController.php index 314a62a9..5e157db2 100644 --- a/app/Http/Controllers/Api/Admin/HR/BusinessIncomePaymentController.php +++ b/app/Http/Controllers/Api/Admin/HR/BusinessIncomePaymentController.php @@ -85,7 +85,7 @@ public function bulkSave(Request $request): JsonResponse $validated = $request->validate([ 'year' => 'required|integer|min:2020|max:2100', 'month' => 'required|integer|min:1|max:12', - 'items' => 'required|array', + 'items' => 'present|array', 'items.*.payment_id' => 'nullable|integer', 'items.*.user_id' => 'nullable|integer', 'items.*.display_name' => 'required|string|max:100', diff --git a/resources/views/hr/business-income-payments/index.blade.php b/resources/views/hr/business-income-payments/index.blade.php index ffe410cb..65e999ca 100644 --- a/resources/views/hr/business-income-payments/index.blade.php +++ b/resources/views/hr/business-income-payments/index.blade.php @@ -330,10 +330,11 @@ function saveBIP() { } if (items.length === 0) { - btn.disabled = false; - btn.innerHTML = origText; - showToast('저장할 데이터가 없습니다.', 'error'); - return; + if (!confirm('모든 행이 삭제되었습니다. 저장하면 해당 월의 임시저장 데이터가 모두 삭제됩니다. 계속하시겠습니까?')) { + btn.disabled = false; + btn.innerHTML = origText; + return; + } } fetch('{{ route("api.admin.hr.business-income-payments.bulk-save") }}', {