diff --git a/apps/nowait-user/src/api/order.ts b/apps/nowait-user/src/api/order.ts index b937bf3c..be9528b2 100644 --- a/apps/nowait-user/src/api/order.ts +++ b/apps/nowait-user/src/api/order.ts @@ -39,7 +39,7 @@ export const createOrder = async ( }; //주문내역 가져오기 -export const getMyOrderList = async ( +export const getOrderDetails = async ( storeId: string | undefined, tableId: string ) => { diff --git a/apps/nowait-user/src/components/EmptyPage.tsx b/apps/nowait-user/src/components/EmptyPage.tsx new file mode 100644 index 00000000..9cb4bdc6 --- /dev/null +++ b/apps/nowait-user/src/components/EmptyPage.tsx @@ -0,0 +1,32 @@ +import { useNavigate, useParams } from "react-router-dom"; +import { SmallActionButton } from "./SmallActionButton"; +import Add from "../assets/icon/Add.svg?react"; + +interface PropsType { + mode: "default" | "orderDetails"; + title: string; + buttonText: string; +} + +const EmptyPage = ({ mode, title, buttonText }: PropsType) => { + const navigate = useNavigate(); + const { storeId } = useParams(); + return ( +
+

+ {title} +

+ navigate(`/${storeId}`)} + > + {buttonText} + + +
+ ); +}; + +export default EmptyPage; diff --git a/apps/nowait-user/src/components/SmallActionButton.tsx b/apps/nowait-user/src/components/SmallActionButton.tsx index 6c8512b2..4599a81a 100644 --- a/apps/nowait-user/src/components/SmallActionButton.tsx +++ b/apps/nowait-user/src/components/SmallActionButton.tsx @@ -1,4 +1,5 @@ interface PropsType { + mode? : "default" | "orderDetails" type?: "button" | "submit" | "reset"; ariaLabel: string; children: React.ReactNode; @@ -6,6 +7,7 @@ interface PropsType { className?: string; } export const SmallActionButton = ({ + mode = "default", type = "button", children, onClick, @@ -16,7 +18,7 @@ export const SmallActionButton = ({ +

+ 주문내역 1건 +

+ + + + ); +}; + +export default OrderDetailsPage; diff --git a/apps/nowait-user/src/pages/order/orderDetails/components/EmptyOrderDetails.tsx b/apps/nowait-user/src/pages/order/orderDetails/components/EmptyOrderDetails.tsx new file mode 100644 index 00000000..5b3c4eab --- /dev/null +++ b/apps/nowait-user/src/pages/order/orderDetails/components/EmptyOrderDetails.tsx @@ -0,0 +1,13 @@ +import EmptyPage from "../../../../components/EmptyPage"; + +const EmptyOrderDetails = () => { + return ( + + ); +}; + +export default EmptyOrderDetails; diff --git a/apps/nowait-user/src/pages/order/orderList/OrderListPage.tsx b/apps/nowait-user/src/pages/order/orderList/OrderListPage.tsx index 80497a80..563da2f3 100644 --- a/apps/nowait-user/src/pages/order/orderList/OrderListPage.tsx +++ b/apps/nowait-user/src/pages/order/orderList/OrderListPage.tsx @@ -37,6 +37,7 @@ const OrderListPage = () => { })} navigate(`/${storeId}`)} diff --git a/apps/nowait-user/src/pages/order/orderList/components/EmptyCart.tsx b/apps/nowait-user/src/pages/order/orderList/components/EmptyCart.tsx index 076bfa20..207856eb 100644 --- a/apps/nowait-user/src/pages/order/orderList/components/EmptyCart.tsx +++ b/apps/nowait-user/src/pages/order/orderList/components/EmptyCart.tsx @@ -1,26 +1,12 @@ -import { useNavigate, useParams } from "react-router-dom"; -import Add from "../../../../assets/icon/Add.svg?react"; -import { SmallActionButton } from "../../../../components/SmallActionButton"; +import EmptyPage from "../../../../components/EmptyPage"; const EmptyCart = () => { - const navigate = useNavigate(); - const { storeId } = useParams(); return ( -
-

- 아직 담긴 메뉴가 없어요. -
- 마음에 드는 메뉴를 담아주세요! -

- navigate(`/${storeId}`)} - > - 추가하기 - - -
+ ); }; diff --git a/apps/nowait-user/src/pages/order/remittenceWait/RemittanceWaitPage.tsx b/apps/nowait-user/src/pages/order/remittenceWait/RemittanceWaitPage.tsx index bd4c451d..09c53baf 100644 --- a/apps/nowait-user/src/pages/order/remittenceWait/RemittanceWaitPage.tsx +++ b/apps/nowait-user/src/pages/order/remittenceWait/RemittanceWaitPage.tsx @@ -1,4 +1,3 @@ -import React from "react"; import { useNavigate, useParams } from "react-router-dom"; import PageFooterButton from "../../../components/order/PageFooterButton"; import { Button } from "@repo/ui"; diff --git a/apps/nowait-user/src/routes/Router.tsx b/apps/nowait-user/src/routes/Router.tsx index 7a57a430..f7cdceea 100644 --- a/apps/nowait-user/src/routes/Router.tsx +++ b/apps/nowait-user/src/routes/Router.tsx @@ -15,6 +15,8 @@ import WaitingPartySizeForm from "../pages/waiting/waitingPartysize/WaitingParty import StoreMenuDetailPage from "../pages/waiting/menuDetail/StoreMenuDetailPage"; import WaitingSummaryPage from "../pages/waiting/WaitingSummary/WaitingSummaryPage"; import AddMenuPage from "../pages/order/addMenu/AddMenuPage"; +import RemittanceWaitPage from "../pages/order/remittenceWait/RemittanceWaitPage"; +import OrderDetailsPage from "../pages/order/orderDetails/OrderDetailsPage"; import RemittancePage from "../pages/order/remittance/RemittancePage"; // AuthGuard로 래핑하는 헬퍼 함수 @@ -31,39 +33,32 @@ const withTransition = (Component: React.ComponentType) => ( const Router = () => { const location = useLocation(); return ( - // - - {/* 공개 라우트 - 인증 불필요 */} - } /> - } /> - - {/* 보호된 라우트 - 인증 필요 (구체적인 경로 먼저) */} - - {/* */} - - - + + {/* 공개 라우트 - 인증 불필요 */} + } /> + } /> {/* QR 코드 접속 페이지 - 인증 불필요 (일반적인 경로 나중에) */} } /> - - + } /> + } /> - + + {/* 보호된 라우트 - 인증 필요 */}