From 5a43b33a1d4f253c3b5eb4eced42aee6bd636b7d Mon Sep 17 00:00:00 2001 From: Your Name Date: Thu, 24 Jul 2025 15:08:07 +0900 Subject: [PATCH] =?UTF-8?q?=EA=B0=95=EC=9A=B0=EB=9F=89=20=EB=B0=8F=20?= =?UTF-8?q?=EB=8B=A8=EC=9C=84=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/fo/.env.local | 4 +- .../pages/facilityWaterQlty/modal/page.tsx | 2 +- apps/fo/app/pages/flowRate/modal/page.tsx | 7 +- apps/fo/app/store/common/index.tsx | 2 +- apps/fo/app/store/dashboard/index.tsx | 161 +++++++++--------- apps/fo/app/store/facilityWaterQlty/index.tsx | 4 +- apps/fo/app/store/flowRate/index.tsx | 33 ++-- 7 files changed, 109 insertions(+), 104 deletions(-) diff --git a/apps/fo/.env.local b/apps/fo/.env.local index 94488f0cd..76fb868cd 100644 --- a/apps/fo/.env.local +++ b/apps/fo/.env.local @@ -1,6 +1,6 @@ NEXT_PUBLIC_SITE_ID = FO -NEXT_PUBLIC_PORT = 11300 -NEXT_PUBLIC_PROXY_HOST = http://con.mind-one.co.kr:11300 +NEXT_PUBLIC_PORT = 3000 +NEXT_PUBLIC_PROXY_HOST = http://localhost:3000 NEXT_PUBLIC_SERVER_API_URL = http://con.mind-one.co.kr:11082/api/v1 NEXT_PUBLIC_WR_SERVER_API_URL = http://con.mind-one.co.kr:11080/api/v1 NEXT_PUBLIC_CS_SERVER_API_URL = http://dev.onasys.co.kr:8000 diff --git a/apps/fo/app/pages/facilityWaterQlty/modal/page.tsx b/apps/fo/app/pages/facilityWaterQlty/modal/page.tsx index 19129762e..feec1bf22 100644 --- a/apps/fo/app/pages/facilityWaterQlty/modal/page.tsx +++ b/apps/fo/app/pages/facilityWaterQlty/modal/page.tsx @@ -303,7 +303,7 @@ export default function WaterQualityModal({fcltyName='', facilityCd='', searchYe "유출SS(mg/L)": item.efflWqltSs, "유출TN(mg/L)": item.efflWqltTn, "유출TP(mg/L)": item.efflWqltTp, - "강우량(일)": item.infoRnDay?item.infoRnDay.toString():"0.0", + "강우량(mm/일)": item.infoRnDay?item.infoRnDay.toString():"0.0", }); }); } diff --git a/apps/fo/app/pages/flowRate/modal/page.tsx b/apps/fo/app/pages/flowRate/modal/page.tsx index c3815911a..fb7852560 100644 --- a/apps/fo/app/pages/flowRate/modal/page.tsx +++ b/apps/fo/app/pages/flowRate/modal/page.tsx @@ -52,6 +52,7 @@ export default function FlowRateModal(props: { fcltyName: string; facilityCd: st return Number(value.replace(/,/g, '')); }; + console.log('filteredData : ', filteredData); let maxtotInflAmnt = 0; let maxinflAmnt = 0; let maxsumFlow = 0; @@ -65,7 +66,7 @@ export default function FlowRateModal(props: { fcltyName: string; facilityCd: st let minsumFlow = parseNumber(filteredData[0]?.sumFlow); let minreturnAmnt = parseNumber(filteredData[0]?.returnAmnt); let minefflAmnt = parseNumber(filteredData[0]?.efflAmnt); - let mininfoRnDay = parseNumber(filteredData[0]?.infoRnDay); + let mininfoRnDay = parseNumber(filteredData[0]?.infoRnDay && filteredData[0]?.infoRnDay.toString().trim() !== 'x' ? filteredData[0]?.infoRnDay.toString().trim() : 0); let avgtotInflAmnt = 0; let avginflAmnt = 0; @@ -80,7 +81,7 @@ export default function FlowRateModal(props: { fcltyName: string; facilityCd: st const sumFlow = parseNumber(item.sumFlow); const returnAmnt = parseNumber(item.returnAmnt); const efflAmnt = parseNumber(item.efflAmnt); - const infoRnDay = parseNumber(item.infoRnDay); + const infoRnDay = parseNumber(item.infoRnDay && item.infoRnDay.toString().trim() !== 'x' ? item.infoRnDay.toString().trim() : 0); maxtotInflAmnt = Math.max(maxtotInflAmnt, totInflAmnt); maxinflAmnt = Math.max(maxinflAmnt, inflAmnt); maxsumFlow = Math.max(maxsumFlow, sumFlow); @@ -166,7 +167,7 @@ export default function FlowRateModal(props: { fcltyName: string; facilityCd: st "연계처리량(m³/일)": item.sumFlow, "총인반류수량(m³/일)": item.returnAmnt, "방류량(m³/일)": item.efflAmnt, - "강우량": item.infoRnDay, + "강우량(mm/일)": item.infoRnDay, }); }); } diff --git a/apps/fo/app/store/common/index.tsx b/apps/fo/app/store/common/index.tsx index 5c07bcd6e..997e7fee7 100644 --- a/apps/fo/app/store/common/index.tsx +++ b/apps/fo/app/store/common/index.tsx @@ -414,7 +414,7 @@ export const CommonReducer:(set:(fn: (state: CommonType) => CommonType) => void) // 시도 변경 이벤트 initializeCommonData: async () => { const payLoad : ILogin = { - userId: "tuser10003", + userId: "admin1gmail", password: "test1234!" }; diff --git a/apps/fo/app/store/dashboard/index.tsx b/apps/fo/app/store/dashboard/index.tsx index 09c7acec9..d69e48b9d 100644 --- a/apps/fo/app/store/dashboard/index.tsx +++ b/apps/fo/app/store/dashboard/index.tsx @@ -1207,42 +1207,42 @@ export const dashBoardReducer:(set:(fn: (state: DashBoardType) => DashBoardType) } const fcltyCpcValue = res.data.wqltObjs[0].fctCpc; - const itemList = ['계', '3mm 미만', '3~10mm 미만', '10~20mm 미만', '20~30mm 미만', '30~40mm 미만', '40~50mm 미만', '50mm~60mm 미만', '60mm 이상']; - const rainRate = ['0', '0', '0', '0', '0', '0', '0', '0', '0']; - const rainDate = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const inflAmtCnt = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const inflAmnt = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const fcltyCpct = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const dsInflWqltBod: number[] = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const dsInflWqltCod: number[] = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const dsInflWqltSs: number[] = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const dsInflWqltTn: number[] = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const dsInflWqltTp: number[] = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const inflAssctAftWqltBodCnt = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const inflAssctAftWqltBod = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const inflAssctAftWqltTocCnt = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const inflAssctAftWqltToc = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const inflAssctAftWqltSsCnt = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const inflAssctAftWqltSs = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const inflAssctAftWqltTnCnt = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const inflAssctAftWqltTn = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const inflAssctAftWqltTpCnt = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const inflAssctAftWqltTp = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const efflWqltBodCnt = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const efflWqltBod = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const efflWqltCodCnt = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const efflWqltCod = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const efflWqltSsCnt = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const efflWqltSs = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const efflWqltTnCnt = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const efflWqltTn = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const efflWqltTpCnt = [0, 0, 0, 0, 0, 0, 0, 0, 0]; - const efflWqltTp = [0, 0, 0, 0, 0, 0, 0, 0, 0]; + const itemList = ['계', '3~10mm 미만', '10~20mm 미만', '20~30mm 미만', '30~40mm 미만', '40~50mm 미만', '50mm~60mm 미만', '60mm 이상']; + const rainRate = ['0', '0', '0', '0', '0', '0', '0', '0']; + const rainDate = [0, 0, 0, 0, 0, 0, 0, 0]; + const inflAmtCnt = [0, 0, 0, 0, 0, 0, 0, 0]; + const inflAmnt = [0, 0, 0, 0, 0, 0, 0, 0]; + const fcltyCpct = [0, 0, 0, 0, 0, 0, 0, 0]; + const dsInflWqltBod: number[] = [0, 0, 0, 0, 0, 0, 0, 0]; + const dsInflWqltCod: number[] = [0, 0, 0, 0, 0, 0, 0, 0]; + const dsInflWqltSs: number[] = [0, 0, 0, 0, 0, 0, 0, 0]; + const dsInflWqltTn: number[] = [0, 0, 0, 0, 0, 0, 0, 0]; + const dsInflWqltTp: number[] = [0, 0, 0, 0, 0, 0, 0, 0]; + const inflAssctAftWqltBodCnt = [0, 0, 0, 0, 0, 0, 0, 0]; + const inflAssctAftWqltBod = [0, 0, 0, 0, 0, 0, 0, 0]; + const inflAssctAftWqltTocCnt = [0, 0, 0, 0, 0, 0, 0, 0]; + const inflAssctAftWqltToc = [0, 0, 0, 0, 0, 0, 0, 0]; + const inflAssctAftWqltSsCnt = [0, 0, 0, 0, 0, 0, 0, 0]; + const inflAssctAftWqltSs = [0, 0, 0, 0, 0, 0, 0, 0]; + const inflAssctAftWqltTnCnt = [0, 0, 0, 0, 0, 0, 0, 0]; + const inflAssctAftWqltTn = [0, 0, 0, 0, 0, 0, 0, 0]; + const inflAssctAftWqltTpCnt = [0, 0, 0, 0, 0, 0, 0, 0]; + const inflAssctAftWqltTp = [0, 0, 0, 0, 0, 0, 0, 0]; + const efflWqltBodCnt = [0, 0, 0, 0, 0, 0, 0, 0]; + const efflWqltBod = [0, 0, 0, 0, 0, 0, 0, 0]; + const efflWqltCodCnt = [0, 0, 0, 0, 0, 0, 0, 0]; + const efflWqltCod = [0, 0, 0, 0, 0, 0, 0, 0]; + const efflWqltSsCnt = [0, 0, 0, 0, 0, 0, 0, 0]; + const efflWqltSs = [0, 0, 0, 0, 0, 0, 0, 0]; + const efflWqltTnCnt = [0, 0, 0, 0, 0, 0, 0, 0]; + const efflWqltTn = [0, 0, 0, 0, 0, 0, 0, 0]; + const efflWqltTpCnt = [0, 0, 0, 0, 0, 0, 0, 0]; + const efflWqltTp = [0, 0, 0, 0, 0, 0, 0, 0]; // Process the data and create rain management list res.data.wqltObjs.forEach((item: RainManageListProps) => { // 강우일 - if(Number(item.infoRnDay) < 3){ + /*if(Number(item.infoRnDay) < 3){ rainDate[1] = Number(rainDate[1] || 0) + 1; inflAmtCnt[1] = Number(inflAmtCnt[1] || 0) + 1; inflAmnt[1] = Number(inflAmnt[1] || 0) + Number(item.inflAmnt || 0); @@ -1267,7 +1267,33 @@ export const dashBoardReducer:(set:(fn: (state: DashBoardType) => DashBoardType) efflWqltTn[1] = Number(efflWqltTn[1] || 0) + Number(item.efflWqltTn || 0); efflWqltTpCnt[1] = Number(efflWqltTpCnt[1] || 0) + 1; efflWqltTp[1] = Number(efflWqltTp[1] || 0) + Number(item.efflWqltTp || 0); - }else if(Number(item.infoRnDay) >= 3 && Number(item.infoRnDay) < 10){ + }*/ + if(Number(item.infoRnDay) >= 3 && Number(item.infoRnDay) < 10){ + rainDate[1] = Number(rainDate[1] || 0) + 1; + inflAmtCnt[1] = Number(inflAmtCnt[1] || 0) + 1; + inflAmnt[1] = Number(inflAmnt[1] || 0) + Number(item.inflAmnt || 0); + fcltyCpct[1] = 0; + inflAssctAftWqltBodCnt[1] = Number(inflAssctAftWqltBodCnt[1] || 0) + 1; + inflAssctAftWqltBod[1] = Number(inflAssctAftWqltBod[1] || 0) + Number(item.inflAssctAftWqltBod || 0); + inflAssctAftWqltTocCnt[1] = Number(inflAssctAftWqltTocCnt[1] || 0) + 1; + inflAssctAftWqltToc[1] = Number(inflAssctAftWqltToc[1] || 0) + Number(item.inflAssctAftWqltToc || 0); + inflAssctAftWqltSsCnt[1] = Number(inflAssctAftWqltSsCnt[1] || 0) + 1; + inflAssctAftWqltSs[1] = Number(inflAssctAftWqltSs[1] || 0) + Number(item.inflAssctAftWqltSs || 0); + inflAssctAftWqltTnCnt[1] = Number(inflAssctAftWqltTnCnt[1] || 0) + 1; + inflAssctAftWqltTn[1] = Number(inflAssctAftWqltTn[1] || 0) + Number(item.inflAssctAftWqltTn || 0); + inflAssctAftWqltTpCnt[1] = Number(inflAssctAftWqltTpCnt[1] || 0) + 1; + inflAssctAftWqltTp[1] = Number(inflAssctAftWqltTp[1] || 0) + Number(item.inflAssctAftWqltTp || 0); + efflWqltBodCnt[1] = Number(efflWqltBodCnt[1] || 0) + 1; + efflWqltBod[1] = Number(efflWqltBod[1] || 0) + Number(item.efflWqltBod || 0); + efflWqltCodCnt[1] = Number(efflWqltCodCnt[1] || 0) + 1; + efflWqltCod[1] = Number(efflWqltCod[1] || 0) + Number(item.efflWqltCod || 0); + efflWqltSsCnt[1] = Number(efflWqltSsCnt[1] || 0) + 1; + efflWqltSs[1] = Number(efflWqltSs[1] || 0) + Number(item.efflWqltSs || 0); + efflWqltTnCnt[1] = Number(efflWqltTnCnt[1] || 0) + 1; + efflWqltTn[1] = Number(efflWqltTn[1] || 0) + Number(item.efflWqltTn || 0); + efflWqltTpCnt[1] = Number(efflWqltTpCnt[1] || 0) + 1; + efflWqltTp[1] = Number(efflWqltTp[1] || 0) + Number(item.efflWqltTp || 0); + }else if(Number(item.infoRnDay) >= 10 && Number(item.infoRnDay) < 20){ rainDate[2] = Number(rainDate[2] || 0) + 1; inflAmtCnt[2] = Number(inflAmtCnt[2] || 0) + 1; inflAmnt[2] = Number(inflAmnt[2] || 0) + Number(item.inflAmnt || 0); @@ -1283,7 +1309,7 @@ export const dashBoardReducer:(set:(fn: (state: DashBoardType) => DashBoardType) inflAssctAftWqltTpCnt[2] = Number(inflAssctAftWqltTpCnt[2] || 0) + 1; inflAssctAftWqltTp[2] = Number(inflAssctAftWqltTp[2] || 0) + Number(item.inflAssctAftWqltTp || 0); efflWqltBodCnt[2] = Number(efflWqltBodCnt[2] || 0) + 1; - efflWqltBod[2] = Number(efflWqltBod[2] || 0) + Number(item.efflWqltBod || 0); + efflWqltBod[2] = Number(efflWqltBod[2] || 0) + Number(item.efflWqltBod || 0); efflWqltCodCnt[2] = Number(efflWqltCodCnt[2] || 0) + 1; efflWqltCod[2] = Number(efflWqltCod[2] || 0) + Number(item.efflWqltCod || 0); efflWqltSsCnt[2] = Number(efflWqltSsCnt[2] || 0) + 1; @@ -1292,7 +1318,7 @@ export const dashBoardReducer:(set:(fn: (state: DashBoardType) => DashBoardType) efflWqltTn[2] = Number(efflWqltTn[2] || 0) + Number(item.efflWqltTn || 0); efflWqltTpCnt[2] = Number(efflWqltTpCnt[2] || 0) + 1; efflWqltTp[2] = Number(efflWqltTp[2] || 0) + Number(item.efflWqltTp || 0); - }else if(Number(item.infoRnDay) >= 10 && Number(item.infoRnDay) < 20){ + }else if(Number(item.infoRnDay) >= 20 && Number(item.infoRnDay) < 30){ rainDate[3] = Number(rainDate[3] || 0) + 1; inflAmtCnt[3] = Number(inflAmtCnt[3] || 0) + 1; inflAmnt[3] = Number(inflAmnt[3] || 0) + Number(item.inflAmnt || 0); @@ -1317,11 +1343,11 @@ export const dashBoardReducer:(set:(fn: (state: DashBoardType) => DashBoardType) efflWqltTn[3] = Number(efflWqltTn[3] || 0) + Number(item.efflWqltTn || 0); efflWqltTpCnt[3] = Number(efflWqltTpCnt[3] || 0) + 1; efflWqltTp[3] = Number(efflWqltTp[3] || 0) + Number(item.efflWqltTp || 0); - }else if(Number(item.infoRnDay) >= 20 && Number(item.infoRnDay) < 30){ + }else if(Number(item.infoRnDay) >= 30 && Number(item.infoRnDay) < 40){ rainDate[4] = Number(rainDate[4] || 0) + 1; inflAmtCnt[4] = Number(inflAmtCnt[4] || 0) + 1; inflAmnt[4] = Number(inflAmnt[4] || 0) + Number(item.inflAmnt || 0); - fcltyCpct[4] = 0; + fcltyCpct[4] = item.inflAmnt&&Number(item.inflAmnt) !== 0 ? Number(Math.round(Number(item.inflAmnt) / Number(item.fctCpc) * 10) / 10) : 0; inflAssctAftWqltBodCnt[4] = Number(inflAssctAftWqltBodCnt[4] || 0) + 1; inflAssctAftWqltBod[4] = Number(inflAssctAftWqltBod[4] || 0) + Number(item.inflAssctAftWqltBod || 0); inflAssctAftWqltTocCnt[4] = Number(inflAssctAftWqltTocCnt[4] || 0) + 1; @@ -1329,7 +1355,7 @@ export const dashBoardReducer:(set:(fn: (state: DashBoardType) => DashBoardType) inflAssctAftWqltSsCnt[4] = Number(inflAssctAftWqltSsCnt[4] || 0) + 1; inflAssctAftWqltSs[4] = Number(inflAssctAftWqltSs[4] || 0) + Number(item.inflAssctAftWqltSs || 0); inflAssctAftWqltTnCnt[4] = Number(inflAssctAftWqltTnCnt[4] || 0) + 1; - inflAssctAftWqltTn[4] = Number(inflAssctAftWqltTn[4] || 0) + Number(item.inflAssctAftWqltTn || 0); + inflAssctAftWqltTn[4] = Number(inflAssctAftWqltTn[5] || 0) + Number(item.inflAssctAftWqltTn || 0); inflAssctAftWqltTpCnt[4] = Number(inflAssctAftWqltTpCnt[4] || 0) + 1; inflAssctAftWqltTp[4] = Number(inflAssctAftWqltTp[4] || 0) + Number(item.inflAssctAftWqltTp || 0); efflWqltBodCnt[4] = Number(efflWqltBodCnt[4] || 0) + 1; @@ -1338,15 +1364,15 @@ export const dashBoardReducer:(set:(fn: (state: DashBoardType) => DashBoardType) efflWqltCod[4] = Number(efflWqltCod[4] || 0) + Number(item.efflWqltCod || 0); efflWqltSsCnt[4] = Number(efflWqltSsCnt[4] || 0) + 1; efflWqltSs[4] = Number(efflWqltSs[4] || 0) + Number(item.efflWqltSs || 0); - efflWqltTnCnt[4] = Number(efflWqltTnCnt[4] || 0) + 1; + efflWqltTnCnt[4] = Number(efflWqltTnCnt[5] || 0) + 1; efflWqltTn[4] = Number(efflWqltTn[4] || 0) + Number(item.efflWqltTn || 0); - efflWqltTpCnt[4] = Number(efflWqltTpCnt[4] || 0) + 1; + efflWqltTpCnt[4] = Number(efflWqltTpCnt[5] || 0) + 1; efflWqltTp[4] = Number(efflWqltTp[4] || 0) + Number(item.efflWqltTp || 0); - }else if(Number(item.infoRnDay) >= 30 && Number(item.infoRnDay) < 40){ + }else if(Number(item.infoRnDay) >= 40 && Number(item.infoRnDay) < 50){ rainDate[5] = Number(rainDate[5] || 0) + 1; inflAmtCnt[5] = Number(inflAmtCnt[5] || 0) + 1; inflAmnt[5] = Number(inflAmnt[5] || 0) + Number(item.inflAmnt || 0); - fcltyCpct[5] = item.inflAmnt&&Number(item.inflAmnt) !== 0 ? Number(Math.round(Number(item.inflAmnt) / Number(item.fctCpc) * 10) / 10) : 0; + fcltyCpct[5] = 0; inflAssctAftWqltBodCnt[5] = Number(inflAssctAftWqltBodCnt[5] || 0) + 1; inflAssctAftWqltBod[5] = Number(inflAssctAftWqltBod[5] || 0) + Number(item.inflAssctAftWqltBod || 0); inflAssctAftWqltTocCnt[5] = Number(inflAssctAftWqltTocCnt[5] || 0) + 1; @@ -1367,7 +1393,7 @@ export const dashBoardReducer:(set:(fn: (state: DashBoardType) => DashBoardType) efflWqltTn[5] = Number(efflWqltTn[5] || 0) + Number(item.efflWqltTn || 0); efflWqltTpCnt[5] = Number(efflWqltTpCnt[5] || 0) + 1; efflWqltTp[5] = Number(efflWqltTp[5] || 0) + Number(item.efflWqltTp || 0); - }else if(Number(item.infoRnDay) >= 40 && Number(item.infoRnDay) < 50){ + }else if(Number(item.infoRnDay) >= 50 && Number(item.infoRnDay) < 60){ rainDate[6] = Number(rainDate[6] || 0) + 1; inflAmtCnt[6] = Number(inflAmtCnt[6] || 0) + 1; inflAmnt[6] = Number(inflAmnt[6] || 0) + Number(item.inflAmnt || 0); @@ -1392,7 +1418,7 @@ export const dashBoardReducer:(set:(fn: (state: DashBoardType) => DashBoardType) efflWqltTn[6] = Number(efflWqltTn[6] || 0) + Number(item.efflWqltTn || 0); efflWqltTpCnt[6] = Number(efflWqltTpCnt[6] || 0) + 1; efflWqltTp[6] = Number(efflWqltTp[6] || 0) + Number(item.efflWqltTp || 0); - }else if(Number(item.infoRnDay) >= 50 && Number(item.infoRnDay) < 60){ + }else if(Number(item.infoRnDay) >= 60){ rainDate[7] = Number(rainDate[7] || 0) + 1; inflAmtCnt[7] = Number(inflAmtCnt[7] || 0) + 1; inflAmnt[7] = Number(inflAmnt[7] || 0) + Number(item.inflAmnt || 0); @@ -1417,31 +1443,6 @@ export const dashBoardReducer:(set:(fn: (state: DashBoardType) => DashBoardType) efflWqltTn[7] = Number(efflWqltTn[7] || 0) + Number(item.efflWqltTn || 0); efflWqltTpCnt[7] = Number(efflWqltTpCnt[7] || 0) + 1; efflWqltTp[7] = Number(efflWqltTp[7] || 0) + Number(item.efflWqltTp || 0); - }else if(Number(item.infoRnDay) >= 60){ - rainDate[8] = Number(rainDate[8] || 0) + 1; - inflAmtCnt[8] = Number(inflAmtCnt[8] || 0) + 1; - inflAmnt[8] = Number(inflAmnt[8] || 0) + Number(item.inflAmnt || 0); - fcltyCpct[8] = 0; - inflAssctAftWqltBodCnt[8] = Number(inflAssctAftWqltBodCnt[8] || 0) + 1; - inflAssctAftWqltBod[8] = Number(inflAssctAftWqltBod[8] || 0) + Number(item.inflAssctAftWqltBod || 0); - inflAssctAftWqltTocCnt[8] = Number(inflAssctAftWqltTocCnt[8] || 0) + 1; - inflAssctAftWqltToc[8] = Number(inflAssctAftWqltToc[8] || 0) + Number(item.inflAssctAftWqltToc || 0); - inflAssctAftWqltSsCnt[8] = Number(inflAssctAftWqltSsCnt[8] || 0) + 1; - inflAssctAftWqltSs[8] = Number(inflAssctAftWqltSs[8] || 0) + Number(item.inflAssctAftWqltSs || 0); - inflAssctAftWqltTnCnt[8] = Number(inflAssctAftWqltTnCnt[8] || 0) + 1; - inflAssctAftWqltTn[8] = Number(inflAssctAftWqltTn[8] || 0) + Number(item.inflAssctAftWqltTn || 0); - inflAssctAftWqltTpCnt[8] = Number(inflAssctAftWqltTpCnt[8] || 0) + 1; - inflAssctAftWqltTp[8] = Number(inflAssctAftWqltTp[8] || 0) + Number(item.inflAssctAftWqltTp || 0); - efflWqltBodCnt[8] = Number(efflWqltBodCnt[8] || 0) + 1; - efflWqltBod[8] = Number(efflWqltBod[8] || 0) + Number(item.efflWqltBod || 0); - efflWqltCodCnt[8] = Number(efflWqltCodCnt[8] || 0) + 1; - efflWqltCod[8] = Number(efflWqltCod[8] || 0) + Number(item.efflWqltCod || 0); - efflWqltSsCnt[8] = Number(efflWqltSsCnt[8] || 0) + 1; - efflWqltSs[8] = Number(efflWqltSs[8] || 0) + Number(item.efflWqltSs || 0); - efflWqltTnCnt[8] = Number(efflWqltTnCnt[8] || 0) + 1; - efflWqltTn[8] = Number(efflWqltTn[8] || 0) + Number(item.efflWqltTn || 0); - efflWqltTpCnt[8] = Number(efflWqltTpCnt[8] || 0) + 1; - efflWqltTp[8] = Number(efflWqltTp[8] || 0) + Number(item.efflWqltTp || 0); } }); @@ -1488,7 +1489,7 @@ export const dashBoardReducer:(set:(fn: (state: DashBoardType) => DashBoardType) rainDate[0] = (Number(rainDate[1]) || 0) + (Number(rainDate[2]) || 0) + (Number(rainDate[3]) || 0) + (Number(rainDate[4]) || 0) + (Number(rainDate[5]) || 0) + (Number(rainDate[6]) || 0) + - (Number(rainDate[7]) || 0) + (Number(rainDate[8]) || 0); + (Number(rainDate[7]) || 0); // 강수비율 for(let idx=0; idx DashBoardType) inflAmnt[0] = calculateAverage(calculateTotal(inflAmnt), dataIsCount); fcltyCpct[0] = calculateTotal(fcltyCpct); - inflAssctAftWqltBod[0] = Number((calculateTotal(inflAssctAftWqltBod)/8).toFixed(1)); - inflAssctAftWqltToc[0] = Number((calculateTotal(inflAssctAftWqltToc)/8).toFixed(1)); - inflAssctAftWqltSs[0] = Number((calculateTotal(inflAssctAftWqltSs)/8).toFixed(1)); - inflAssctAftWqltTn[0] = Number((calculateTotal(inflAssctAftWqltTn)/8).toFixed(3)); - inflAssctAftWqltTp[0] = Number((calculateTotal(inflAssctAftWqltTp)/8).toFixed(3)); - efflWqltBod[0] = Number((calculateTotal(efflWqltBod)/8).toFixed(1)); - efflWqltCod[0] = Number((calculateTotal(efflWqltCod)/8).toFixed(1)); - efflWqltSs[0] = Number((calculateTotal(efflWqltSs as number[])/8).toFixed(1)); - efflWqltTn[0] = Number((calculateTotal(efflWqltTn as number[])/8).toFixed(3)); - efflWqltTp[0] = Number((calculateTotal(efflWqltTp as number[])/8).toFixed(3)); + inflAssctAftWqltBod[0] = Number((calculateTotal(inflAssctAftWqltBod)/7).toFixed(1)); + inflAssctAftWqltToc[0] = Number((calculateTotal(inflAssctAftWqltToc)/7).toFixed(1)); + inflAssctAftWqltSs[0] = Number((calculateTotal(inflAssctAftWqltSs)/7).toFixed(1)); + inflAssctAftWqltTn[0] = Number((calculateTotal(inflAssctAftWqltTn)/7).toFixed(3)); + inflAssctAftWqltTp[0] = Number((calculateTotal(inflAssctAftWqltTp)/7).toFixed(3)); + efflWqltBod[0] = Number((calculateTotal(efflWqltBod)/7).toFixed(1)); + efflWqltCod[0] = Number((calculateTotal(efflWqltCod)/7).toFixed(1)); + efflWqltSs[0] = Number((calculateTotal(efflWqltSs as number[])/7).toFixed(1)); + efflWqltTn[0] = Number((calculateTotal(efflWqltTn as number[])/7).toFixed(3)); + efflWqltTp[0] = Number((calculateTotal(efflWqltTp as number[])/7).toFixed(3)); // 최종 리스트 const filteredData = itemList.map((item, index) => ({ diff --git a/apps/fo/app/store/facilityWaterQlty/index.tsx b/apps/fo/app/store/facilityWaterQlty/index.tsx index 6430522f4..57ac2e50a 100644 --- a/apps/fo/app/store/facilityWaterQlty/index.tsx +++ b/apps/fo/app/store/facilityWaterQlty/index.tsx @@ -104,7 +104,7 @@ export type modalExcelType = { "유출SS(mg/L)": string; "유출TN(mg/L)": string; "유출TP(mg/L)": string; - "강우량(일)": string; + "강우량(mm/일)": string; } /**==================================== @@ -207,7 +207,7 @@ const upHeadListModalYear: TableUpperProps[] = [ { id: "efflWqltSs", title: "SS\n(mg/L)", upName: "upChangeRe2", upSequnce: 3, align: "right" }, { id: "efflWqltTn", title: "T-N\n(mg/L)", upName: "upChangeRe2", upSequnce: 2, align: "right" }, { id: "efflWqltTp", title: "T-P\n(mg/L)", upName: "upChangeRe2", upSequnce: 3, align: "right" }, - { id: "infoRnDay", title: "강우량", align: "right" }, + { id: "infoRnDay", title: "강우량(mm/일)", align: "right" }, ]; // 처리시설 수질현황 헤더(모달-수질TMS) diff --git a/apps/fo/app/store/flowRate/index.tsx b/apps/fo/app/store/flowRate/index.tsx index a619ddf85..ae5b7412b 100644 --- a/apps/fo/app/store/flowRate/index.tsx +++ b/apps/fo/app/store/flowRate/index.tsx @@ -13,8 +13,8 @@ const FlowRateSearchLabelArray:string[] = ['구분', '시도', '시군구', '용 export type flowRateListProps = { bscFctCd : string, - sidoNm : string, - sggNm : string, + sido : string, + gugun : string, bscFctNm : string, daddr : string, fctCpc : number, @@ -56,7 +56,7 @@ export type modalExcelType = { "연계처리량(m³/일)": number | '', "총인반류수량(m³/일)": number | '', "방류량(m³/일)": number | '', - "강우량": number | string | '', + "강우량(mm/일)": number | string | '', } /** * (2) 모달 @@ -93,8 +93,8 @@ export type FlowRateModalProps = { const upHeadList1:TableUpperProps[] = [ { id: "bscFctCd", title: "시설코드", row:0, rowSpan:2}, { id: "A", title: "행정명", row: 0 ,colSpan: 2 }, - { id: "sidoNm", title: "시도", upName:"upChangeRe", row:1 }, - { id: "sggNm", title: "시군구", upName:"upChangeRe", row:1 }, + { id: "sido", title: "시도", upName:"upChangeRe", row:1 }, + { id: "gugun", title: "시군구", upName:"upChangeRe", row:1 }, { id: "bscFctNm", title: "시설명", row: 0, rowSpan: 2}, { id: "daddr", title: "주소", row: 0, rowSpan: 2}, { id: "fctCpc", title: "시설용량\n(m³/일)", align:"right", row: 0, rowSpan: 2}, @@ -131,8 +131,8 @@ const upHeadList3:TableUpperProps[] = [ { id: "mdmbsn", title: "중권역", upName:"upChangeRe1", row:1 }, { id: "rgnNm", title: "환경청", row:0, rowSpan:2 }, { id: "B", title: "행정명", row: 0 ,colSpan: 2 }, - { id: "ctpvNm", title: "시도", upName:"upChangeRe2", row:1 }, - { id: "sggNm", title: "시군구", upName:"upChangeRe2", row:1 }, + { id: "sido", title: "시도", upName:"upChangeRe2", row:1 }, + { id: "gugun", title: "시군구", upName:"upChangeRe2", row:1 }, { id: "bscFctNm", title: "시설명", row: 0, rowSpan: 2 }, { id: "daddr", title: "주소", row: 0, rowSpan: 2 }, { id: "fctCpc", title: "시설용량\n(m³/일)", align:"right", row: 0, rowSpan: 2 }, @@ -157,7 +157,7 @@ const upHeadListFlowRateModal:TableUpperProps[] = [ { id: "sumFlow", title: "연계처리량(m³/일)", align:"right"}, { id: "returnAmnt", title: "총인 반류수량(m³/일)", align:"right"}, { id: "efflAmnt", title: "방류량(m³/일)", align:"right"}, - { id: "infoRnDay", title: "강우량", align:"right"} + { id: "infoRnDay", title: "강우량(mm/일)", align:"right"} ] const modalFlowRateListYear:FlowRateModalProps[] = [ @@ -268,11 +268,8 @@ export const flowRateSearchReducer:(set:(fn: (state: FlowRateSearchType) => Flow const res = await fetchFlowRateList(pageNo, pageSize, searchYear, partCd, nameCd, fcltCpct, operationValue, fcltyNm); const data = res.data; const excelDownList: ExcelType[] = []; - const rtnData = data.map((item: flowRateListProps) => { item.fctCpc = parseFloat(item.fctCpc.toString().replace(/,/g, '')); - item.sidoNm = item.lclgvrnmntNm.split(' ')[0]?.toString() || ''; - item.sggNm = item.lclgvrnmntNm.split(' ')[1]?.toString() || ''; item.totInflAmnt = Number(item.inflAmnt || 0) + Number(item.sumFlow || 0) + Number(item.returnAmnt || 0) dataFormSetting(item); return item; @@ -286,8 +283,8 @@ export const flowRateSearchReducer:(set:(fn: (state: FlowRateSearchType) => Flow 단위유역: item.lgbsn, 중권역: item.mdmbsn, 환경청: item.rgnNm, - 시도: item.sidoNm, - 시군구: item.sggNm, + 시도: item.sido, + 시군구: item.gugun, 시설이름: item.bscFctNm, 주소: item.daddr, 용량: item.fctCpc, @@ -300,7 +297,6 @@ export const flowRateSearchReducer:(set:(fn: (state: FlowRateSearchType) => Flow }); } - console.log('excelDownList' , excelDownList); set((state: FlowRateSearchType) => ({ ...state, FlowRateList: pageSize<5000?{ @@ -316,8 +312,14 @@ export const flowRateSearchReducer:(set:(fn: (state: FlowRateSearchType) => Flow searchFlowRateModalList: async (bscFctCd: string, searchYear: string) => { const res = await fetchFlowRateModalList(bscFctCd, searchYear); const data = res.data; - const tmpData:FlowRateModalProps[] = []; + + data.forEach((item: FlowRateModalProps) => { + if(item.infoRnDay && item.infoRnDay.toString().trim() === 'x') { + item.infoRnDay = ''; + } + }); + // facilityPrecipitation의 rainEffectDay 계산 로직을 적용 for(let idx = 0; idx < data.length; idx++) { const item = data[idx]; @@ -342,6 +344,7 @@ export const flowRateSearchReducer:(set:(fn: (state: FlowRateSearchType) => Flow rainEffectDay = rainDay; } + let test = tmpData.find((item: FlowRateModalProps) => item.msrDt === item.msrDt); tmpData.push({ ...item, rainEffectDay: rainEffectDay,