diff --git a/frontend/src/Presentation/components/Details/DetailTable/DetailTableBodyItem.tsx b/frontend/src/Presentation/components/Details/DetailTable/DetailTableBodyItem.tsx index de8f90dd4..a9a853c1d 100644 --- a/frontend/src/Presentation/components/Details/DetailTable/DetailTableBodyItem.tsx +++ b/frontend/src/Presentation/components/Details/DetailTable/DetailTableBodyItem.tsx @@ -69,6 +69,7 @@ const DetailTableBodyItem = ({ presentationStatus: item.presentationStatus, presentationLocation: item.presentationLocation, detail: item.detail, + category: item.category, }); openAdminModal("statusModal"); } else { diff --git a/frontend/src/Presentation/components/Modals/EditStatusModal/EditStatusModal.tsx b/frontend/src/Presentation/components/Modals/EditStatusModal/EditStatusModal.tsx index 4917603fb..9368d9661 100644 --- a/frontend/src/Presentation/components/Modals/EditStatusModal/EditStatusModal.tsx +++ b/frontend/src/Presentation/components/Modals/EditStatusModal/EditStatusModal.tsx @@ -76,7 +76,14 @@ const EditStatusModal = ({ list, closeModal }: EditStatusModalProps) => { IDropdownOptions[] >([]); const statusDropdownProps = { - options: statusOptions, + options: statusOptions.map((option) => ({ + ...option, + isDisabled: + currentPresentation?.category === "DUMMY" && + option.value === PresentationStatusType.CANCEL + ? true + : false, + })), defaultValue: statusOptions.find( (option) => option.value === currentPresentation?.presentationStatus diff --git a/frontend/src/Presentation/types/dto/presentation.dto.ts b/frontend/src/Presentation/types/dto/presentation.dto.ts index a385ca159..18c79d67f 100644 --- a/frontend/src/Presentation/types/dto/presentation.dto.ts +++ b/frontend/src/Presentation/types/dto/presentation.dto.ts @@ -28,6 +28,7 @@ export interface IPresentationInfo { presentationTime: PresentationPeriodType | null; presentationLocation?: string | null; detail: string | null; + category: PresentationCategoryType | "DUMMY" | null; } export interface IPresentationScheduleDetailInfo {