"use client"; import { useState } from "react"; import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; import { Button } from "@/components/ui/button"; import { Input } from "@/components/ui/input"; import { ReportListTable } from "@/components/report/ReportListTable"; import { ReportCreateModal } from "@/components/report/ReportCreateModal"; import { Plus, Search, RotateCcw } from "lucide-react"; import { useReportList } from "@/hooks/useReportList"; export default function ReportManagementPage() { const [searchText, setSearchText] = useState(""); const [isCreateModalOpen, setIsCreateModalOpen] = useState(false); const { reports, total, page, limit, isLoading, refetch, setPage, handleSearch } = useReportList(); const handleSearchClick = () => { handleSearch(searchText); }; const handleReset = () => { setSearchText(""); handleSearch(""); }; const handleCreateSuccess = () => { setIsCreateModalOpen(false); refetch(); }; return (
{/* 페이지 제목 */}

리포트 관리

리포트를 생성하고 관리합니다

{/* 검색 영역 */} 검색
setSearchText(e.target.value)} onKeyDown={(e) => { if (e.key === "Enter") { handleSearchClick(); } }} className="flex-1" />
{/* 리포트 목록 */} 📋 리포트 목록 (총 {total}건)
{/* 리포트 생성 모달 */} setIsCreateModalOpen(false)} onSuccess={handleCreateSuccess} />
); }