From 1e650a72ba7ff726360b7c356378912bd49611b2 Mon Sep 17 00:00:00 2001 From: jyha00 Date: Mon, 4 Aug 2025 19:53:36 +0900 Subject: [PATCH] =?UTF-8?q?=EC=A7=80=EB=8F=84=EC=A0=90=EA=B2=80=20?= =?UTF-8?q?=ED=8E=98=EC=9D=B4=EC=A7=80=EB=84=A4=EC=9D=B4=EC=85=98=20?= =?UTF-8?q?=EC=88=98=EC=A0=95,=20=EC=97=91=EC=85=80=20=EB=93=B1=EB=A1=9D?= =?UTF-8?q?=20=EC=88=98=EC=A0=95,=20=EC=A0=90=EA=B2=80=EC=9D=BC=20?= =?UTF-8?q?=EB=82=A0=EC=A7=9C=20=ED=8F=AC=EB=A7=A4=ED=84=B0=20=EC=A0=81?= =?UTF-8?q?=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ruseFcltMng/prfmncReg/chkgdnReg/page.tsx | 24 +++++++++++++-- .../prfmncSttn/chkgdnSttn/page.tsx | 24 +++++++++++++-- .../prfmncReg/chkgdnReg/rainChkgdn/excel.tsx | 16 ++++------ apps/wr/components/lib/func/TableData.tsx | 30 +++++++++++-------- apps/wr/components/lib/func/commom.tsx | 11 +++++++ 5 files changed, 77 insertions(+), 28 deletions(-) diff --git a/apps/wr/app/ruseFcltMng/prfmncReg/chkgdnReg/page.tsx b/apps/wr/app/ruseFcltMng/prfmncReg/chkgdnReg/page.tsx index bf18d4d98..97d80a7a8 100644 --- a/apps/wr/app/ruseFcltMng/prfmncReg/chkgdnReg/page.tsx +++ b/apps/wr/app/ruseFcltMng/prfmncReg/chkgdnReg/page.tsx @@ -118,13 +118,33 @@ export default function Page() { const rainPageChange = (pageNo: number) => { if (pageNo > 0) { setRainPageNation(pageNo); - rainChkInit(pageNo, rainPageSize, searchYear, commonCd); + if (fcltNm) { + rainChkNmSearch( + pageNo, + rainPageSize, + searchYear, + commonCd, + fcltNm + ); + } else { + rainChkInit(pageNo, rainPageSize, searchYear, commonCd); + } } }; const rswtPageChange = (pageNo: number) => { if (pageNo > 0) { setRswtPageNation(pageNo); - rswtChkgdnInit(pageNo, rswtPageSize, searchYear, commonCd); + if (fcltNm) { + rswtChkNmSearch( + pageNo, + rainPageSize, + searchYear, + commonCd, + fcltNm + ); + } else { + rswtChkgdnInit(pageNo, rswtPageSize, searchYear, commonCd); + } } }; diff --git a/apps/wr/app/ruseFcltMng/prfmncSttn/chkgdnSttn/page.tsx b/apps/wr/app/ruseFcltMng/prfmncSttn/chkgdnSttn/page.tsx index ba1821f20..6b4eead42 100644 --- a/apps/wr/app/ruseFcltMng/prfmncSttn/chkgdnSttn/page.tsx +++ b/apps/wr/app/ruseFcltMng/prfmncSttn/chkgdnSttn/page.tsx @@ -83,14 +83,34 @@ export default function Page() { const rainPageChange = (pageNo: number) => { if (pageNo > 0) { setRainPageNation(pageNo); - rainChkSttnInit(pageNo, rainPageSize, searchYear, commonCd); + if (fcltNm) { + rainChkSttnNmSearch( + pageNo, + rainPageSize, + searchYear, + commonCd, + fcltNm + ); + } else { + rainChkSttnInit(pageNo, rainPageSize, searchYear, commonCd); + } } }; const rswtPageChange = (pageNo: number) => { if (pageNo > 0) { setRswtPageNation(pageNo); - rswtChkSttnInit(pageNo, rswtPageSize, searchYear, commonCd); + if (fcltNm) { + rswtChkNmSttnSearch( + pageNo, + rainPageSize, + searchYear, + commonCd, + fcltNm + ); + } else { + rswtChkSttnInit(pageNo, rswtPageSize, searchYear, commonCd); + } } }; diff --git a/apps/wr/app/store/prfmncReg/chkgdnReg/rainChkgdn/excel.tsx b/apps/wr/app/store/prfmncReg/chkgdnReg/rainChkgdn/excel.tsx index a484f87c2..8e18317a8 100644 --- a/apps/wr/app/store/prfmncReg/chkgdnReg/rainChkgdn/excel.tsx +++ b/apps/wr/app/store/prfmncReg/chkgdnReg/rainChkgdn/excel.tsx @@ -132,20 +132,20 @@ export const excelToRainChkData = (excelData: any, year: string) => { bdstNm: item["시설명"] ?? "", bdstRuseFcltSn: Number(item["NO"]), chckYmd: checkYmd, - spwtPositn: item["유량측정방법"] ?? "", rgtr: TEST_UUID, - oilqMeasMthd: item["운영관리형태"] ?? "", + operMngCd: item["운영관리형태"] ?? "", anlOperCst: parseRawValue(item["연간운영비(원/년)"]), - operMngCd: item["유량측정방법"] ?? "", + oilqMeasMthd: item["유량측정방법"] ?? "", guideDetails: makeGuidDetail, rainyDetails: [ { + ph: item["PH"], utztnUsgCd: item["이용용도"], trbt: parseRawValue(item["탁도"]), grssClfg: parseRawValue(item["총대장균군수"]), etc: item["기타"] || "", // 필드 누락 방지 - vltnDt: vltnDt || "-", - vltnMttr: item["위반사항"] || "-", + vltnDt: vltnDt || "", + vltnMttr: item["위반사항"] || "", levyAmt: parseRawValue(item["과태료부과금액(천원)"]), rgtr: TEST_UUID, }, @@ -177,12 +177,6 @@ console.log("rainChkgdData", rainChkgdData); defaultMessage + `유량측정방법: 위탁 혹은 자체 만 허용) /입력값:${rain.oilqMeasMthd}` ); } - if (rain.spwtPositn.length > 1 && !chkSpwtPositnType.includes(rain.spwtPositn)) { - issues.push( - defaultMessage + `측정위치: 유량계, 수위계, 펌프적산전력계, 기타 중 하나만 허용) /입력값:${rain.spwtPositn}` - ); - } - rain.rainyDetails?.forEach((key) => { if (key.ph?.length > 1 && isInvalidNumber(key.ph)) { diff --git a/apps/wr/components/lib/func/TableData.tsx b/apps/wr/components/lib/func/TableData.tsx index 629281f02..f114df1e4 100644 --- a/apps/wr/components/lib/func/TableData.tsx +++ b/apps/wr/components/lib/func/TableData.tsx @@ -8,11 +8,12 @@ import { TableCell, TableRow, } from "@common/components/ui"; +import moment from "moment"; import { formatCommaNumber, - handleCommaNumberChange, + formatYyyymmdd, + handleCommaNumberChange } from "./commom"; -import moment from "moment"; export const rainChkTableData = (chkData: rainChkZodType[]) => { // 1. chkgdnSn + utztnUsgCd 기준 누계 정보 만들기 @@ -149,13 +150,16 @@ export const chRowspanTable = ( ) : key === "order" ? ( ++order ) : // value - ["anlOperCst", "dtfcltCpct", "prcsCpct"].includes( + ["anlOperCst", "dtfcltCpct", "prcsCpct"].includes( head.id ) ? ( - formatCommaNumber(value) - ) : ( - <>{value} - )} + formatCommaNumber(value) + ) : key === "chckYmd" ? ( + <>{formatYyyymmdd(value)} + ) : + ( + <>{value} + )} ); } @@ -231,12 +235,12 @@ export const chRowspanTable = ( /> ) ) : [ - "totalSplyUswtrUtztnQnt", - "totalRuseFcltUtztnQnt", - "splyUswtrUtztnQnt", - "ruseFcltUtztnQnt", - "levyAmt", - ].includes(head.id) ? ( + "totalSplyUswtrUtztnQnt", + "totalRuseFcltUtztnQnt", + "splyUswtrUtztnQnt", + "ruseFcltUtztnQnt", + "levyAmt", + ].includes(head.id) ? ( { { duration: Infinity } ); // 수동 닫기 }; + +// yyyy-mm-dd 형태로 포맷 +export const formatYyyymmdd = (val: string | undefined) => { + if (!val) return ""; + if (/^\d{8}$/.test(val)) { + return moment(val, "YYYYMMDD").format("YYYY-MM-DD"); + } + const m = moment(val); + return m.isValid() ? m.format("YYYY-MM-DD") : val; +}; \ No newline at end of file