From 6eb06a925811cfefb34b6c286f6bdfe2f214ac2b Mon Sep 17 00:00:00 2001 From: joonhoekim <26rote@gmail.com> Date: Tue, 2 Sep 2025 08:43:19 +0000 Subject: (김준회) convention: 라우트 네이밍을 복수형으로 변경 (materials), MenuConfig 처리 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/[lng]/evcp/(evcp)/material/page.tsx | 76 -------------------------------- app/[lng]/evcp/(evcp)/materials/page.tsx | 76 ++++++++++++++++++++++++++++++++ config/menuConfig.ts | 4 +- 3 files changed, 78 insertions(+), 78 deletions(-) delete mode 100644 app/[lng]/evcp/(evcp)/material/page.tsx create mode 100644 app/[lng]/evcp/(evcp)/materials/page.tsx diff --git a/app/[lng]/evcp/(evcp)/material/page.tsx b/app/[lng]/evcp/(evcp)/material/page.tsx deleted file mode 100644 index 00983a3f..00000000 --- a/app/[lng]/evcp/(evcp)/material/page.tsx +++ /dev/null @@ -1,76 +0,0 @@ -/** - * 자재마스터 테이블 - * MDG 자재마스터를 그대로 보여줄 것임 - * 수정/추가 기능은 불필요 - */ - -import * as React from "react" -import { type SearchParams } from "@/types/table" - -import { Skeleton } from "@/components/ui/skeleton" -import { DataTableSkeleton } from "@/components/data-table/data-table-skeleton" -import { Shell } from "@/components/shell" -import { getMaterials } from "@/lib/material/services" -import { MaterialTable } from "@/lib/material/table/material-table" -import { InformationButton } from "@/components/information/information-button" -import { searchParamsCache } from "@/lib/material/validations" - -interface MaterialPageProps { - searchParams: Promise -} - -export default async function MaterialPage(props: MaterialPageProps) { - const searchParams = await props.searchParams - - // searchParamsCache를 사용해서 파라미터 파싱 - const search = searchParamsCache.parse(searchParams) - - // pageSize 기반으로 모드 자동 결정 - const isInfiniteMode = search.perPage >= 1_000_000 - - // 페이지네이션 모드일 때만 서버에서 데이터 가져오기 - // 무한 스크롤 모드에서는 클라이언트에서 SWR로 데이터 로드 - const promises = isInfiniteMode - ? undefined - : Promise.all([ - getMaterials(search as any), // 타입 캐스팅으로 임시 해결 - ]) - - return ( - -
-
-
-
-

- 자재마스터 -

- -
-

- MDG로부터 수신된 자재마스터 정보입니다. -

-
-
-
- - }> - {/* 추가 컴포넌트가 필요한 경우 여기에 */} - - - - } - > - - -
- ) -} \ No newline at end of file diff --git a/app/[lng]/evcp/(evcp)/materials/page.tsx b/app/[lng]/evcp/(evcp)/materials/page.tsx new file mode 100644 index 00000000..00983a3f --- /dev/null +++ b/app/[lng]/evcp/(evcp)/materials/page.tsx @@ -0,0 +1,76 @@ +/** + * 자재마스터 테이블 + * MDG 자재마스터를 그대로 보여줄 것임 + * 수정/추가 기능은 불필요 + */ + +import * as React from "react" +import { type SearchParams } from "@/types/table" + +import { Skeleton } from "@/components/ui/skeleton" +import { DataTableSkeleton } from "@/components/data-table/data-table-skeleton" +import { Shell } from "@/components/shell" +import { getMaterials } from "@/lib/material/services" +import { MaterialTable } from "@/lib/material/table/material-table" +import { InformationButton } from "@/components/information/information-button" +import { searchParamsCache } from "@/lib/material/validations" + +interface MaterialPageProps { + searchParams: Promise +} + +export default async function MaterialPage(props: MaterialPageProps) { + const searchParams = await props.searchParams + + // searchParamsCache를 사용해서 파라미터 파싱 + const search = searchParamsCache.parse(searchParams) + + // pageSize 기반으로 모드 자동 결정 + const isInfiniteMode = search.perPage >= 1_000_000 + + // 페이지네이션 모드일 때만 서버에서 데이터 가져오기 + // 무한 스크롤 모드에서는 클라이언트에서 SWR로 데이터 로드 + const promises = isInfiniteMode + ? undefined + : Promise.all([ + getMaterials(search as any), // 타입 캐스팅으로 임시 해결 + ]) + + return ( + +
+
+
+
+

+ 자재마스터 +

+ +
+

+ MDG로부터 수신된 자재마스터 정보입니다. +

+
+
+
+ + }> + {/* 추가 컴포넌트가 필요한 경우 여기에 */} + + + + } + > + + +
+ ) +} \ No newline at end of file diff --git a/config/menuConfig.ts b/config/menuConfig.ts index 269207bc..3b9844aa 100644 --- a/config/menuConfig.ts +++ b/config/menuConfig.ts @@ -50,7 +50,7 @@ export const mainNav: MenuSection[] = [ }, { titleKey: "menu.master_data.material_master", - href: "/evcp/material", + href: "/evcp/materials", descriptionKey: "menu.master_data.material_master_desc", groupKey: "groups.basic_info" }, @@ -471,7 +471,7 @@ export const procurementNav: MenuSection[] = [ }, { titleKey: "menu.master_data.material_master", - href: "/evcp/material", + href: "/evcp/materials", descriptionKey: "menu.master_data.material_master_desc", groupKey: "groups.basic_info" }, -- cgit v1.2.3