diff --git a/app/Http/Controllers/Api/Admin/DocumentApiController.php b/app/Http/Controllers/Api/Admin/DocumentApiController.php index e5ee7d5a..774e8d07 100644 --- a/app/Http/Controllers/Api/Admin/DocumentApiController.php +++ b/app/Http/Controllers/Api/Admin/DocumentApiController.php @@ -43,6 +43,14 @@ public function index(Request $request): JsonResponse }); } + // 날짜 범위 필터 + if ($request->filled('date_from')) { + $query->whereDate('created_at', '>=', $request->date_from); + } + if ($request->filled('date_to')) { + $query->whereDate('created_at', '<=', $request->date_to); + } + $documents = $query->paginate($request->input('per_page', 15)); return response()->json($documents); diff --git a/resources/views/documents/index.blade.php b/resources/views/documents/index.blade.php index 7e831224..fe812456 100644 --- a/resources/views/documents/index.blade.php +++ b/resources/views/documents/index.blade.php @@ -56,6 +56,15 @@ class="w-full px-4 py-2 border border-gray-300 rounded-lg focus:outline-none foc + +
+ + ~ + +
+ ` : ''} @@ -248,5 +260,30 @@ function formatDate(dateString) { const date = new Date(dateString); return date.toLocaleDateString('ko-KR', { year: 'numeric', month: '2-digit', day: '2-digit' }); } + +function deleteDocument(id, documentNo) { + showDeleteConfirm(documentNo, () => { + fetch(`/api/admin/documents/${id}`, { + method: 'DELETE', + headers: { + 'Accept': 'application/json', + 'X-CSRF-TOKEN': document.querySelector('meta[name="csrf-token"]').content, + } + }) + .then(response => response.json()) + .then(result => { + if (result.success) { + showToast(result.message || '삭제되었습니다.', 'success'); + loadDocuments(); + } else { + showToast(result.message || '삭제에 실패했습니다.', 'error'); + } + }) + .catch(error => { + console.error('Delete error:', error); + showToast('삭제 중 오류가 발생했습니다.', 'error'); + }); + }); +} @endpush \ No newline at end of file