From d86d0b0fcad7b9d0371fc30ee706e5d0ee66ad5b Mon Sep 17 00:00:00 2001 From: yschoi Date: Mon, 11 Aug 2025 09:21:40 +0900 Subject: [PATCH 01/24] =?UTF-8?q?=ED=94=BC=EC=B2=98=20=EC=A2=8C=ED=91=9C?= =?UTF-8?q?=20=EC=A0=95=EB=B3=B4=20=EC=97=86=EC=9D=84=EB=95=8C=20=EC=95=8C?= =?UTF-8?q?=EB=9E=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/fo/app/pages/(map-layout)/map/page.tsx | 2 -- .../business_components/src/ui/map/searchBar/procSearchBar.tsx | 1 + 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/apps/fo/app/pages/(map-layout)/map/page.tsx b/apps/fo/app/pages/(map-layout)/map/page.tsx index 7c1d78164..d27dbe834 100644 --- a/apps/fo/app/pages/(map-layout)/map/page.tsx +++ b/apps/fo/app/pages/(map-layout)/map/page.tsx @@ -80,8 +80,6 @@ const Map = () => { const mayGet = (k: string) => (feature.get ? feature.get(k) : undefined); const safe = (v: any) => (v === undefined || v === null ? "-" : String(v)); - console.log(feature); - // 레이어 유형별 대표 필드 추출(없으면 "-") if (layerType === "tb_il_swage_prcs_fclt") { // 하수처리시설 diff --git a/packages/common/business_components/src/ui/map/searchBar/procSearchBar.tsx b/packages/common/business_components/src/ui/map/searchBar/procSearchBar.tsx index 33388ce62..21239bd7b 100644 --- a/packages/common/business_components/src/ui/map/searchBar/procSearchBar.tsx +++ b/packages/common/business_components/src/ui/map/searchBar/procSearchBar.tsx @@ -249,6 +249,7 @@ export const ProcSearchBar = ({ gisMaps, facilityTypes }: SearchBarProps) => { nearest: true, }); } else { + alert("위치정보를 찾을 수 없습니다.") console.warn("geometry를 찾을 수 없습니다:", data); } } else { From bde50388d1fa90939167543fb5beae71cfa4438b Mon Sep 17 00:00:00 2001 From: yschoi Date: Mon, 11 Aug 2025 09:34:05 +0900 Subject: [PATCH 02/24] =?UTF-8?q?=EC=8B=9C=EC=84=A4=EC=9A=A9=EB=9F=89=20?= =?UTF-8?q?=EC=B2=9C=EB=8B=A8=EC=9C=84=20=EC=BD=A4=EB=A7=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/fo/app/pages/(map-layout)/map/page.tsx | 23 +++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/apps/fo/app/pages/(map-layout)/map/page.tsx b/apps/fo/app/pages/(map-layout)/map/page.tsx index d27dbe834..f41439b92 100644 --- a/apps/fo/app/pages/(map-layout)/map/page.tsx +++ b/apps/fo/app/pages/(map-layout)/map/page.tsx @@ -73,6 +73,17 @@ const Map = () => { fetchData(); }, []); + function formatWithCommas(value: any) { + if (value === null || value === undefined) return value; + const num = Number(value); + return isNaN(num) ? value : num.toLocaleString(); + } + + function formatDateString(dateStr: string) { + if (typeof dateStr !== "string" || dateStr.length !== 8) return dateStr; + return `${dateStr.slice(0, 4)}-${dateStr.slice(4, 6)}-${dateStr.slice(6)}`; + } + // ===== 오버레이 콘텐츠 빌더 ===== const buildOverlayContent = (layerType: string, feature: FeatureData) => { const props: Record = {}; @@ -84,9 +95,9 @@ const Map = () => { if (layerType === "tb_il_swage_prcs_fclt") { // 하수처리시설 props["하수처리시설명"] = mayGet("swtrmt_fclt_nm"); - props["시설용량(m³/d)"] = mayGet("fclt_cpct"); + props["시설용량(m³/d)"] = formatWithCommas(mayGet("fclt_cpct")); props["주소"] = mayGet("rdnm_addr"); - props["가동개시일"] = mayGet("oprtng_strt_ymd"); + props["가동개시일"] = formatDateString(mayGet("oprtng_strt_ymd")); props["공법"] = mayGet("rprs_msrc_cn"); } else if (layerType === "tb_ms_swage_prcs_zone") { // 처리구역(존) @@ -116,14 +127,14 @@ const Map = () => {
${title}
${Object.entries(props) - .map( - ([k, v]) => ` + .map( + ([k, v]) => ` ` - ) - .join("")} + ) + .join("")}
${k} ${safe(v)}
`; return el; From ce9c536858ceb6cabab5f425e0d5039e4de4cbfc Mon Sep 17 00:00:00 2001 From: yschoi Date: Mon, 11 Aug 2025 09:45:58 +0900 Subject: [PATCH 03/24] =?UTF-8?q?=EA=B0=80=EB=8F=99=EA=B0=9C=EC=8B=9C?= =?UTF-8?q?=EC=9D=BC=20=EA=B3=B5=EB=B0=B1=EC=A0=9C=EA=B1=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/fo/app/pages/(map-layout)/map/page.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/fo/app/pages/(map-layout)/map/page.tsx b/apps/fo/app/pages/(map-layout)/map/page.tsx index f41439b92..ad3f70295 100644 --- a/apps/fo/app/pages/(map-layout)/map/page.tsx +++ b/apps/fo/app/pages/(map-layout)/map/page.tsx @@ -80,6 +80,7 @@ const Map = () => { } function formatDateString(dateStr: string) { + dateStr = dateStr.trim(); if (typeof dateStr !== "string" || dateStr.length !== 8) return dateStr; return `${dateStr.slice(0, 4)}-${dateStr.slice(4, 6)}-${dateStr.slice(6)}`; } From 3d480a40a7070dc948f92dec87d01d4331b5196a Mon Sep 17 00:00:00 2001 From: yschoi Date: Mon, 11 Aug 2025 09:47:20 +0900 Subject: [PATCH 04/24] =?UTF-8?q?=EB=A1=9C=EA=B7=B8=20=EC=82=AD=EC=A0=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/fo/app/store/rdi/index.tsx | 1 - apps/fo/src/entities/auth/api/login-service.ts | 3 --- 2 files changed, 4 deletions(-) diff --git a/apps/fo/app/store/rdi/index.tsx b/apps/fo/app/store/rdi/index.tsx index b1eccc2b7..fd9ca52b6 100644 --- a/apps/fo/app/store/rdi/index.tsx +++ b/apps/fo/app/store/rdi/index.tsx @@ -219,7 +219,6 @@ type SetStateFunction = (state: RdiType | ((state: RdiType) => RdiType)) => void export type RdiStore = RdiType & RdiActions; export const rdiReducer:(set:SetStateFunction)=>RdiActions=(set: SetStateFunction) => { - console.log("tableActionsExport"); return { searchRdiList: async (pageNo: number, pageSize: number, searchYear: string, partCd?: string, nameCd?: string, fcltCpct?: string, operationValue?: string, fcltyNm?: string) => { set((state: RdiType) => ({ diff --git a/apps/fo/src/entities/auth/api/login-service.ts b/apps/fo/src/entities/auth/api/login-service.ts index 3f2d958c6..760858b99 100644 --- a/apps/fo/src/entities/auth/api/login-service.ts +++ b/apps/fo/src/entities/auth/api/login-service.ts @@ -28,9 +28,6 @@ export class LoginApiService implements LoginService { const accessToken = response.headers.get(ACCESS_TOKEN); const tokenId = response.headers.get(AUTH_USER_ID); - console.log('accessToken ', accessToken) - console.log('tokenId ', tokenId) - if (!accessToken || !tokenId) { throw new Error("Missing required authentication tokens"); } From 1e0ef0c71325fa2d3fa94a967ccf00bc9f2e934c Mon Sep 17 00:00:00 2001 From: yschoi Date: Mon, 11 Aug 2025 10:23:47 +0900 Subject: [PATCH 05/24] =?UTF-8?q?=EC=98=A8=EB=B0=B0=EC=88=98=20=EC=8B=9C?= =?UTF-8?q?=EC=84=A4=20=EC=A7=80=EB=8F=84=20=ED=91=9C=EC=B6=9C=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../(popUp-layout)/mapFeaturePopup/page.tsx | 93 +------------------ apps/wr/middleware.ts | 1 - 2 files changed, 1 insertion(+), 93 deletions(-) diff --git a/apps/wr/app/(popUp-layout)/mapFeaturePopup/page.tsx b/apps/wr/app/(popUp-layout)/mapFeaturePopup/page.tsx index 94c1411f3..debea36c9 100644 --- a/apps/wr/app/(popUp-layout)/mapFeaturePopup/page.tsx +++ b/apps/wr/app/(popUp-layout)/mapFeaturePopup/page.tsx @@ -7,95 +7,6 @@ import { Title, UiTable } from "@common/business_components/ui"; import { useSearchParams } from "next/navigation"; import { useEffect, useState } from "react"; - -export const htdflData ={ - "bdstInfoSn": 54, - "ctpvCd": 11, - "sggCd": 11110, - "daddr": "청라동 100-80", - "bdstNm": "한국중부발전(주)", - "frstArchPrmsnDt": "2013-01-01", - "archArea": "-1.000000000", - "ctpvNm": null, - "sggNm": null, - "lat": 37.57096, - "lot": 126.98143, - "regDt": "2025-04-16", - "rgtr": null, - "mdfcnDt": "2025-04-16", - "mdfr": null, - "reuseBuilding": [ - { - "bdstRuseFcltSn": 4881, - "bdstInfoSn": 54, - "instlCmptnDt": "2025-06-20", - "instlCst": 300, - "operMngCd": null, - "anlOperCst": 400, - "instlCstSprtYn": null, - "instlCstSprtAmt": 0, - "grntchBdstCertYn": null, - "grntchBdstCertYr": null, - "grntchBdstCertNo": "", - "grntchBdstCertGrd": "", - "crgRdctYn": null, - "crgRdctBss": null, - "crgRdctAmt": 0, - "ruseFcltFlg": "HTB", - "bdstUsgCd": 2, - "lawTrgtYn": "N", - "regDt": "2025-04-16", - "rgtr": null, - "mdfcnDt": "2025-04-16", - "mdfr": null, - "htdflObj": { - "bdstRuseFcltSn": 4881, - "etgtType": "", - "fclCpct": 400, - "plwtYn": "Y", - "orgwtWtritSpt": "공장내", - "orgwtOcrnProcs": "1", - "wtritEntrcTp": 3, - "amtgnr": 1, - "prcsProcsYn": "Y", - "prcsFcltCpct": 14, - "regDt": "2025-04-16", - "rgtr": null, - "mdfcnDt": "2025-04-16", - "mdfr": null, - "fmYn": "Y", - "utztnCpct": 1, - "utztnUsg": "1", - "grssClfg": 0, - "combResdch": 0, - "trbt": 4, - "bod": 4, - "smll": "불쾌하지않을것", - "crmty": 4, - "tn": 10, - "tph": 10, - "ph": '1~3', - "clIonQnt": 1, - "cdtnv": 0, - "emsnExitTp": 5 - } - } - ], - "chgBuilding": [ - { - "bdstInfoSn": 54, - "archChgPrmsnDt": null, - "archChgArea": null, - "bdstChgNm": null, - "regDt": "2025-04-16", - "rgtr": null, - "mdfcnDt": "2025-04-16", - "mdfr": null - } - ] -} - - export default function MapFeaturePopup() { const [isFeatureCd, setIsFeatureCd] = useState(null); const { @@ -150,9 +61,7 @@ export default function MapFeaturePopup() { }); } else if (layerNm === "온배수시설") { htdfMapDetile(isFeatureCd).then((res) => { -//가짜데이터로 하였음!!!!!!!!! 기능 수정시 res를 넣어야함 - console.log(res) - setIsDetail(htdflData); + setIsDetail(res); }); } else if (layerNm === "잠재수요처") { ldrmntMapDetile(isFeatureCd).then((res) => { diff --git a/apps/wr/middleware.ts b/apps/wr/middleware.ts index e47a2a8f5..7758ec5ec 100644 --- a/apps/wr/middleware.ts +++ b/apps/wr/middleware.ts @@ -28,7 +28,6 @@ export function middleware(req: NextRequest) { } if (pathname === "/") { - console.log(" maim 화면이동 "); return NextResponse.redirect(new URL("/map/mainMap", req.url)); } From 2fd1159615b68e8c82875375ab3f7532c26fa354 Mon Sep 17 00:00:00 2001 From: bicochan Date: Mon, 11 Aug 2025 10:29:13 +0900 Subject: [PATCH 06/24] =?UTF-8?q?Revert=20"[common/features]=20feat:=20?= =?UTF-8?q?=ED=99=98=EA=B2=BD=20=EB=B3=80=EC=88=98=20URL=20=EB=B0=A9?= =?UTF-8?q?=EC=8B=9D=20=EB=8F=84=EC=9E=85"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit e4d52611d797e02e29fddede9d04f452b018f067. --- apps/common/features/.gitignore | 3 +- apps/common/features/cli.js | 44 ---- apps/common/features/package.json | 8 +- apps/common/features/src/app/index.tsx | 4 - apps/common/features/src/shared/config/api.ts | 8 +- apps/common/features/src/shared/lib/env.ts | 14 -- apps/common/features/src/shared/lib/index.ts | 1 - pnpm-lock.yaml | 220 ++++++++++++------ 8 files changed, 157 insertions(+), 145 deletions(-) delete mode 100644 apps/common/features/cli.js delete mode 100644 apps/common/features/src/shared/lib/env.ts diff --git a/apps/common/features/.gitignore b/apps/common/features/.gitignore index b660a552e..e8d8437ee 100644 --- a/apps/common/features/.gitignore +++ b/apps/common/features/.gitignore @@ -37,5 +37,4 @@ yarn-error.log* *.tsbuildinfo next-env.d.ts -.env* -__ENV__.js \ No newline at end of file +.env* \ No newline at end of file diff --git a/apps/common/features/cli.js b/apps/common/features/cli.js deleted file mode 100644 index 9f165f497..000000000 --- a/apps/common/features/cli.js +++ /dev/null @@ -1,44 +0,0 @@ -import { findUp } from "find-up"; -import { config } from "dotenv"; -import fs from "fs"; -import yargs from "yargs"; -import { hideBin } from "yargs/helpers"; - -async function parseDotenv(nodeEnv) { - const envFilePath = await findUp(`.env.${nodeEnv}`); - - const parsedEnv = config({ path: envFilePath }).parsed || {}; - - return parsedEnv; -} - -function writeEnv(parsedEnv) { - const scriptFilePath = `${fs.realpathSync(process.cwd())}/public/__ENV__.js`; - - fs.writeFileSync( - scriptFilePath, - `window.__ENV__ = ${JSON.stringify(parsedEnv)}`, - ); -} - -yargs(hideBin(process.argv)) - .command( - "next-env", - "Create Next.js runtime environment js", - function builder(y) { - return y.option("env", { - alias: "e", - type: "string", - description: "Environment name(ex: development, production)", - }); - }, - async function handler(args) { - const nodeEnv = args.e || args.env || "development"; - - const parsedEnv = await parseDotenv(nodeEnv); // dotenv 파싱 - writeEnv(parsedEnv); // 환경 변수 스크립트 파일 생성 - - return parsedEnv; - }, - ) - .parse(); diff --git a/apps/common/features/package.json b/apps/common/features/package.json index bfa43377e..304e88bae 100644 --- a/apps/common/features/package.json +++ b/apps/common/features/package.json @@ -1,12 +1,11 @@ { "name": "features", "version": "0.1.0", - "type": "module", "private": true, "scripts": { - "dev": "node cli.js next-env -e ${NODE_ENV:-development} && next dev -p 13000", + "dev": "next dev -p 13000", "build": "next build", - "start": "node cli.js next-env -e ${NODE_ENV:-production} && next start -p 13000", + "start": "next start -p 13000", "lint": "next lint" }, "dependencies": { @@ -28,8 +27,6 @@ "axios": "^1.8.1", "chart.js": "^4.4.8", "dayjs": "^1.11.13", - "dotenv": "^17.2.1", - "find-up": "^7.0.0", "js-cookie": "^3.0.5", "next": "15.3.0", "next-themes": "^0.4.6", @@ -48,7 +45,6 @@ "@types/js-cookie": "^3.0.6", "@types/node": "^22.13.1", "@types/webpack": "^5.28.5", - "@types/yargs": "^17.0.33", "eslint": "^9", "eslint-config-next": "15.1.7", "postcss": "^8", diff --git a/apps/common/features/src/app/index.tsx b/apps/common/features/src/app/index.tsx index eb6e75d00..692b55ef0 100644 --- a/apps/common/features/src/app/index.tsx +++ b/apps/common/features/src/app/index.tsx @@ -4,16 +4,12 @@ import "@fontsource-variable/noto-sans-kr"; import { AppProvider } from "./providers"; import { cookies } from "next/headers"; -import Script from "next/script"; const App = async ({ children }: Readonly<{ children: React.ReactNode }>) => { const theme = (await cookies()).get("site-theme-key"); return ( - -