diff --git a/src/components/views/Modal/Modal.jsx b/src/components/views/Modal/Modal.jsx index 090933f..7a23315 100644 --- a/src/components/views/Modal/Modal.jsx +++ b/src/components/views/Modal/Modal.jsx @@ -1,7 +1,7 @@ -import "./Modal.css"; import { IMAGES } from "../../../constants/images"; +import "./Modal.css"; -const Modal = ({ setIsOpen, handleCancel, title, subtitle }) => { +const Modal = ({ setIsOpen, handleCancel, title, subtitle, isOk }) => { return (
@@ -9,15 +9,26 @@ const Modal = ({ setIsOpen, handleCancel, title, subtitle }) => {
{title}
{subtitle}
- setIsOpen((prev) => !prev)} - > - 취소 - - - 확인 - + {isOk ? ( + setIsOpen((prev) => !prev)} + > + 확인 + + ) : ( + <> + setIsOpen((prev) => !prev)} + > + 취소 + + + 확인 + + + )}
diff --git a/src/pages/OrderProcessPage/OrderProcessPage.jsx b/src/pages/OrderProcessPage/OrderProcessPage.jsx index 7b7be9b..154c183 100644 --- a/src/pages/OrderProcessPage/OrderProcessPage.jsx +++ b/src/pages/OrderProcessPage/OrderProcessPage.jsx @@ -35,9 +35,20 @@ const OrderProcessPage = () => { const [totalAmount, setTotalAmount] = useState(price); const [prevRadioPrice, setPrevRadioPrice] = useState(category?.map(() => 0)); const [optionIdx, setOptionIdx] = useState([]); - const [essentialOptionIdx, setEssentialOptionIdx] = useState({}); + const [essentialOptionIdx, setEssentialOptionIdx] = useState([]); + + // 축제용 모달 + const [isBoothOpen, setIsBoothOpen] = useState(false); + const boothModalTitle = ["포장/매장 옵션을 선택하셔야 합니다."] const handleCartUpdate = () => { + // 주점 포장/매장 옵션 선택 여부 확인 + const pickupIdx = category.filter((item) => item.name === "포장/매장")[0]?.options[0]?.idx; + if (pickupIdx && essentialOptionIdx.includes(pickupIdx)) { + setIsBoothOpen(true); + return; + } + let body = { storeId: storeId, foodieId: foodieId, @@ -452,6 +463,22 @@ const OrderProcessPage = () => { subtitle={"확인 버튼을 누르시면, 이전에 담은 메뉴가 삭제됩니다."} /> )} + + {/* 축제용 모달 */} + {isBoothOpen && ( + setIsBoothOpen(false)} + title={boothModalTitle.map((line, index) => ( + + {line} +
+
+ ))} + // subtitle={"확인 버튼을 누르시면, 이전에 담은 메뉴가 삭제됩니다."} + isOk={true} + /> + )} ); };