[apps/cs] feat: 일정 삭제 기능 추가 (CS_UT02030105)
This commit is contained in:
@@ -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>;
|
||||
}
|
||||
|
||||
@@ -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>
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user