diff --git a/apps/cs/src/pages/schedule/api/schedule-service.ts b/apps/cs/src/pages/schedule/api/schedule-service.ts index b333b43f4..c7e2c8806 100644 --- a/apps/cs/src/pages/schedule/api/schedule-service.ts +++ b/apps/cs/src/pages/schedule/api/schedule-service.ts @@ -34,6 +34,10 @@ class ScheduleApiService implements ScheduleService { ): Promise { await client.put(`${ENDPOINT.CMS_SERVICE.SCHEDULES}/${schdlSn}`, data); } + + public async deleteSchedule(schdlSn: number): Promise { + await client.delete(`${ENDPOINT.CMS_SERVICE.SCHEDULES}/${schdlSn}`); + } } export const ScheduleApi = new ScheduleApiService(); diff --git a/apps/cs/src/pages/schedule/model/schedule-interface.ts b/apps/cs/src/pages/schedule/model/schedule-interface.ts index 98b6a703a..d9e942424 100644 --- a/apps/cs/src/pages/schedule/model/schedule-interface.ts +++ b/apps/cs/src/pages/schedule/model/schedule-interface.ts @@ -71,4 +71,5 @@ export interface ScheduleService { getScheduleInfo(schdlSn: number): Promise; createSchedule(data: ScheduleFormData): Promise; updateSchedule(schdlSn: number, data: ScheduleUpdateFormData): Promise; + deleteSchedule(schdlSn: number): Promise; } diff --git a/apps/cs/src/pages/schedule/ui/modify-page.tsx b/apps/cs/src/pages/schedule/ui/modify-page.tsx index e8f55534b..8b0a07a86 100644 --- a/apps/cs/src/pages/schedule/ui/modify-page.tsx +++ b/apps/cs/src/pages/schedule/ui/modify-page.tsx @@ -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({ resolver: zodResolver(scheduleUpdateFormSchema), values: { @@ -57,7 +67,12 @@ function ModifyPage({ schdlSn }: { schdlSn: string }) {

스케줄 수정

- + ); }