@@ -6,33 +6,51 @@ import { getStudentDetail } from "../../api/students";
66
77const DetailManageStudent = ( ) => {
88 const { studentId } = useParams ( ) ;
9+ const numericId = Number ( studentId ) ;
910 const [ student , setStudent ] = useState ( null ) ;
1011
1112 useEffect ( ( ) => {
1213 const fetchStudent = async ( ) => {
1314 try {
14- const data = await getStudentDetail ( studentId ) ;
15+ const data = await getStudentDetail ( numericId ) ;
1516 setStudent ( data ) ;
1617 } catch ( err ) {
1718 console . error ( "학생 상세 정보 불러오기 실패:" , err ) ;
1819 }
1920 } ;
2021
2122 fetchStudent ( ) ;
22- } , [ studentId ] ) ;
23+ } , [ numericId ] ) ;
2324
2425 if ( ! student ) return < div > loading...</ div > ;
2526
27+ console . log ( "studentId from URL:" , studentId ) ;
28+ console . log ( "numericId:" , numericId ) ;
29+
2630 return (
2731 < div className = { style . managestudent_wrapper } >
2832 < Header />
2933 < div className = { style . under_header } >
3034 < div className = { style . student_card } >
31- < h2 > { student . name } </ h2 >
32- < p > 잔여 보증금: { student . deposit } 원</ p >
33- < p > 보증금 방어권: { student . defence } </ p >
35+ < h2 className = { style . student_name } > { student . name } </ h2 >
36+ < div className = { style . deposit_container } >
37+ < p >
38+ 잔여 보증금: < p > { student . deposit } 원</ p >
39+ </ p >
40+ </ div >
41+ < div className = { style . defence_container } >
42+ < p >
43+ 보증금 방어권: < p > { student . defence } </ p >
44+ </ p >
45+ </ div >
3446 </ div >
35-
47+ < button
48+ key = { student . id || index }
49+ className = { style . attendance_btn }
50+ onClick = { ( ) => navigate ( `/admin/attendance/${ student . id } ` ) }
51+ >
52+ 출석 관리 < span > ></ span >
53+ </ button >
3654 < div className = { style . assignment_list } >
3755 { student . assignmentTitles . map ( ( title , idx ) => (
3856 < button key = { idx } className = { style . assignment_button } >
0 commit comments