| @@ -0,0 +1,40 @@ | |||||
| // import { TypeEnum } from "@/app/utils/typeEnum"; | |||||
| // import DetailedSchedule from "@/components/DetailedSchedule"; | |||||
| // import { getServerI18n } from "@/i18n"; | |||||
| import PutAwayScan from "@/components/PutAwayScan"; | |||||
| import { I18nProvider, getServerI18n } from "@/i18n"; | |||||
| import Stack from "@mui/material/Stack"; | |||||
| import Typography from "@mui/material/Typography"; | |||||
| import { Metadata } from "next"; | |||||
| import { Suspense } from "react"; | |||||
| export const metadata: Metadata = { | |||||
| title: "Put Away", | |||||
| }; | |||||
| const PutAway: React.FC = async () => { | |||||
| const { t } = await getServerI18n("putAway"); | |||||
| return ( | |||||
| <> | |||||
| <Stack | |||||
| direction="row" | |||||
| justifyContent="space-between" | |||||
| flexWrap="wrap" | |||||
| rowGap={2} | |||||
| > | |||||
| <Typography variant="h4" marginInlineEnd={2}> | |||||
| {t("Put Away")} | |||||
| </Typography> | |||||
| </Stack> | |||||
| <I18nProvider namespaces={["putAway", "common"]}> | |||||
| <Suspense fallback={<PutAwayScan.Loading />}> | |||||
| <PutAwayScan /> | |||||
| </Suspense> | |||||
| </I18nProvider> | |||||
| </> | |||||
| ); | |||||
| }; | |||||
| export default PutAway; | |||||
| @@ -27,6 +27,7 @@ const pathToLabelMap: { [path: string]: string } = { | |||||
| "/dashboard": "dashboard", | "/dashboard": "dashboard", | ||||
| "/jo": "Job Order", | "/jo": "Job Order", | ||||
| "/jo/edit": "Edit Job Order", | "/jo/edit": "Edit Job Order", | ||||
| "/putAway": "Put Away", | |||||
| }; | }; | ||||
| const Breadcrumb = () => { | const Breadcrumb = () => { | ||||
| @@ -79,6 +79,11 @@ const NavigationContent: React.FC = () => { | |||||
| label: "View item In-out And inventory Ledger", | label: "View item In-out And inventory Ledger", | ||||
| path: "/inventory", | path: "/inventory", | ||||
| }, | }, | ||||
| { | |||||
| icon: <RequestQuote />, | |||||
| label: "Put Away Scan", | |||||
| path: "/putAway", | |||||
| }, | |||||
| ], | ], | ||||
| }, | }, | ||||
| // { | // { | ||||
| @@ -0,0 +1,12 @@ | |||||
| import React from "react"; | |||||
| type Props = { | |||||
| }; | |||||
| const PutAwayScan: React.FC<Props> = ({} ) => { | |||||
| return <></> | |||||
| } | |||||
| export default PutAwayScan; | |||||
| @@ -0,0 +1,15 @@ | |||||
| import React from "react"; | |||||
| import GeneralLoading from "../General/GeneralLoading"; | |||||
| import PutAwayScan from "./PutAwayScan"; | |||||
| interface SubComponents { | |||||
| Loading: typeof GeneralLoading; | |||||
| } | |||||
| const PutAwayScanWrapper: React.FC & SubComponents = async () => { | |||||
| return <PutAwayScan/> | |||||
| } | |||||
| PutAwayScanWrapper.Loading = GeneralLoading; | |||||
| export default PutAwayScanWrapper; | |||||
| @@ -0,0 +1 @@ | |||||
| export { default } from "./PutAwayScanWrapper" | |||||
| @@ -82,5 +82,7 @@ | |||||
| "mins": "分鐘", | "mins": "分鐘", | ||||
| "Job Order": "工單", | "Job Order": "工單", | ||||
| "Edit Job Order": "編輯工單", | "Edit Job Order": "編輯工單", | ||||
| "Production": "生產流程" | |||||
| "Production": "生產流程", | |||||
| "Put Away": "上架", | |||||
| "Put Away Scan": "上架掃碼" | |||||
| } | } | ||||
| @@ -0,0 +1,4 @@ | |||||
| { | |||||
| "Put Away": "上架", | |||||
| "Put Away Scan": "上架掃碼" | |||||
| } | |||||