From 7e82714678b073d2c71a275683f6d147c31ec14d Mon Sep 17 00:00:00 2001 From: ljpark Date: Wed, 11 Feb 2026 18:17:39 +0900 Subject: [PATCH] =?UTF-8?q?=EB=A9=94=EB=89=B4=EC=99=80=20=ED=99=94?= =?UTF-8?q?=EB=A9=B4=EC=A0=9C=EB=AA=A9=20=EC=9D=BC=EC=B9=98=20wr,=20fo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pages/(with-layout)/dashboard/page.tsx | 42 ++++++++++++++++++- .../facilityPrecipitation/page.tsx | 5 +-- .../(with-layout)/facilityWaterQlty/page.tsx | 3 +- .../app/pages/(with-layout)/flowRate/page.tsx | 3 +- apps/fo/app/pages/(with-layout)/layout.tsx | 7 +++- .../pages/(with-layout)/planSewage/page.tsx | 3 +- .../pages/(with-layout)/processArea/page.tsx | 3 +- .../(with-layout)/processFacility/page.tsx | 3 +- apps/fo/app/pages/(with-layout)/rdi/page.tsx | 5 +-- .../pages/(with-layout)/sewageOccur/page.tsx | 5 +-- .../(with-layout)/underWaterInput/page.tsx | 5 +-- .../matMng/coMat/coMatRvw/page.tsx | 3 +- .../matMng/coMat/ruseCaseMng/page.tsx | 3 +- .../matMng/coMat/ruseRvwHstry/page.tsx | 3 +- .../matMng/coMng/coSttn/page.tsx | 3 +- .../matMng/coMng/drgtSttn/page.tsx | 5 +-- .../matMng/coMng/ldrmntCoSttn/page.tsx | 4 +- .../ruseFcltMng/fcltReg/htdflReg/page.tsx | 3 +- .../ruseFcltMng/fcltReg/pbnstReg/page.tsx | 3 +- .../ruseFcltMng/fcltReg/rainReg/page.tsx | 3 +- .../ruseFcltMng/fcltReg/rswtReg/page.tsx | 3 +- .../ruseFcltMng/fcltSttn/htdflSttn/page.tsx | 3 +- .../ruseFcltMng/fcltSttn/pbnstSttn/page.tsx | 3 +- .../ruseFcltMng/fcltSttn/rainSttn/page.tsx | 3 +- .../ruseFcltMng/fcltSttn/rswtSttn/page.tsx | 3 +- .../ruseFcltMng/prfmncReg/chkgdnReg/page.tsx | 3 +- .../prfmncReg/pbnstPrfmncReg/page.tsx | 3 +- .../prfmncSttn/chkgdnSttn/page.tsx | 3 +- .../prfmncSttn/pbnstPrfmncSttn/page.tsx | 4 +- .../app/(with-layout)/stats/rainStat/page.tsx | 4 +- .../app/(with-layout)/stats/rswtStat/page.tsx | 3 +- apps/wr/app/base.tsx | 8 +++- 32 files changed, 88 insertions(+), 69 deletions(-) diff --git a/apps/fo/app/pages/(with-layout)/dashboard/page.tsx b/apps/fo/app/pages/(with-layout)/dashboard/page.tsx index 24d71e719..88d723d0b 100644 --- a/apps/fo/app/pages/(with-layout)/dashboard/page.tsx +++ b/apps/fo/app/pages/(with-layout)/dashboard/page.tsx @@ -265,10 +265,48 @@ export default function DashBoard() { break; case 'rainManage': // 강우일 운영현황 - searchRainManage(searchYear, fcltyList.bscFctCd, true); + await searchRainManage(searchYear, fcltyList.bscFctCd, true); if (excelList && excelList.length > 0) { + const toNumber = (value: unknown) => { + if (value === null || value === undefined || value === '') return ''; + const parsed = typeof value === "number" ? value : Number(String(value).replace(/,/g, "")); + return Number.isFinite(parsed) ? parsed : ''; + }; + + const numericKeys = [ + "강우조건비율", + "일수", + "유입유량", + "시설용량대비", + "설계유입수질BOD", + "설계유입수질TOC", + "설계유입수질SS", + "설계유입수질TN", + "설계유입수질TP", + "유입수질BOD", + "유입수질TOC", + "유입수질SS", + "유입수질TN", + "유입수질TP", + "방류수질BOD", + "방류수질TOC", + "방류수질SS", + "방류수질TN", + "방류수질TP", + ]; + + const excelData = excelList.map((row) => { + const nextRow = { ...row } as Record; + numericKeys.forEach((key) => { + if (key in nextRow) { + nextRow[key] = toNumber(nextRow[key]); + } + }); + return nextRow; + }); + downloadExcelFormat({ - data: excelList as unknown as JSON[], + data: excelData as unknown as JSON[], fileName: '강우일 운영현황', sheetNameArray: ['강우일 운영현황'], headerRange: 'A1:T1', diff --git a/apps/fo/app/pages/(with-layout)/facilityPrecipitation/page.tsx b/apps/fo/app/pages/(with-layout)/facilityPrecipitation/page.tsx index 9570320d4..cbc9861e0 100644 --- a/apps/fo/app/pages/(with-layout)/facilityPrecipitation/page.tsx +++ b/apps/fo/app/pages/(with-layout)/facilityPrecipitation/page.tsx @@ -7,7 +7,7 @@ "use client" import { StoreContext, useFoStore } from "@/app/store"; import type { TableUpperProps } from "@/app/store/common"; -import { ContentsDiv, downloadExcelFormat, MainDiv, SearchBaseForm, SearchInput, SelectBox, Title, UiModal, UiTable, type ReturnType } from "@common/business_components"; +import { ContentsDiv, downloadExcelFormat, MainDiv, SearchBaseForm, SearchInput, SelectBox, UiModal, UiTable, type ReturnType } from "@common/business_components"; import ListDiv from "@common/business_components/ui/list_div"; import { useCallback, useContext, useEffect, useRef, useState } from "react"; import PrecipitationModal from "./modal/page"; @@ -238,8 +238,7 @@ export default function FacilityPrecipitation() { return ( - - <ContentsDiv> + <ContentsDiv> <SearchBaseForm leftChildren={<> <SelectBox className="col-span-3" label={labelArray[3] as string} selectArray={selectUpdownData} diff --git a/apps/fo/app/pages/(with-layout)/facilityWaterQlty/page.tsx b/apps/fo/app/pages/(with-layout)/facilityWaterQlty/page.tsx index b76423d57..43c0d674d 100644 --- a/apps/fo/app/pages/(with-layout)/facilityWaterQlty/page.tsx +++ b/apps/fo/app/pages/(with-layout)/facilityWaterQlty/page.tsx @@ -9,7 +9,7 @@ import { StoreContext, useFoStore } from "@/app/store"; import type { TableUpperProps } from "@/app/store/common"; import type { FacilityWaterQltyProps } from "@/app/store/facilityWaterQlty"; -import { ContentsDiv, downloadExcelFormat, MainDiv, SearchBaseForm, SearchInput, SelectBox, Title, UiModal, UiTable, type ReturnType } from "@common/business_components"; +import { ContentsDiv, downloadExcelFormat, MainDiv, SearchBaseForm, SearchInput, SelectBox, UiModal, UiTable, type ReturnType } from "@common/business_components"; import ListDiv from "@common/business_components/ui/list_div"; import LoadingOverlay from "@common/business_components/ui/loadingBar"; import { useCallback, useContext, useEffect, useRef, useState } from "react"; @@ -212,7 +212,6 @@ export default function ProcessFacilitySearch() { const total = facilityWaterQltyCount || 1; return ( <MainDiv> - <Title title="시설별 수질현황" /> <ContentsDiv> <SearchBaseForm leftChildren={<> diff --git a/apps/fo/app/pages/(with-layout)/flowRate/page.tsx b/apps/fo/app/pages/(with-layout)/flowRate/page.tsx index d83386dee..be0f81b03 100644 --- a/apps/fo/app/pages/(with-layout)/flowRate/page.tsx +++ b/apps/fo/app/pages/(with-layout)/flowRate/page.tsx @@ -8,7 +8,7 @@ import { StoreContext, useFoStore } from "@/app/store"; import type { TableUpperProps } from "@/app/store/common"; // import type { ExcelType } from "@/app/store/flowRate"; -import { ContentsDiv, downloadExcelFormat, MainDiv, SearchBaseForm, SearchInput, SelectBox, Title, UiModal, UiTable, type ReturnType } from "@common/business_components"; +import { ContentsDiv, downloadExcelFormat, MainDiv, SearchBaseForm, SearchInput, SelectBox, UiModal, UiTable, type ReturnType } from "@common/business_components"; import ListDiv from "@common/business_components/ui/list_div"; import LoadingOverlay from "@common/business_components/ui/loadingBar"; import { useCallback, useContext, useEffect, useRef, useState } from "react"; @@ -208,7 +208,6 @@ export default function ProcessFacilitySearch() { const total = flowRateCount; return ( <MainDiv> - <Title title="시설별 유량현황" /> <ContentsDiv> <SearchBaseForm leftChildren={<> diff --git a/apps/fo/app/pages/(with-layout)/layout.tsx b/apps/fo/app/pages/(with-layout)/layout.tsx index 851d79497..f77bc244b 100644 --- a/apps/fo/app/pages/(with-layout)/layout.tsx +++ b/apps/fo/app/pages/(with-layout)/layout.tsx @@ -4,6 +4,8 @@ import { BaseLayout } from "@common/components"; import type { MenuItem } from "@/app/store/common"; import { useFoStore } from "@/app/store"; import { usePathname, useRouter } from "next/navigation"; +import { useMenuStore } from "@/src/shared/lib"; +import { PageLayout } from "@/src/shared/ui/page-layout"; export default function RootLayout({ children, @@ -11,12 +13,15 @@ export default function RootLayout({ children: React.ReactNode; }>) { const { getMenuAuth } = useFoStore((state) => state); + const setCurrentMenuInfo = useMenuStore((state) => state.setCurrentMenuInfo); const pathname = usePathname(); const router = useRouter(); const handleClick = (id: MenuItem) => { + setCurrentMenuInfo(id); getMenuAuth(id.menuCd); router.push(id.urlPath); + console.log(id); }; return ( @@ -24,7 +29,7 @@ export default function RootLayout({ currentPath={pathname ?? ""} handleMenuClick={handleClick} > - {children} + <PageLayout>{children}</PageLayout> </BaseLayout> ); } diff --git a/apps/fo/app/pages/(with-layout)/planSewage/page.tsx b/apps/fo/app/pages/(with-layout)/planSewage/page.tsx index 9b4e75cb9..cd3c9b053 100644 --- a/apps/fo/app/pages/(with-layout)/planSewage/page.tsx +++ b/apps/fo/app/pages/(with-layout)/planSewage/page.tsx @@ -7,7 +7,7 @@ "use client" import { StoreContext, useFoStore } from "@/app/store"; import type { TableUpperProps } from "@/app/store/common"; -import { downloadExcelFormat, MainDiv, SearchBaseForm, SearchInput, SelectBox, Title, UiTable, type ReturnType } from "@common/business_components"; +import { downloadExcelFormat, MainDiv, SearchBaseForm, SearchInput, SelectBox, UiTable, type ReturnType } from "@common/business_components"; import ListDiv from "@common/business_components/ui/list_div"; import { useCallback, useContext, useEffect, useRef, useState } from "react"; import LoadingOverlay from "@common/business_components/ui/loadingBar"; @@ -248,7 +248,6 @@ export default function PlanSewage() { return ( <MainDiv> - <Title title="계획하수량 산정지표 현황" /> <SearchBaseForm leftChildren={<> <SelectBox className="col-span-3" label={labelArray[3] as string} selectArray={selectUpdownData} onSelectValue={(val) => setFcltCpct(val.toString())} value={fcltCpct} selectClass={undefined} /> diff --git a/apps/fo/app/pages/(with-layout)/processArea/page.tsx b/apps/fo/app/pages/(with-layout)/processArea/page.tsx index bca5a7b91..5e4ad0b5b 100644 --- a/apps/fo/app/pages/(with-layout)/processArea/page.tsx +++ b/apps/fo/app/pages/(with-layout)/processArea/page.tsx @@ -7,7 +7,7 @@ "use client" import { StoreContext, useFoStore } from "@/app/store"; import { useShallow } from 'zustand/react/shallow'; -import { ContentsDiv, downloadExcelFormat, MainDiv, SearchBaseForm, SelectBox, Title, UiModal, UiTable, type ReturnType } from "@common/business_components"; +import { ContentsDiv, downloadExcelFormat, MainDiv, SearchBaseForm, SelectBox, UiModal, UiTable, type ReturnType } from "@common/business_components"; import ListDiv from "@common/business_components/ui/list_div"; import { useCallback, useContext, useEffect, useRef, useState } from "react"; import ProcessFacilityInfoModal from "./modal/page"; @@ -179,7 +179,6 @@ export default function ProcessArea() { const total = processAreaCount; return ( <MainDiv> - <Title title="처리구역정보" /> <ContentsDiv> <SearchBaseForm leftChildren={<> diff --git a/apps/fo/app/pages/(with-layout)/processFacility/page.tsx b/apps/fo/app/pages/(with-layout)/processFacility/page.tsx index def1ca0e8..efa7b8a53 100644 --- a/apps/fo/app/pages/(with-layout)/processFacility/page.tsx +++ b/apps/fo/app/pages/(with-layout)/processFacility/page.tsx @@ -7,7 +7,7 @@ "use client" import UnderComment from "@/app/components/common/UnderComment"; import { StoreContext, useFoStore } from "@/app/store"; -import { ContentsDiv, downloadExcelFormat, MainDiv, SearchBaseForm, SearchInput, SelectBox, Title, UiModal, UiTable, type ReturnType } from "@common/business_components"; +import { ContentsDiv, downloadExcelFormat, MainDiv, SearchBaseForm, SearchInput, SelectBox, UiModal, UiTable, type ReturnType } from "@common/business_components"; import ListDiv from "@common/business_components/ui/list_div"; import LoadingOverlay from "@common/business_components/ui/loadingBar"; import { useCallback, useContext, useEffect, useRef, useState } from "react"; @@ -282,7 +282,6 @@ export default function ProcessFacilitySearch() { return ( <MainDiv> - <Title title="처리시설 시설정보" /> <ContentsDiv> <SearchBaseForm leftChildren={<> diff --git a/apps/fo/app/pages/(with-layout)/rdi/page.tsx b/apps/fo/app/pages/(with-layout)/rdi/page.tsx index ff4b8d205..8a2c87956 100644 --- a/apps/fo/app/pages/(with-layout)/rdi/page.tsx +++ b/apps/fo/app/pages/(with-layout)/rdi/page.tsx @@ -7,7 +7,7 @@ "use client" import { StoreContext, useFoStore } from "@/app/store"; import type { TableUpperProps } from "@/app/store/common"; -import { ContentsDiv, downloadExcelFormat, MainDiv, SearchBaseForm, SearchInput, SelectBox, Title, UiTable, type ReturnType } from "@common/business_components"; +import { ContentsDiv, downloadExcelFormat, MainDiv, SearchBaseForm, SearchInput, SelectBox, UiTable, type ReturnType } from "@common/business_components"; import ListDiv from "@common/business_components/ui/list_div"; import { useCallback, useContext, useEffect, useRef, useState } from "react"; import LoadingOverlay from "@common/business_components/ui/loadingBar"; @@ -248,8 +248,7 @@ export default function Rdi() { return ( <MainDiv> - <Title title="RDII추정" /> - <ContentsDiv> + <ContentsDiv> <SearchBaseForm leftChildren={<> <SelectBox className="col-span-3" label={labelArray[3] as string} selectArray={selectUpdownData} onSelectValue={(val) => setFcltCpct(val.toString())} value={fcltCpct} selectClass={undefined} /> diff --git a/apps/fo/app/pages/(with-layout)/sewageOccur/page.tsx b/apps/fo/app/pages/(with-layout)/sewageOccur/page.tsx index 95aa8961a..a70b6e6cd 100644 --- a/apps/fo/app/pages/(with-layout)/sewageOccur/page.tsx +++ b/apps/fo/app/pages/(with-layout)/sewageOccur/page.tsx @@ -9,7 +9,7 @@ import { StoreContext, useFoStore } from "@/app/store"; import { type TableUpperProps } from "@/app/store/common"; import type { SewageOccurProps } from "@/app/store/sewageOccur"; -import { ContentsDiv, downloadExcelFormat, MainDiv, SearchBaseForm, SearchInput, SelectBox, Title, UiModal, UiTable, type ReturnType } from "@common/business_components"; +import { ContentsDiv, downloadExcelFormat, MainDiv, SearchBaseForm, SearchInput, SelectBox, UiModal, UiTable, type ReturnType } from "@common/business_components"; import ListDiv from "@common/business_components/ui/list_div"; import LoadingOverlay from "@common/business_components/ui/loadingBar"; import { useCallback, useContext, useEffect, useRef, useState } from "react"; @@ -261,8 +261,7 @@ export default function PlanSewage() { return ( <MainDiv> - <Title title="오수발생량 추정" /> - <ContentsDiv> + <ContentsDiv> <SearchBaseForm leftChildren={<> <SelectBox className="col-span-3" label={labelArray[3] as string} selectArray={selectUpdownData} onSelectValue={(val) => setFcltCpct(val.toString())} value={fcltCpct} selectClass={undefined} /> diff --git a/apps/fo/app/pages/(with-layout)/underWaterInput/page.tsx b/apps/fo/app/pages/(with-layout)/underWaterInput/page.tsx index 36fbff308..9bf7eccb5 100644 --- a/apps/fo/app/pages/(with-layout)/underWaterInput/page.tsx +++ b/apps/fo/app/pages/(with-layout)/underWaterInput/page.tsx @@ -9,7 +9,7 @@ "use client" import { StoreContext, useFoStore } from "@/app/store"; import type { TableUpperProps } from "@/app/store/common"; -import { ContentsDiv, downloadExcelFormat, MainDiv, SearchBaseForm, SearchInput, SelectBox, Title, UiModal, UiTable, type ReturnType } from "@common/business_components"; +import { ContentsDiv, downloadExcelFormat, MainDiv, SearchBaseForm, SearchInput, SelectBox, UiModal, UiTable, type ReturnType } from "@common/business_components"; import ListDiv from "@common/business_components/ui/list_div"; import { useCallback, useContext, useEffect, useRef, useState } from "react"; import UnderWaterInputModal from "./modal/page"; @@ -266,8 +266,7 @@ export default function UnderWaterInput() { return ( <MainDiv> - <Title title="지하수유입량 추정" /> - <ContentsDiv> + <ContentsDiv> <SearchBaseForm leftChildren={<> <SelectBox className="col-span-3" label={labelArray[3] as string} selectArray={selectUpdownData} onSelectValue={(val) => setFcltCpct(val.toString())} value={fcltCpct} selectClass={undefined} /> diff --git a/apps/wr/app/(with-layout)/matMng/coMat/coMatRvw/page.tsx b/apps/wr/app/(with-layout)/matMng/coMat/coMatRvw/page.tsx index 248f8f5e0..3685d932a 100644 --- a/apps/wr/app/(with-layout)/matMng/coMat/coMatRvw/page.tsx +++ b/apps/wr/app/(with-layout)/matMng/coMat/coMatRvw/page.tsx @@ -27,7 +27,6 @@ import { SearchFormRight, SearchInput, SelectBox, - Title, UiTable, type SelectDataType, } from "@common/business_components/ui"; @@ -183,7 +182,6 @@ export default function CoMatRvw() { <ContentsDiv> <div className="grid grid-cols-4 gap-4"> <div className="col-span-4"> - <Title title={"수요매칭검토"} /> <SearchDiv> <SearchFormLeft> <div className="col-span-10 flex flex-row"> @@ -744,3 +742,4 @@ export default function CoMatRvw() { </> ); } + diff --git a/apps/wr/app/(with-layout)/matMng/coMat/ruseCaseMng/page.tsx b/apps/wr/app/(with-layout)/matMng/coMat/ruseCaseMng/page.tsx index a64c57364..2129e3c3e 100644 --- a/apps/wr/app/(with-layout)/matMng/coMat/ruseCaseMng/page.tsx +++ b/apps/wr/app/(with-layout)/matMng/coMat/ruseCaseMng/page.tsx @@ -13,7 +13,6 @@ import { SearchFormRight, SearchInput, SelectBox, - Title, UiModal, UiTable, type SelectDataType, @@ -190,7 +189,6 @@ export default function RuseCaseMng() { <ContentsDiv> <div className="grid grid-cols-4 gap-4"> <div className="col-span-4"> - <Title title={"물재이용사례 관리"} /> <SearchDiv> <SearchFormLeft> <div className="col-span-8 flex flex-row items-center"> @@ -343,3 +341,4 @@ export default function RuseCaseMng() { </> ); } + diff --git a/apps/wr/app/(with-layout)/matMng/coMat/ruseRvwHstry/page.tsx b/apps/wr/app/(with-layout)/matMng/coMat/ruseRvwHstry/page.tsx index d1fa8f069..bc1c218ba 100644 --- a/apps/wr/app/(with-layout)/matMng/coMat/ruseRvwHstry/page.tsx +++ b/apps/wr/app/(with-layout)/matMng/coMat/ruseRvwHstry/page.tsx @@ -18,7 +18,6 @@ import { SearchFormRight, SearchInput, SelectBox, - Title, UiTable, type SelectDataType, } from "@common/business_components/ui"; @@ -231,7 +230,6 @@ export default function RuseRvwHstry() { <ContentsDiv> <div className="grid grid-cols-4 gap-4"> <div className="col-span-4"> - <Title title={"재이용검토이력"} /> <SearchDiv> <SearchFormLeft> <div className="col-span-10 flex flex-row"> @@ -342,3 +340,4 @@ export default function RuseRvwHstry() { </ContentsDiv> ); } + diff --git a/apps/wr/app/(with-layout)/matMng/coMng/coSttn/page.tsx b/apps/wr/app/(with-layout)/matMng/coMng/coSttn/page.tsx index c2a7d875f..fb1ed639e 100644 --- a/apps/wr/app/(with-layout)/matMng/coMng/coSttn/page.tsx +++ b/apps/wr/app/(with-layout)/matMng/coMng/coSttn/page.tsx @@ -19,7 +19,6 @@ import { SearchFormRight, SearchInput, SelectBox, - Title, UiModal, UiTable, type SelectDataType, @@ -183,7 +182,6 @@ export default function CoSttn() { <ContentsDiv> <div className="grid grid-cols-4 gap-4 "> <div className="col-span-4"> - <Title title={"수요처 관리"} /> <SearchDiv> <SearchFormLeft> <div className="col-span-10 flex flex-row"> @@ -359,3 +357,4 @@ export default function CoSttn() { </> ); } + diff --git a/apps/wr/app/(with-layout)/matMng/coMng/drgtSttn/page.tsx b/apps/wr/app/(with-layout)/matMng/coMng/drgtSttn/page.tsx index b34a1eeba..10eecb09f 100644 --- a/apps/wr/app/(with-layout)/matMng/coMng/drgtSttn/page.tsx +++ b/apps/wr/app/(with-layout)/matMng/coMng/drgtSttn/page.tsx @@ -6,7 +6,7 @@ import { drgtHeadListExport } from "@/app/store/matDmd/drgtSttn/headList"; import { getCity } from "@/components/lib/func/commom"; import DrgtDetailModal from "@/components/ui/modal/coMat/drgtDetailModal"; import type { objSearchType } from "@/components/ui/modal/fcltReg/bdstRegModal/bdstRegModal"; -import { ContentsDiv, DateMonthPicker, downloadExcel, SearchDiv, SearchFormLeft, SearchFormRight, SelectBox, Title, UiModal, UiTable, type SelectDataType } from "@common/business_components/ui"; +import { ContentsDiv, DateMonthPicker, downloadExcel, SearchDiv, SearchFormLeft, SearchFormRight, SelectBox, UiModal, UiTable, type SelectDataType } from "@common/business_components/ui"; import ListDiv from "@common/business_components/ui/list_div"; import { Button, Label, ScrollArea } from "@common/components/ui"; import { useEffect, useState, useRef } from "react"; @@ -149,7 +149,6 @@ export default function DrgtSttn() { <ContentsDiv> <div className="grid grid-cols-4 gap-4 "> <div className="col-span-4"> - <Title title={"우리동네가뭄"} /> <SearchDiv> <SearchFormLeft> <div className="col-span-10 flex flex-row"> @@ -297,4 +296,4 @@ export default function DrgtSttn() { </ContentsDiv> </> ) -} \ No newline at end of file +} diff --git a/apps/wr/app/(with-layout)/matMng/coMng/ldrmntCoSttn/page.tsx b/apps/wr/app/(with-layout)/matMng/coMng/ldrmntCoSttn/page.tsx index 8c4976e09..1b1873842 100644 --- a/apps/wr/app/(with-layout)/matMng/coMng/ldrmntCoSttn/page.tsx +++ b/apps/wr/app/(with-layout)/matMng/coMng/ldrmntCoSttn/page.tsx @@ -21,7 +21,6 @@ import { SearchFormRight, SearchInput, SelectBox, - Title, UiModal, UiTable, type SelectDataType @@ -178,7 +177,6 @@ export default function LdrmntCoSttn() { <ContentsDiv> <div className="grid grid-cols-4 gap-4 "> <div className="col-span-4"> - <Title title={"잠재수요처 관리"} /> <SearchDiv> <SearchFormLeft> <div className="col-span-10 flex flex-row"> @@ -296,4 +294,4 @@ export default function LdrmntCoSttn() { </ContentsDiv> </> ) -} \ No newline at end of file +} diff --git a/apps/wr/app/(with-layout)/ruseFcltMng/fcltReg/htdflReg/page.tsx b/apps/wr/app/(with-layout)/ruseFcltMng/fcltReg/htdflReg/page.tsx index 53c3e4403..a992a54d8 100644 --- a/apps/wr/app/(with-layout)/ruseFcltMng/fcltReg/htdflReg/page.tsx +++ b/apps/wr/app/(with-layout)/ruseFcltMng/fcltReg/htdflReg/page.tsx @@ -11,7 +11,6 @@ import { SearchDiv, SearchFormLeft, SearchInput, - Title, UiModal, UiTable, } from "@common/business_components"; @@ -103,7 +102,6 @@ export default function Home() { <ContentsDiv> <div className="grid grid-cols-2 gap-4 "> <div className="col-span-2"> - <Title title={"온배수시설 등록"} /> <SearchDiv> <SearchFormLeft> <SearchInput @@ -194,3 +192,4 @@ export default function Home() { </> ); } + diff --git a/apps/wr/app/(with-layout)/ruseFcltMng/fcltReg/pbnstReg/page.tsx b/apps/wr/app/(with-layout)/ruseFcltMng/fcltReg/pbnstReg/page.tsx index f6d83e29c..033c6b73b 100644 --- a/apps/wr/app/(with-layout)/ruseFcltMng/fcltReg/pbnstReg/page.tsx +++ b/apps/wr/app/(with-layout)/ruseFcltMng/fcltReg/pbnstReg/page.tsx @@ -21,7 +21,6 @@ import { SearchDiv, SearchFormLeft, SearchInput, - Title, UiModal, UiTable, } from "@common/business_components"; @@ -290,7 +289,6 @@ export default function PublicReuseFaciltyInsert() { <ContentsDiv> <div className="grid grid-cols-4 gap-4"> <div className="col-span-4"> - <Title title={"하수재이용 시설 등록"} /> <SearchDiv> <SearchFormLeft> <SearchInput @@ -461,3 +459,4 @@ export default function PublicReuseFaciltyInsert() { </> ); } + diff --git a/apps/wr/app/(with-layout)/ruseFcltMng/fcltReg/rainReg/page.tsx b/apps/wr/app/(with-layout)/ruseFcltMng/fcltReg/rainReg/page.tsx index 0b74c9a0b..a293ca6fd 100644 --- a/apps/wr/app/(with-layout)/ruseFcltMng/fcltReg/rainReg/page.tsx +++ b/apps/wr/app/(with-layout)/ruseFcltMng/fcltReg/rainReg/page.tsx @@ -13,7 +13,6 @@ import { SearchDiv, SearchFormLeft, SearchInput, - Title, UiModal, UiTable, } from "@common/business_components"; @@ -115,7 +114,6 @@ export default function Home() { <ContentsDiv> <div className="grid grid-cols-4 gap-4"> <div className="col-span-4"> - <Title title={"빗물이용시설 등록"} /> <SearchDiv> <SearchFormLeft> <SearchInput @@ -207,3 +205,4 @@ export default function Home() { </> ); } + diff --git a/apps/wr/app/(with-layout)/ruseFcltMng/fcltReg/rswtReg/page.tsx b/apps/wr/app/(with-layout)/ruseFcltMng/fcltReg/rswtReg/page.tsx index 4dcf82d70..731ced270 100644 --- a/apps/wr/app/(with-layout)/ruseFcltMng/fcltReg/rswtReg/page.tsx +++ b/apps/wr/app/(with-layout)/ruseFcltMng/fcltReg/rswtReg/page.tsx @@ -13,7 +13,6 @@ import { SearchDiv, SearchFormLeft, SearchInput, - Title, UiModal, UiTable, } from "@common/business_components"; @@ -128,7 +127,6 @@ export default function Home() { <ContentsDiv> <div className="grid grid-cols-4 gap-4"> <div className="col-span-4"> - <Title title={"중수도시설 등록"} /> <SearchDiv> <SearchFormLeft> <SearchInput @@ -214,3 +212,4 @@ export default function Home() { </> ); } + diff --git a/apps/wr/app/(with-layout)/ruseFcltMng/fcltSttn/htdflSttn/page.tsx b/apps/wr/app/(with-layout)/ruseFcltMng/fcltSttn/htdflSttn/page.tsx index ea4b49924..49c5a2a76 100644 --- a/apps/wr/app/(with-layout)/ruseFcltMng/fcltSttn/htdflSttn/page.tsx +++ b/apps/wr/app/(with-layout)/ruseFcltMng/fcltSttn/htdflSttn/page.tsx @@ -23,7 +23,6 @@ import { SearchFormRight, SearchInput, SelectBox, - Title, UiModal, UiTable, type SelectDataType @@ -148,7 +147,6 @@ export default function HtdflSttn() { <ContentsDiv> <div className="grid grid-cols-4 gap-4 "> <div className="col-span-4"> - <Title title={"온배수 시설 현황"} /> <SearchDiv> <SearchFormLeft> @@ -263,3 +261,4 @@ export default function HtdflSttn() { </> ); } + diff --git a/apps/wr/app/(with-layout)/ruseFcltMng/fcltSttn/pbnstSttn/page.tsx b/apps/wr/app/(with-layout)/ruseFcltMng/fcltSttn/pbnstSttn/page.tsx index 2a2340253..8871146ca 100644 --- a/apps/wr/app/(with-layout)/ruseFcltMng/fcltSttn/pbnstSttn/page.tsx +++ b/apps/wr/app/(with-layout)/ruseFcltMng/fcltSttn/pbnstSttn/page.tsx @@ -21,7 +21,6 @@ import { SearchBaseForm, SearchInput, SelectBox, - Title, UiModal, UiTable, type ReturnType, @@ -131,7 +130,6 @@ export default function PbnstSttn() { <ContentsDiv> <div className="grid grid-cols-2 gap-4 "> <div className="col-span-2"> - <Title title={"하수재이용 시설 현황"} /> <SearchBaseForm selectSidoData={code.cityCd} selectSigunData={code.sggCd} @@ -263,3 +261,4 @@ export default function PbnstSttn() { </> ); } + diff --git a/apps/wr/app/(with-layout)/ruseFcltMng/fcltSttn/rainSttn/page.tsx b/apps/wr/app/(with-layout)/ruseFcltMng/fcltSttn/rainSttn/page.tsx index 46f1fa0c4..7895d5ea9 100644 --- a/apps/wr/app/(with-layout)/ruseFcltMng/fcltSttn/rainSttn/page.tsx +++ b/apps/wr/app/(with-layout)/ruseFcltMng/fcltSttn/rainSttn/page.tsx @@ -23,7 +23,6 @@ import { SearchFormRight, SearchInput, SelectBox, - Title, UiModal, UiTable, type SelectDataType, @@ -195,7 +194,6 @@ export default function RainSttn() { <ContentsDiv> <div className="grid grid-cols-4 gap-4 "> <div className="col-span-4"> - <Title title={"빗물재이용 시설 현황"} /> <SearchDiv> <SearchFormLeft> <div className="col-span-10 flex flex-row"> @@ -315,3 +313,4 @@ export default function RainSttn() { </> ); } + diff --git a/apps/wr/app/(with-layout)/ruseFcltMng/fcltSttn/rswtSttn/page.tsx b/apps/wr/app/(with-layout)/ruseFcltMng/fcltSttn/rswtSttn/page.tsx index 268ef8a35..99b0219ef 100644 --- a/apps/wr/app/(with-layout)/ruseFcltMng/fcltSttn/rswtSttn/page.tsx +++ b/apps/wr/app/(with-layout)/ruseFcltMng/fcltSttn/rswtSttn/page.tsx @@ -21,7 +21,6 @@ import { SearchFormRight, SearchInput, SelectBox, - Title, UiModal, UiTable, type SelectDataType @@ -150,7 +149,6 @@ export default function RswtSttn() { <ContentsDiv> <div className="grid grid-cols-4 gap-4 "> <div className="col-span-4"> - <Title title={"중수도시설 현황"} /> <SearchDiv> <SearchFormLeft> <div className="col-span-10 flex flex-row"> @@ -267,3 +265,4 @@ export default function RswtSttn() { </> ); } + diff --git a/apps/wr/app/(with-layout)/ruseFcltMng/prfmncReg/chkgdnReg/page.tsx b/apps/wr/app/(with-layout)/ruseFcltMng/prfmncReg/chkgdnReg/page.tsx index 0fe594630..bc341cb54 100644 --- a/apps/wr/app/(with-layout)/ruseFcltMng/prfmncReg/chkgdnReg/page.tsx +++ b/apps/wr/app/(with-layout)/ruseFcltMng/prfmncReg/chkgdnReg/page.tsx @@ -26,7 +26,6 @@ import { SearchFormLeft, SearchFormRight, SelectBox, - Title, UiModal, } from "@common/business_components/ui"; import ListDiv from "@common/business_components/ui/list_div"; @@ -271,7 +270,6 @@ export default function Page() { <ContentsDiv> <div className="grid grid-cols-4 gap-4 "> <div className="col-span-4"> - <Title title={"지도점검 결과 등록"} /> <SearchDiv> <SearchFormLeft> <div className="col-span-2 flex flex-row space-x-2"> @@ -439,3 +437,4 @@ export default function Page() { </ContentsDiv> ); } + diff --git a/apps/wr/app/(with-layout)/ruseFcltMng/prfmncReg/pbnstPrfmncReg/page.tsx b/apps/wr/app/(with-layout)/ruseFcltMng/prfmncReg/pbnstPrfmncReg/page.tsx index 75a2e6860..87d89d6c5 100644 --- a/apps/wr/app/(with-layout)/ruseFcltMng/prfmncReg/pbnstPrfmncReg/page.tsx +++ b/apps/wr/app/(with-layout)/ruseFcltMng/prfmncReg/pbnstPrfmncReg/page.tsx @@ -24,7 +24,6 @@ import { SearchFormRight, SearchInput, SelectBox, - Title, UiModal, UiTable, } from "@common/business_components/ui"; @@ -229,7 +228,6 @@ export default function PrfmncPrfmncReg() { <ContentsDiv> <div className="grid grid-cols-4 gap-4"> <div className="col-span-4"> - <Title title={"하수재이용 실적 등록"} /> <SearchDiv> <SearchFormLeft> <div className="col-span-2 flex flex-row space-x-2"> @@ -386,3 +384,4 @@ export default function PrfmncPrfmncReg() { </> ); } + diff --git a/apps/wr/app/(with-layout)/ruseFcltMng/prfmncSttn/chkgdnSttn/page.tsx b/apps/wr/app/(with-layout)/ruseFcltMng/prfmncSttn/chkgdnSttn/page.tsx index fe1bd06de..9b7ad24b2 100644 --- a/apps/wr/app/(with-layout)/ruseFcltMng/prfmncSttn/chkgdnSttn/page.tsx +++ b/apps/wr/app/(with-layout)/ruseFcltMng/prfmncSttn/chkgdnSttn/page.tsx @@ -14,7 +14,6 @@ import { SearchFormRight, SearchInput, SelectBox, - Title, UiModal, } from "@common/business_components/ui"; import ListDiv from "@common/business_components/ui/list_div"; @@ -174,7 +173,6 @@ export default function Page() { <ContentsDiv> <div className="grid grid-cols-4 gap-4 "> <div className="col-span-4"> - <Title title={"지도점검 결과 현황"} /> <SearchDiv> <SearchFormLeft> <div className="col-span-2 flex flex-row space-x-2"> @@ -294,3 +292,4 @@ export default function Page() { </ContentsDiv> ); } + diff --git a/apps/wr/app/(with-layout)/ruseFcltMng/prfmncSttn/pbnstPrfmncSttn/page.tsx b/apps/wr/app/(with-layout)/ruseFcltMng/prfmncSttn/pbnstPrfmncSttn/page.tsx index ac77639a4..685858262 100644 --- a/apps/wr/app/(with-layout)/ruseFcltMng/prfmncSttn/pbnstPrfmncSttn/page.tsx +++ b/apps/wr/app/(with-layout)/ruseFcltMng/prfmncSttn/pbnstPrfmncSttn/page.tsx @@ -6,7 +6,7 @@ import { initValInUsage, initValOutUsage, subTotalObj, totalObj, type FcPrfType, import { excelPrfmncSttnParsing } from "@/app/store/prfmncSttn/pbnstPrfmncSttn/excel"; import { excelDownload, yearOptions } from "@/components/lib/func/commom"; import { InputTableBody } from "@/components/lib/func/TableData"; -import { CHART_FORM, ContentsDiv, MainChart, ScrollArea, SearchBaseForm, SearchInput, SelectBox, Title, UiTable, type ChartConfig, type ReturnType } from "@common/business_components"; +import { CHART_FORM, ContentsDiv, MainChart, ScrollArea, SearchBaseForm, SearchInput, SelectBox, UiTable, type ChartConfig, type ReturnType } from "@common/business_components"; import ListDiv from "@common/business_components/ui/list_div"; import { Label, Table, TableBody, TableHeader } from "@common/components/ui"; import { useCallback, useEffect, useRef, useState } from "react"; @@ -530,7 +530,6 @@ export default function PbnstPrfmncSttn() { <ContentsDiv> <div className="grid grid-cols-4 gap-4 "> <div className="col-span-4"> - <Title title={"하수재이용실적 현황"} /> <SearchBaseForm selectSidoData={code.cityCd} selectSigunData={code.sggCd} @@ -720,3 +719,4 @@ export default function PbnstPrfmncSttn() { </> ) } + diff --git a/apps/wr/app/(with-layout)/stats/rainStat/page.tsx b/apps/wr/app/(with-layout)/stats/rainStat/page.tsx index 17e2d4bae..2866fd0d6 100644 --- a/apps/wr/app/(with-layout)/stats/rainStat/page.tsx +++ b/apps/wr/app/(with-layout)/stats/rainStat/page.tsx @@ -10,7 +10,6 @@ import { ScrollArea, SearchDiv, SelectBox, - Title, UiTable } from "@common/business_components/ui"; import ListDiv from "@common/business_components/ui/list_div"; @@ -233,7 +232,6 @@ export default function RainStat() { <ContentsDiv> <div className="grid grid-cols-4 gap-4"> <div className="col-span-4"> - <Title title={"빗물이용시설 통계"} /> <SearchDiv> <div className="grid grid-cols-12 gap-5 m-4"> <div className="col-span-2"> @@ -285,4 +283,4 @@ export default function RainStat() { </ContentsDiv> </> ); -} \ No newline at end of file +} diff --git a/apps/wr/app/(with-layout)/stats/rswtStat/page.tsx b/apps/wr/app/(with-layout)/stats/rswtStat/page.tsx index de9bc86cf..8f995961b 100644 --- a/apps/wr/app/(with-layout)/stats/rswtStat/page.tsx +++ b/apps/wr/app/(with-layout)/stats/rswtStat/page.tsx @@ -8,7 +8,6 @@ import { ScrollArea, SearchDiv, SelectBox, - Title, UiTable } from "@common/business_components/ui"; import ListDiv from "@common/business_components/ui/list_div"; @@ -233,7 +232,6 @@ export default function RswtStat() { <ContentsDiv> <div className="grid grid-cols-4 gap-4"> <div className="col-span-4"> - <Title title="중수도시설 통계" /> <SearchDiv> <div className="grid grid-cols-12 gap-5 m-4"> <div className="col-span-2"> @@ -297,3 +295,4 @@ export default function RswtStat() { </> ); } + diff --git a/apps/wr/app/base.tsx b/apps/wr/app/base.tsx index 10a456dde..ff53e15be 100644 --- a/apps/wr/app/base.tsx +++ b/apps/wr/app/base.tsx @@ -4,16 +4,20 @@ import { useWrStore } from "./store"; import { MainDiv } from "@common/business_components/ui"; import type { MenuItem } from "./store/common/type/menu"; import { usePathname, useRouter } from "next/navigation"; +import { useMenuStore } from "@/src/shared/lib"; +import { PageLayout } from "@/src/shared/ui/page-layout"; export default function Base({ children, }: Readonly<{ children: React.ReactNode; }>) { const { getMenuAuthrts } = useWrStore((state) => state); + const setCurrentMenuInfo = useMenuStore((state) => state.setCurrentMenuInfo); const router = useRouter(); const pathname = usePathname(); const changeMenu = (path: MenuItem) => { + setCurrentMenuInfo(path); getMenuAuthrts(path.menuCd); if (path.menuKornNm === "하수재이용통계") { // console.log("외부 페이지로 이동합니다. " ,path); @@ -27,7 +31,9 @@ export default function Base({ }; return ( <BaseLayout currentPath={pathname ?? ""} handleMenuClick={changeMenu}> - <MainDiv>{children}</MainDiv> + <PageLayout> + <MainDiv>{children}</MainDiv> + </PageLayout> </BaseLayout> ); }