From e0ec91e78d4e7756c7c28868d66e932f855341a0 Mon Sep 17 00:00:00 2001 From: qkrxogmla Date: Fri, 30 May 2025 14:16:33 +0900 Subject: [PATCH] =?UTF-8?q?=EC=88=98=EC=A0=95=ED=9B=84=20=EC=95=88?= =?UTF-8?q?=EB=B3=B4=EC=9D=B4=EB=8A=94=20=EC=98=A4=EB=A5=98=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/components/TaskModal.jsx | 23 +++++++++++------------ frontend/src/pages/admin/ManageTask.jsx | 10 +++++----- 2 files changed, 16 insertions(+), 17 deletions(-) diff --git a/frontend/src/components/TaskModal.jsx b/frontend/src/components/TaskModal.jsx index c3a2d25..04d71fe 100644 --- a/frontend/src/components/TaskModal.jsx +++ b/frontend/src/components/TaskModal.jsx @@ -25,22 +25,21 @@ const TaskModal = ({ weekInfo, onClose, onSubmit }) => { const handleAddTask = () => { setTaskList([...taskList, ""]); }; - const handleSave = async () => { const weekNumber = parseInt(weekInfo.week.replace("주차", "")); const filteredTasks = taskList.filter((t) => t.trim() !== ""); - const requests = filteredTasks.map((task, index) => { - const existingTask = weekInfo.tasks[index]; - const payload = { - title: topic, - subtitle: topic, - assignmentName: task, - week: weekNumber, - day: day, - orderNumber: index + 1, - }; + const newTasks = filteredTasks.map((task, index) => ({ + title: topic, + subtitle: topic, + assignmentName: task, + week: weekNumber, + day: day, + orderNumber: index + 1, + })); + const requests = newTasks.map((payload, index) => { + const existingTask = weekInfo.tasks[index]; return existingTask?.id ? putAssignment(existingTask.id, payload) : postAssignment(payload); @@ -49,7 +48,7 @@ const TaskModal = ({ weekInfo, onClose, onSubmit }) => { try { await Promise.all(requests); alert("과제가 저장되었습니다."); - onSubmit && onSubmit(); + onSubmit && onSubmit(newTasks); onClose(); } catch (error) { console.error("저장 오류:", error); diff --git a/frontend/src/pages/admin/ManageTask.jsx b/frontend/src/pages/admin/ManageTask.jsx index 729f65f..a5a7011 100644 --- a/frontend/src/pages/admin/ManageTask.jsx +++ b/frontend/src/pages/admin/ManageTask.jsx @@ -61,10 +61,10 @@ const ManageTask = () => { ]); }; - const handleAddTaskToWeek = (weekIndex, newTask) => { + const handleAddTaskToWeek = (weekIndex, newTasks) => { const updated = [...assignmentsByWeek]; - updated[weekIndex].tasks.push(newTask); - updated[weekIndex].title = newTask.title; + updated[weekIndex].tasks = newTasks; + updated[weekIndex].title = newTasks[0]?.title || "Comming soon~"; setAssignmentsByWeek(updated); }; @@ -96,8 +96,8 @@ const ManageTask = () => { { - handleAddTaskToWeek(selectedWeekIndex, newTask); + onSubmit={(newTasks) => { + handleAddTaskToWeek(selectedWeekIndex, newTasks); closeModal(); }} />