diff --git a/frontend/src/api/students.js b/frontend/src/api/students.js index 3239a66..03e7f98 100644 --- a/frontend/src/api/students.js +++ b/frontend/src/api/students.js @@ -17,3 +17,11 @@ export const getStudentDetail = async (studentId) => { throw error; } }; + +// 보증금 방어권 수정 +export const updateStudentDefence = async (studentId, defenceValue) => { + const res = await api.patch(`/admin/managestudent/${studentId}/defence`, { + defence: defenceValue, + }); + return res.data; +}; diff --git a/frontend/src/pages/admin/DetailManageStudent.jsx b/frontend/src/pages/admin/DetailManageStudent.jsx index 36cfbb1..1dd5798 100644 --- a/frontend/src/pages/admin/DetailManageStudent.jsx +++ b/frontend/src/pages/admin/DetailManageStudent.jsx @@ -4,6 +4,7 @@ import { useEffect, useState } from "react"; import Header from "../../components/Header"; import style from "./DetailManageStudent.module.css"; import { getStudentDetail } from "../../api/students"; +import { updateStudentDefence } from "../../api/students"; // 보증금 방어권 수정 api const weekData = [ { week: "1주차", title: "Git/HTML/CSS" }, @@ -17,6 +18,7 @@ const DetailManageStudent = () => { const { studentId } = useParams(); const numericId = Number(studentId); const [student, setStudent] = useState(null); + const [defenceInput, setDefenceInput] = useState(""); // 보증금 방어권 input 값 const navigate = useNavigate(); useEffect(() => { @@ -38,8 +40,19 @@ const DetailManageStudent = () => { }; fetchStudent(); + setDefenceInput(data.defenece); // 보증금 업데이트 }, [studentId]); + const handleDefenceSave = async () => { + try { + await updateStudentDefence(student.id, defenceInput); + setStudent((prev) => ({ ...prev, defence: defenceInput })); + alert("보증금 방어권이 수정되었습니다."); + } catch (err) { + console.error("방어권 업데이트 실패:", err); + alert("방어권 업데이트 실패"); + } + }; if (!student) return