@@ -5,6 +5,7 @@ import { AlarmIcon } from '@/assets/icons';
55
66import AdminPageTitle from './components/AdminPageTitle' ;
77import ListHeaderFrame from './components/ListHeaderFrame' ;
8+ import PagenationNavigation from './components/PagenationNavigation' ;
89import ReportDetailModal from './components/ReportDetailModal' ;
910import ReportHandlingModal from './components/ReportHandlingModal' ;
1011import ReportListItem from './components/ReportListItem' ;
@@ -19,28 +20,33 @@ export default function ReportManage() {
1920 currentPage : '1' ,
2021 totalPages : '0' ,
2122 } ) ;
23+
2224 const [ selectedReport , setSelectReport ] = useState < Report | null > ( null ) ;
2325 const [ selectedReportId , setSelectedReportId ] = useState < number | null > ( null ) ;
2426
25- // const [allReports, setAllReports] = useState();
26-
2727 const [ reportQueryString , setReportQueryString ] = useState < ReportQueryString > ( {
2828 reportType : null ,
2929 status : 'PENDING' ,
3030 page : '1' ,
31- size : '3 ' ,
31+ size : '2 ' ,
3232 } ) ;
33+
3334 const handleGetReports = async ( reportQueryString : ReportQueryString ) => {
3435 const res = await getReports ( reportQueryString ) ;
3536 if ( res ?. status === 200 ) {
36- console . log ( res . data . data . content ) ;
37- setReports ( res . data . data . content ) ;
37+ const data = res . data . data ;
38+ setReports ( data . content ) ;
3839 setReportPages ( ( ) => ( {
39- currentPage : res . data . data . currentPage ,
40- totalPages : res . data . data . totalPages ,
40+ currentPage : data . currentPage ,
41+ totalPages : data . totalPages ,
4142 } ) ) ;
4243 }
4344 } ;
45+
46+ const handleNowPage = ( page : string ) => {
47+ setReportQueryString ( ( cur ) => ( { ...cur , page : page } ) ) ;
48+ } ;
49+
4450 useEffect ( ( ) => {
4551 handleGetReports ( reportQueryString ) ;
4652 } , [ reportQueryString ] ) ;
@@ -68,39 +74,11 @@ export default function ReportManage() {
6874 setSelectReport = { setSelectReport }
6975 />
7076 ) ) }
71- < div className = "bg-accent-1 mt-5 flex h-10 w-full items-center justify-center" >
72- < div className = "flex gap-2" >
73- < button
74- className = "h-full w-10 rounded-2xl border bg-white"
75- onClick = { ( ) => {
76- const nowPage = Number ( reportQueryString . page ) ;
77- if ( nowPage > 1 ) {
78- const newPage = ( nowPage - 1 ) . toString ( ) ;
79- setReportQueryString ( ( cur ) => ( { ...cur , page : newPage } ) ) ;
80- }
81- } }
82- >
83- 뒤
84- </ button >
85- < span >
86- { reportPages . currentPage } /{ reportPages . totalPages }
87- </ span >
88- < button
89- className = "h-full w-10 rounded-2xl border bg-white"
90- onClick = { ( ) => {
91- const nowPage = Number ( reportQueryString . page ) ;
92- const totalPage = Number ( reportPages . totalPages ) ;
93- if ( nowPage < totalPage ) {
94- const newPage = ( nowPage + 1 ) . toString ( ) ;
95- console . log ( newPage ) ;
96- setReportQueryString ( ( cur ) => ( { ...cur , page : newPage } ) ) ;
97- }
98- } }
99- >
100- 앞
101- </ button >
102- </ div >
103- </ div >
77+ < PagenationNavigation
78+ totalPage = { Number ( reportPages . totalPages ) }
79+ buttonLength = { 3 }
80+ handlePageNumberButtonClick = { handleNowPage }
81+ />
10482 </ section >
10583 { detailModalOpen && (
10684 < ReportDetailModal selectedReport = { selectedReport } closeEvent = { setDetailModalOpen } />
0 commit comments