diff --git a/apps/st/src/components/util/column/review/SeweragePenetrationRateRvwColumn.ts b/apps/st/src/components/util/column/review/SeweragePenetrationRateRvwColumn.ts index 94f272057..490e79099 100644 --- a/apps/st/src/components/util/column/review/SeweragePenetrationRateRvwColumn.ts +++ b/apps/st/src/components/util/column/review/SeweragePenetrationRateRvwColumn.ts @@ -16,11 +16,10 @@ const rawSeweragePenetrationRateInfoList = { valueCallback: (grid: GridView) => { const divisionIndex = 0; const dataSource = grid.getDataSource(); - const rowCount = dataSource.getRowCount(); const uniqueValues = new Set(); - for (let i = 0; i < rowCount; i++) { - const divisionValue = dataSource.getValue(i, 'displayYear'); - if (divisionValue) uniqueValues.add(String(divisionValue)); + for (let i = 0; i < dataSource.getRowCount(); i++) { + const val = dataSource.getValue(i, 'displayYear'); + if (val) uniqueValues.add(String(val)); } const divisionValues = Array.from(uniqueValues); return divisionValues.length > divisionIndex ? divisionValues[divisionIndex] + '합계' : '합계'; @@ -30,11 +29,10 @@ const rawSeweragePenetrationRateInfoList = { valueCallback: (grid: GridView) => { const divisionIndex = 1; const dataSource = grid.getDataSource(); - const rowCount = dataSource.getRowCount(); const uniqueValues = new Set(); - for (let i = 0; i < rowCount; i++) { - const divisionValue = dataSource.getValue(i, 'displayYear'); - if (divisionValue) uniqueValues.add(String(divisionValue)); + for (let i = 0; i < dataSource.getRowCount(); i++) { + const val = dataSource.getValue(i, 'displayYear'); + if (val) uniqueValues.add(String(val)); } const divisionValues = Array.from(uniqueValues); return divisionValues.length > divisionIndex ? divisionValues[divisionIndex] + '합계' : '합계'; @@ -78,7 +76,7 @@ const rawSeweragePenetrationRateInfoList = { } ] }, - { name: 'wtsysNm', fieldName: 'wtsysNm', header: { text: '수계' } }, + { name: 'wtsysNm', fieldName: 'rvbsn', header: { text: '수계' } }, { name: 'trbtrNm', fieldName: 'trbtrNm', header: { text: '지류' } }, { name: 'mdbsn', fieldName: 'mdbsn', header: { text: '세부단위유역' } }, { name: 'lgbsn', fieldName: 'lgbsn', header: { text: '중권역' } }, @@ -87,17 +85,14 @@ const rawSeweragePenetrationRateInfoList = { { name: 'wholPpltnCnt', fieldName: 'wholPpltnCnt', header: { text: '총인구' }, footer: footerIntArrayByDivision, valueType: ValueType.NUMBER, dataFormat: '#,##0' }, { name: 'wholArea', fieldName: 'wholArea', header: { text: '총면적(㎢)' }, footer: footerDecimal3ArrayByDivision, valueType: ValueType.NUMBER, dataFormat: '#,##0.000' }, { name: 'wholSwtrmtPpltnCnt', fieldName: 'wholSwtrmtPpltnCnt', header: { text: '계' }, footer: footerIntArrayByDivision, valueType: ValueType.NUMBER, dataFormat: '#,##0' }, - { name: 'wholPblSwtrmtPpltnCnt', fieldName: 'wholPblSwtrmtPpltnCnt', header: { text: '합계' }, footer: footerIntArrayByDivision, valueType: ValueType.NUMBER, dataFormat: '#,##0' }, { name: 'ts1SwtrmtPpltnCnt', fieldName: 'ts1SwtrmtPpltnCnt', header: { text: '1차처리' }, footer: footerIntArrayByDivision, valueType: ValueType.NUMBER, dataFormat: '#,##0' }, { name: 'ts2SwtrmtPpltnCnt', fieldName: 'ts2SwtrmtPpltnCnt', header: { text: '2차처리' }, footer: footerIntArrayByDivision, valueType: ValueType.NUMBER, dataFormat: '#,##0' }, { name: 'ts3SwtrmtPpltnCnt', fieldName: 'ts3SwtrmtPpltnCnt', header: { text: '3차처리' }, footer: footerIntArrayByDivision, valueType: ValueType.NUMBER, dataFormat: '#,##0' }, - { name: 'wholWwtPrcsPpltnCnt', fieldName: 'wholWwtPrcsPpltnCnt', header: { text: '합계' }, footer: footerIntArrayByDivision, valueType: ValueType.NUMBER, dataFormat: '#,##0' }, { name: 'ts1WwtPrcsPpltnCnt', fieldName: 'ts1WwtPrcsPpltnCnt', header: { text: '1차처리' }, footer: footerIntArrayByDivision, valueType: ValueType.NUMBER, dataFormat: '#,##0' }, { name: 'ts2WwtPrcsPpltnCnt', fieldName: 'ts2WwtPrcsPpltnCnt', header: { text: '2차처리' }, footer: footerIntArrayByDivision, valueType: ValueType.NUMBER, dataFormat: '#,##0' }, { name: 'ts3WwtPrcsPpltnCnt', fieldName: 'ts3WwtPrcsPpltnCnt', header: { text: '3차처리' }, footer: footerIntArrayByDivision, valueType: ValueType.NUMBER, dataFormat: '#,##0' }, - { name: 'yetCntnPpltnCnt', fieldName: 'yetCntnPpltnCnt', header: { text: '미접속인구' }, footer: footerIntArrayByDivision, valueType: ValueType.NUMBER, dataFormat: '#,##0' }, { name: 'staaArea', fieldName: 'staaArea', header: { text: '면적(㎢)' }, footer: footerDecimal3ArrayByDivision, valueType: ValueType.NUMBER, dataFormat: '#,##0.000' }, { name: 'wholStaaExcpPpltnCnt', fieldName: 'wholStaaExcpPpltnCnt', header: { text: '계' }, footer: footerIntArrayByDivision, valueType: ValueType.NUMBER, dataFormat: '#,##0' }, diff --git a/apps/st/src/entities/statistics/model/statistics-sewerage-penetration-review-interface.ts b/apps/st/src/entities/statistics/model/statistics-sewerage-penetration-review-interface.ts index ce82890d6..9c4d0ac1e 100644 --- a/apps/st/src/entities/statistics/model/statistics-sewerage-penetration-review-interface.ts +++ b/apps/st/src/entities/statistics/model/statistics-sewerage-penetration-review-interface.ts @@ -2,58 +2,48 @@ import type { ApiResponse } from "./statistics-interface"; // 검토 01.하수도 보급률 데이터 항목 export interface SewerageSupplyRateReviewItem { -/* 지역 및 구분 정보 */ - ctpvNm: string; // 시도명 - sggNm: string; // 시군구명 - statsYr: string; // 통계연도 - admdstNm: string; // 행정구역명 - admdstCd: string; // 행정구역코드 - displayYear: string; // 화면 표시 연도 - rowType: 'OLD' | 'CURR'; // 데이터 구분(OLD: 확정, CURR: 당해년도) +ctpvNm: string; + sggNm: string; + statsYr: string; + admdstNm: string; + admdstCd: string; + displayYear: string; + rowType: 'OLD' | 'CURR'; - /* 수계 및 지역 정보 */ - lgbsn: string; // 중권역 - mdbsn: string; // 세부단위유역 - mdmbsn: string; // 소수계 - wtsysNm: string | null; // 수계명 - trbtrNm: string | null; // 지류명 - spcCtpnRgnCn: string | null; // 특별대책지역내용 + lgbsn: string; + mdbsn: string; + mdmbsn: string; + rvbsn: string | null; + trbtrNm: string | null; + spcCtpnRgnCn: string | null; - /* 인구 및 면적 데이터 */ - wholPpltnCnt: number; // 전체인구수(명) - wholArea: number; // 전체면적(㎢) + wholPpltnCnt: number; + wholArea: number; - /* 하수처리구역내 */ - wholSwtrmtPpltnCnt: number; // 전체하수처리인구수(명) - wholPblSwtrmtPpltnCnt: number; // 전체공공하수처리인구수(명) - ts1SwtrmtPpltnCnt: number; // 1차하수처리인구수(명) - ts2SwtrmtPpltnCnt: number; // 2차하수처리인구수(명) - ts3SwtrmtPpltnCnt: number; // 3차하수처리인구수(명) + wholSwtrmtPpltnCnt: number; + wholPblSwtrmtPpltnCnt: number; + ts1SwtrmtPpltnCnt: number; + ts2SwtrmtPpltnCnt: number; + ts3SwtrmtPpltnCnt: number; - wholWwtPrcsPpltnCnt: number; // 전체폐수처리인구수(명) - ts1WwtPrcsPpltnCnt: number | null; // 1차폐수처리인구수(명) - ts2WwtPrcsPpltnCnt: number | null; // 2차폐수처리인구수(명) - ts3WwtPrcsPpltnCnt: number | null; // 3차폐수처리인구수(명) + wholWwtPrcsPpltnCnt: number; + ts1WwtPrcsPpltnCnt: number | null; + ts2WwtPrcsPpltnCnt: number | null; + ts3WwtPrcsPpltnCnt: number | null; - yetCntnPpltnCnt: number; // 미접속인구수(명) - staaArea: number; // 하수처리구역면적(㎢) + yetCntnPpltnCnt: number; + staaArea: number; - /* 하수처리구역외 */ - wholStaaExcpPpltnCnt: number; // 전체하수처리구역외인구수(명) - unprcsPpltnCnt: number | null; // 미처리인구수(명) - drtwPrcsPpltnCnt: number | null; // 오수처리인구수(명) - spctnkPpltnCnt: number | null; // 정화조인구수(명) - staaExcpArea: number; // 하수처리구역외면적(㎢) + wholStaaExcpPpltnCnt: number; + unprcsPpltnCnt: number | null; + drtwPrcsPpltnCnt: number | null; + spctnkPpltnCnt: number | null; + staaExcpArea: number; - /* 보급률 및 기타 */ - staaPsplyRt: number; // 하수처리구역보급비율(%) - altdPrcsPsplyRt: number; // 고도처리보급비율(%) - sewerInstlRt: number; // 하수도설치비율(%) - rmrk: string | null; // 비고 - - /* 기타 플래그 */ - lcnt?: number | null; - ocnt?: number | null; + staaPsplyRt: number; + altdPrcsPsplyRt: number; + sewerInstlRt: number; + rmrk: string | null; } export interface SewerageSupplyRateReviewRequestParams {