[apps/cs] feat: 일정 삭제 기능 추가 (CS_UT02030105)

This commit is contained in:
2025-07-10 10:41:22 +09:00
parent 63abf8282b
commit b1822b24ee
3 changed files with 21 additions and 1 deletions
@@ -34,6 +34,10 @@ class ScheduleApiService implements ScheduleService {
): Promise<void> {
await client.put(`${ENDPOINT.CMS_SERVICE.SCHEDULES}/${schdlSn}`, data);
}
public async deleteSchedule(schdlSn: number): Promise<void> {
await client.delete(`${ENDPOINT.CMS_SERVICE.SCHEDULES}/${schdlSn}`);
}
}
export const ScheduleApi = new ScheduleApiService();
@@ -71,4 +71,5 @@ export interface ScheduleService {
getScheduleInfo(schdlSn: number): Promise<Schedule>;
createSchedule(data: ScheduleFormData): Promise<void>;
updateSchedule(schdlSn: number, data: ScheduleUpdateFormData): Promise<void>;
deleteSchedule(schdlSn: number): Promise<void>;
}
+16 -1
View File
@@ -35,6 +35,16 @@ function ModifyPage({ schdlSn }: { schdlSn: string }) {
},
});
const { mutateAsync: deleteSchedule } = useMutationWrapper({
mutationFn: () => ScheduleApi.deleteSchedule(parseInt(schdlSn)),
onSuccess: () => {
queryClient.invalidateQueries({
queryKey: [ENDPOINT.CMS_SERVICE.SCHEDULES],
});
alert("일정이 삭제되었습니다.", router.back);
},
});
const form = useForm<ScheduleUpdateFormData>({
resolver: zodResolver(scheduleUpdateFormSchema),
values: {
@@ -57,7 +67,12 @@ function ModifyPage({ schdlSn }: { schdlSn: string }) {
<div className="card-header">
<h3 className="text-2xl font-medium text-label">스케줄 수정</h3>
</div>
<ScheduleForm form={form} handleSave={handleSave} />
<ScheduleForm
form={form}
scheduleId={schdlSn}
handleSave={handleSave}
handleDelete={deleteSchedule}
/>
</div>
);
}