diff --git a/apps/st/src/components/statistics/management/PublicSewageFacilityMng.tsx b/apps/st/src/components/statistics/management/PublicSewageFacilityMng.tsx index c9975aaa2..c4a8e8a21 100644 --- a/apps/st/src/components/statistics/management/PublicSewageFacilityMng.tsx +++ b/apps/st/src/components/statistics/management/PublicSewageFacilityMng.tsx @@ -6,211 +6,14 @@ import SubmitExceptionButton from '@/components/button/SubmitExceptionButton'; import OperateDataButton from '@/components/button/OperateDataButton'; import { useState } from 'react'; +import { PublicSewageFacilityMngColumn } from '@/components/util/column/management/PublicSewageFacilityMngColumn'; + // 하수도 통계 관리 > 06. 공공하수처리시설 const PublicSewageFacilityMng = () => { - const columns = [ - // 행정구역 - { name: 'sidoCd', fieldName: '시도', header: { text: '시도' } }, - { name: 'gugun', fieldName: '구군', header: { text: '구군' } }, - - // 시설명 - { name: 'bscFctNm', fieldName: '시설명', header: { text: '시설명(500m³/일 이상/미만)' } }, - - // 소재지 - { name: 'addr', fieldName: '소재지', header: { text: '소재지' } }, - - // 시설용량 - { name: 'fctCpc', fieldName: '시설용량', header: { text: '시설용량(500m³/일 이상/미만)' } }, - - // 시설용량 - (m³/일) - { name: 'fctCpc1', fieldName: '물리적(시설용량)', header: { text: '물리적' } }, - { name: 'fctCpc2', fieldName: '생물학적(시설용량)', header: { text: '생물학적' } }, - { name: 'fctCpc3', fieldName: '고도(시설용량)', header: { text: '고도' } }, - - // 유입하수량 - { name: 'totInflAmntAve', fieldName: '유입하수량', header: { text: '유입하수량(500m³/일 이상/미만)' } }, - - // 유입하수량 - (m³/일) - { name: 'pInflAmntAve', fieldName: '물리적(유입)', header: { text: '물리적' } }, - { name: 'oInflAmntAve', fieldName: '생물학적(유입)', header: { text: '생물학적' } }, - { name: 'aInflAmntAve', fieldName: '고도(유입)', header: { text: '고도' } }, - - // 방류량 - { name: 'totTputAve', fieldName: '방류량', header: { text: '방류량(500m³/일 이상/미만)' } }, - - // 방류량 - (m³/일) - { name: 'pTputAve', fieldName: '물리적(방류)', header: { text: '물리적' } }, - { name: 'oTputAve', fieldName: '생물학적(방류)', header: { text: '생물학적' } }, - { name: 'aTputAve', fieldName: '고도(방류)', header: { text: '고도' } }, - - // 수질 - { name: 'inflAssctBfrWqltBod', fieldName: '유입BOD', header: { text: '유입BOD' } }, - { name: 'efflWqltBod', fieldName: '방류BOD', header: { text: '방류BOD' } }, - { name: 'inflAssctBfrWqltToc', fieldName: '유입TOC', header: { text: '유입TOC' } }, - { name: 'efflWqltToc', fieldName: '방류TOC', header: { text: '방류TOC' } }, - { name: 'inflAssctBfrWqltSs', fieldName: '유입SS', header: { text: '유입SS' } }, - { name: 'efflWqltSs', fieldName: '방류SS', header: { text: '방류SS' } }, - { name: 'inflAssctBfrWqltTn', fieldName: '유입T-N', header: { text: '유입T-N' } }, - { name: 'efflWqltTn', fieldName: '방류T-N', header: { text: '방류T-N' } }, - { name: 'inflAssctBfrWqltTp', fieldName: '유입T-P', header: { text: '유입T-P' } }, - { name: 'efflWqltTp', fieldName: '방류T-P', header: { text: '방류T-P' } }, - { name: 'inflAssctBfrWqltClfgrpcnt', fieldName: '유입총대장균군수', header: { text: '유입총대장균군수' } }, - { name: 'efflWqltClfgrpcnt', fieldName: '방류총대장균군수', header: { text: '방류총대장균군수' } }, - - // 처리특성 - { name: 'tmEfficiency', fieldName: '처리효율(%)', header: { text: '처리효율(%)' } }, - { name: 'pcLoad', fieldName: '처리부하량', header: { text: '처리부하량(kgBOD/D)' } }, - { name: 'trtFrfHanNm', fieldName: '처리방법', header: { text: '처리방법' } }, - - // 연계처리량 - { name: 'excretionsTot', fieldName: '분뇨', header: { text: '분뇨' } }, - { name: 'stkrsngWstwtrTot', fieldName: '축산', header: { text: '축산' } }, - { name: 'lchtTot', fieldName: '침출수', header: { text: '침출수' } }, - { name: 'etcTot', fieldName: '기타', header: { text: '기타' } }, - - // 시설정보 - { name: 'tel', fieldName: '전화번호', header: { text: '전화번호' } }, - { name: 'rnDt', fieldName: '준공일', header: { text: '준공일' } }, - { name: 'compDt', fieldName: '가동개시일', header: { text: '가동개시일' } }, - { name: 'tot', fieldName: '사업비', header: { text: '사업비' } }, - - // 방류수 소독방법 - { name: 'dsfctNm', fieldName: '방류수 소독방법', header: { text: '방류수 소독방법' } }, - - // 방류수역 - { name: 'wbsnNm', fieldName: '수계', header: { text: '수계' } }, - { name: 'rvNm', fieldName: '지류', header: { text: '지류' } }, - { name: 'mdmbsn', fieldName: '세부단위구역', header: { text: '세부단위구역' } }, - { name: 'efflWqltStndrdNm', fieldName: '지역구분', header: { text: '지역구분' } }, - { name: 'lgbsn', fieldName: '중권역', header: { text: '중권역' } }, - { name: 'lgbsnBod', fieldName: '목표수질(BOD)', header: { text: '목표수질(BOD)' } }, - - // 에너지 - { name: 'toeRt', fieldName: '에너지자립률(%)', header: { text: '에너지자립률(%)' } }, - { name: 'toeSum', fieldName: '계(TOE)', header: { text: '계(TOE)' } }, - { name: 'elcpwAmnt', fieldName: '총 전력사용량', header: { text: '총 전력사용량(kWh)' } }, - { name: 'toeQnty', fieldName: '자체 에너지사용량', header: { text: '자체 에너지사용량(TOE)' } }, - - // CO2 - { name: 'co2Emissions', fieldName: 'CO2배출량', header: { text: '하수처리량당 CO2배출량(kgCO2/m³)' } }, - - // 운영정보 - { name: 'oprClsNm', fieldName: '운영주체', header: { text: '운영주체(자체/공기업/민간대행)' } }, - - // 위탁현황 - { name: 'trstOprEtpNm', fieldName: '위탁업체명', header: { text: '위탁업체명' } }, - { name: 'yrstpTrstCst', fieldName: '위탁비용', header: { text: '위탁비용(백만원/년)' } }, - { name: 'trstOprDt', fieldName: '위탁계약기간', header: { text: '위탁계약기간(yyyy-mm-dd~yyyy-mm-dd)' } }, - - // 기타 - { name: 'cntrTrtFctNm', fieldName: '중심처리시설', header: { text: '중심처리시설' } }, - { name: 'totWtrQrm', fieldName: '직원총수', header: { text: '직원총수(명)' } }, - { name: 'safeAcdntCo', fieldName: '안전사고건수', header: { text: '안전사고건수' } }, - { name: 'rmk', fieldName: '비고', header: { text: '비고' } }, - ]; - - const columnLayout = [ - { - name: 'administrative', - hideChildHeaders: false, - header: { text: '행정구역' }, - items: ['sidoCd', 'gugun'], - }, - 'bscFctNm', - 'addr', - 'fctCpc', - { - name: 'facilityCapacityDetail', - hideChildHeaders: false, - header: { text: '(m³/일)' }, - items: ['fctCpc1', 'fctCpc2', 'fctCpc3'], - }, - 'totInflAmntAve', - { - name: 'influentWaterDetail', - hideChildHeaders: false, - header: { text: '(m³/일)' }, - items: ['pInflAmntAve', 'oInflAmntAve', 'aInflAmntAve'], - }, - 'totTputAve', - { - name: 'effluentWaterDetail', - hideChildHeaders: false, - header: { text: '(m³/일)' }, - items: ['pTputAve', 'oTputAve', 'aTputAve'], - }, - 'inflAssctBfrWqltBod', - 'efflWqltBod', - 'inflAssctBfrWqltToc', - 'efflWqltToc', - 'inflAssctBfrWqltSs', - 'efflWqltSs', - 'inflAssctBfrWqltTn', - 'efflWqltTn', - 'inflAssctBfrWqltTp', - 'efflWqltTp', - 'inflAssctBfrWqltClfgrpcnt', - 'efflWqltClfgrpcnt', - 'tmEfficiency', - 'pcLoad', - 'trtFrfHanNm', - { - name: 'linkedTreatment', - hideChildHeaders: false, - header: { text: '연계처리량(m³/일) (500m³/일 이상/미만)' }, - items: ['excretionsTot', 'stkrsngWstwtrTot', 'lchtTot', 'etcTot'], - }, - 'tel', - 'rnDt', - 'compDt', - 'tot', - 'dsfctNm', - { - name: 'dischargeArea', - hideChildHeaders: false, - header: { text: '방류수역' }, - items: [ - 'wbsnNm', - 'rvNm', - 'mdmbsn', - 'efflWqltStndrdNm', - { - name: 'mediumWatershed', - hideChildHeaders: false, - header: { text: '중권역' }, - items: ['lgbsn', 'lgbsnBod'], - }, - ], - }, - 'toeRt', - { - name: 'energy', - hideChildHeaders: false, - header: { text: '연간 총 에너지 사용량(TOE)' }, - items: ['toeSum', 'elcpwAmnt', 'toeQnty'], - }, - 'co2Emissions', - 'oprClsNm', - { - name: 'consignmentStatus', - hideChildHeaders: false, - header: { text: '위탁현황' }, - items: ['trstOprEtpNm', 'yrstpTrstCst', 'trstOprDt'], - }, - 'cntrTrtFctNm', - 'totWtrQrm', - 'safeAcdntCo', - 'rmk', - ]; - - const saveFunc = () => { - console.log('save'); - // 저장 로직: 자동 계산 (합계 필드 계산) 후 저장 - }; - - const submitFunc = () => { - console.log('submit'); - // 제출 로직: 데이터 검증 후 제출 팝업 호출 + + const SubmitExceptionFunc = () => { + console.log('submitException'); + // 예외제출 로직 }; const getOperateDataFunc = () => { @@ -218,9 +21,14 @@ const PublicSewageFacilityMng = () => { // 운영 데이터 가져오기 }; - const SubmitExceptionFunc = () => { - console.log('submitException'); - // 예외제출 로직 + const submitFunc = () => { + console.log('submit'); + // 제출 로직: 데이터 검증 후 제출 팝업 호출 + }; + + const saveFunc = () => { + console.log('save'); + // 저장 로직: 자동 계산 (합계 필드 계산) 후 저장 }; const [rowData, setRowData] = useState[]>([]); @@ -229,12 +37,12 @@ const PublicSewageFacilityMng = () => { <>
- +
- + ); }; diff --git a/apps/st/src/components/statistics/management/PumpingStationMng.tsx b/apps/st/src/components/statistics/management/PumpingStationMng.tsx index 3a776b4a5..d8f0c620d 100644 --- a/apps/st/src/components/statistics/management/PumpingStationMng.tsx +++ b/apps/st/src/components/statistics/management/PumpingStationMng.tsx @@ -6,139 +6,19 @@ import LastYearDataButton from "@/components/button/LastYearDataButton"; import SubmitExceptionButton from "@/components/button/SubmitExceptionButton"; import { useState } from "react"; +import { PumpingStationMngColumn } from "@/components/util/column/management/PumpingStationMngColumn" // 하수도 통계 관리 > 05. 펌프장 const PumpingStationMng = () => { - const columns = [ - // 행정구역 - { name: 'sido', fieldName: '시도', header: { text: '시도' } }, - { name: 'sgg', fieldName: '시군구', header: { text: '시군구' } }, - - // 기본 정보 - { name: 'treatmentFacilityName', fieldName: '처리장명', header: { text: '처리장명' } }, - { name: 'facilityName', fieldName: '시설명', header: { text: '시설명' } }, - { name: 'classification', fieldName: '구분(합류식 분류식)', header: { text: '구분(합류식 분류식)' } }, - { name: 'location', fieldName: '위치', header: { text: '위치' } }, - { name: 'operationDate', fieldName: '가동 년월일 yyyy-mm-dd', header: { text: '가동 년월일 yyyy-mm-dd' } }, - - // 계획 정보 - { name: 'planDrainageArea', fieldName: '계획배수면적(㎢)', header: { text: '계획배수면적(㎢)' } }, - { name: 'fairWeatherFlow', fieldName: '청천시(A)', header: { text: '청천시(A)' } }, - { name: 'rainyWeatherFlow', fieldName: '우천시(B)', header: { text: '우천시(B)' } }, - { name: 'rainwaterFlow', fieldName: '우수량(B-A)', header: { text: '우수량(B-A)' } }, - - // 배수능력 - { name: 'totalPumpCapacity', fieldName: '총양수량(m³/min)', header: { text: '총양수량(m³/min)' } }, - - // 배수능력 - 오수펌프(1) - { name: 'sewagePump1Diameter', fieldName: '오수펌프(1) 구경(mm)', header: { text: '구경(mm)' } }, - { name: 'sewagePump1Capacity', fieldName: '오수펌프(1) 대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' } }, - { name: 'sewagePump1Count', fieldName: '오수펌프(1) 펌프대수', header: { text: '펌프대수' } }, - { name: 'sewagePump1Reserve', fieldName: '오수펌프(1) 예비펌프대수', header: { text: '예비펌프대수' } }, - - // 배수능력 - 오수펌프(2) - { name: 'sewagePump2Diameter', fieldName: '오수펌프(2) 구경(mm)', header: { text: '구경(mm)' } }, - { name: 'sewagePump2Capacity', fieldName: '오수펌프(2) 대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' } }, - { name: 'sewagePump2Count', fieldName: '오수펌프(2) 펌프대수', header: { text: '펌프대수' } }, - { name: 'sewagePump2Reserve', fieldName: '오수펌프(2) 예비펌프대수', header: { text: '예비펌프대수' } }, - - // 배수능력 - 오수펌프(3) - { name: 'sewagePump3Diameter', fieldName: '오수펌프(3) 구경(mm)', header: { text: '구경(mm)' } }, - { name: 'sewagePump3Capacity', fieldName: '오수펌프(3) 대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' } }, - { name: 'sewagePump3Count', fieldName: '오수펌프(3) 펌프대수', header: { text: '펌프대수' } }, - { name: 'sewagePump3Reserve', fieldName: '오수펌프(3) 예비펌프대수', header: { text: '예비펌프대수' } }, - - // 배수능력 - 우수펌프(1) - { name: 'rainwaterPump1Diameter', fieldName: '우수펌프(1) 구경(mm)', header: { text: '구경(mm)' } }, - { name: 'rainwaterPump1Capacity', fieldName: '우수펌프(1) 대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' } }, - { name: 'rainwaterPump1Count', fieldName: '우수펌프(1) 펌프대수', header: { text: '펌프대수' } }, - { name: 'rainwaterPump1Reserve', fieldName: '우수펌프(1) 예비펌프대수', header: { text: '예비펌프대수' } }, - - // 배수능력 - 우수펌프(2) - { name: 'rainwaterPump2Diameter', fieldName: '우수펌프(2) 구경(mm)', header: { text: '구경(mm)' } }, - { name: 'rainwaterPump2Capacity', fieldName: '우수펌프(2) 대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' } }, - { name: 'rainwaterPump2Count', fieldName: '우수펌프(2) 펌프대수', header: { text: '펌프대수' } }, - { name: 'rainwaterPump2Reserve', fieldName: '우수펌프(2) 예비펌프대수', header: { text: '예비펌프대수' } }, - - // 배수능력 - 우수펌프(3) - { name: 'rainwaterPump3Diameter', fieldName: '우수펌프(3) 구경(mm)', header: { text: '구경(mm)' } }, - { name: 'rainwaterPump3Capacity', fieldName: '우수펌프(3) 대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' } }, - { name: 'rainwaterPump3Count', fieldName: '우수펌프(3) 펌프대수', header: { text: '펌프대수' } }, - { name: 'rainwaterPump3Reserve', fieldName: '우수펌프(3) 예비펌프대수', header: { text: '예비펌프대수' } }, - - // 기타 - { name: 'annualPowerUsage', fieldName: '연간전력사용량(kWh/년)', header: { text: '연간전력사용량(kWh/년)' } }, - { name: 'remarks', fieldName: '비고', header: { text: '비고' } }, - ]; - - const columnLayout = [ - { - name: 'administrativeArea', - hideChildHeaders: false, - header: { text: '행정구역' }, - items: ['sido', 'sgg'], - }, - 'treatmentFacilityName', - 'facilityName', - 'classification', - 'location', - 'operationDate', - 'planDrainageArea', - { - name: 'planFlowGroup', - hideChildHeaders: false, - header: { text: '계획시간대최대배수량(m³/hr)' }, - items: ['fairWeatherFlow', 'rainyWeatherFlow', 'rainwaterFlow'], - }, - { - name: 'drainageCapability', - hideChildHeaders: false, - header: { text: '배수능력' }, - items: [ - 'totalPumpCapacity', - { - name: 'sewagePump1Group', - hideChildHeaders: false, - header: { text: '오수펌프(1)' }, - items: ['sewagePump1Diameter', 'sewagePump1Capacity', 'sewagePump1Count', 'sewagePump1Reserve'], - }, - { - name: 'sewagePump2Group', - hideChildHeaders: false, - header: { text: '오수펌프(2)' }, - items: ['sewagePump2Diameter', 'sewagePump2Capacity', 'sewagePump2Count', 'sewagePump2Reserve'], - }, - { - name: 'sewagePump3Group', - hideChildHeaders: false, - header: { text: '오수펌프(3)' }, - items: ['sewagePump3Diameter', 'sewagePump3Capacity', 'sewagePump3Count', 'sewagePump3Reserve'], - }, - { - name: 'rainwaterPump1Group', - hideChildHeaders: false, - header: { text: '우수펌프(1)' }, - items: ['rainwaterPump1Diameter', 'rainwaterPump1Capacity', 'rainwaterPump1Count', 'rainwaterPump1Reserve'], - }, - { - name: 'rainwaterPump2Group', - hideChildHeaders: false, - header: { text: '우수펌프(2)' }, - items: ['rainwaterPump2Diameter', 'rainwaterPump2Capacity', 'rainwaterPump2Count', 'rainwaterPump2Reserve'], - }, - { - name: 'rainwaterPump3Group', - hideChildHeaders: false, - header: { text: '우수펌프(3)' }, - items: ['rainwaterPump3Diameter', 'rainwaterPump3Capacity', 'rainwaterPump3Count', 'rainwaterPump3Reserve'], - }, - ], - }, - 'annualPowerUsage', - 'remarks', - ]; - + const SubmitExceptionFunc = () => { + console.log('submit exception'); + // 예외 제출 로직 + }; + const getLastYearDataFunc = () => { + console.log('get last year data'); + // 지난연도 데이터 가져오기 로직 + }; const submitFunc = () => { console.log('submit'); @@ -150,28 +30,18 @@ const PumpingStationMng = () => { // 저장 로직 }; - const getLastYearDataFunc = () => { - console.log('get last year data'); - // 지난연도 데이터 가져오기 로직 - }; - - const SubmitExceptionFunc = () => { - console.log('submit exception'); - // 예외 제출 로직 - }; - const [rowData, setRowData] = useState[]>([]); return ( <>
+ + - -
- + ); }; diff --git a/apps/st/src/components/statistics/management/SewagePipeMaintainMng.tsx b/apps/st/src/components/statistics/management/SewagePipeMaintainMng.tsx index 5c16a2686..0ff0dee3a 100644 --- a/apps/st/src/components/statistics/management/SewagePipeMaintainMng.tsx +++ b/apps/st/src/components/statistics/management/SewagePipeMaintainMng.tsx @@ -6,8 +6,8 @@ import SaveButton from "@/components/button/SaveButton"; import LastYearDataButton from "@/components/button/LastYearDataButton"; import SubmitExceptionButton from "@/components/button/SubmitExceptionButton"; -import { RepairStatusColumn } from "@/components/util/column/management/sewagePipeMaintain/RepairStatus"; -import { PipeDredgingStatusColumn } from "@/components/util/column/management/sewagePipeMaintain/PipeDredgingStatus"; +import { RepairStatusMngColumn } from "@/components/util/column/management/sewagePipeMaintain/RepairStatusMngColumn"; +import { PipeDredgingStatusMngColumn } from "@/components/util/column/management/sewagePipeMaintain/PipeDredgingStatusMngColumn"; // 하수도 통계 관리 > 03. 하수관로 유지관리 const SewagePipeMaintainMng = () => { @@ -15,9 +15,9 @@ const SewagePipeMaintainMng = () => { const [rowDataMap, setRowDataMap] = useState[]>>(new Map()); // tab List - const SewagePipeMaintainMngColumnInfoList = [ - RepairStatusColumn, - PipeDredgingStatusColumn + const SewagePipeMaintainMngColumnList = [ + RepairStatusMngColumn, + PipeDredgingStatusMngColumn ]; const SubmitExceptionFunc = () => { @@ -51,7 +51,7 @@ const SewagePipeMaintainMng = () => { - + ); }; diff --git a/apps/st/src/components/statistics/management/SewagePipeMng.tsx b/apps/st/src/components/statistics/management/SewagePipeMng.tsx index cde4fe6ad..3457d1710 100644 --- a/apps/st/src/components/statistics/management/SewagePipeMng.tsx +++ b/apps/st/src/components/statistics/management/SewagePipeMng.tsx @@ -6,30 +6,30 @@ import SaveButton from "@/components/button/SaveButton"; import LastYearDataButton from "@/components/button/LastYearDataButton"; import SubmitExceptionButton from "@/components/button/SubmitExceptionButton"; -import { RegionalFacilityColumn } from "@/components/util/column/management/sewagePipe/RegionalFacility"; -import { FacilityInstallColumn } from "@/components/util/column/management/sewagePipe/FacilityInstall"; -import { PipeTypeColumn } from "@/components/util/column/management/sewagePipe/PipeTypeStatus"; -import { PipeDiameterColumn } from "@/components/util/column/management/sewagePipe/PipeDiameterStatus"; -import { ManholeStatusColumn } from "@/components/util/column/management/sewagePipe/ManholeStatus"; -import { - AdminAreaConnectionColumn, - TreatmentPlantConnectionColumn -} from "@/components/util/column/management/sewagePipe/ConnectionStatus"; +import { RegionalFacilityStatusMngColumn } from "@/components/util/column/management/sewagePipe/RegionalFacilityStatusMngColumn"; +import { FacilityInstallStatusMngColumn } from "@/components/util/column/management/sewagePipe/FacilityInstallStatusMngColumn"; +import { PipeTypeStatusMngColumn } from "@/components/util/column/management/sewagePipe/PipeTypeStatusMngColumn"; +import { PipeDiameterStatusMngColumn } from "@/components/util/column/management/sewagePipe/PipeDiameterStatusMngColumn"; +import { ManholeStatusMngColumn } from "@/components/util/column/management/sewagePipe/ManholeStatusMngColumn"; +import { + AdminAreaConnectionMngColumn, + TreatmentPlantConnectionMngColumn +} from "@/components/util/column/management/sewagePipe/ConnectionStatusMngColumn"; // 하수도 통계 관리 > 02. 하수관로 const SewagePipeMng = () => { const [rowDataMap, setRowDataMap] = useState[]>>(new Map()); // tab List - const SewagePipeMngColumnInfoList = [ - RegionalFacilityColumn, - FacilityInstallColumn, - PipeTypeColumn, - PipeDiameterColumn, - ManholeStatusColumn, + const SewagePipeMngColumnList = [ + RegionalFacilityStatusMngColumn, + FacilityInstallStatusMngColumn, + PipeTypeStatusMngColumn, + PipeDiameterStatusMngColumn, + ManholeStatusMngColumn, // 일단 각 tab으로 구현 - TreatmentPlantConnectionColumn, - AdminAreaConnectionColumn + AdminAreaConnectionMngColumn, + TreatmentPlantConnectionMngColumn ]; const SubmitExceptionFunc = () => { @@ -63,7 +63,7 @@ const SewagePipeMng = () => { - + ); }; diff --git a/apps/st/src/components/statistics/management/SewageReservoirPumpMng.tsx b/apps/st/src/components/statistics/management/SewageReservoirPumpMng.tsx index 6ace6af10..727ad1bab 100644 --- a/apps/st/src/components/statistics/management/SewageReservoirPumpMng.tsx +++ b/apps/st/src/components/statistics/management/SewageReservoirPumpMng.tsx @@ -6,11 +6,28 @@ import SaveButton from "@/components/button/SaveButton"; import LastYearDataButton from "@/components/button/LastYearDataButton"; import SubmitExceptionButton from "@/components/button/SubmitExceptionButton"; -import { SewageReservoirPumpMngColumnInfoList } from "@/components/util/column/management/SewageReservoirPumpMngColumn"; +import { SewageReservoirMngColumn } from "@/components/util/column/management/sewageReservoirPump/SewageReservoirMngColumn"; +import { RainfallPumpStationMngColumn } from "@/components/util/column/management/sewageReservoirPump/RainfallPumpStationMngColumn"; // 하수도 통계 관리 > 04. 하수저류 시설 및 빗물 펌프장 const SewageReservoirPumpMng = () => { const [rowDataMap, setRowDataMap] = useState[]>>(new Map()); + + // tab List + const SewageReservoirPumpMngColumnList = [ + SewageReservoirMngColumn, + RainfallPumpStationMngColumn + ]; + + const submitExceptionFunc = () => { + console.log('submit exception'); + // 예외 제출 로직 + }; + + const getLastYearDataFunc = () => { + console.log('get last year data'); + // 지난연도 데이터 가져오기 로직 + }; const submitFunc = () => { console.log('submit'); @@ -22,26 +39,16 @@ const SewageReservoirPumpMng = () => { // 저장 로직 }; - const getLastYearDataFunc = () => { - console.log('get last year data'); - // 지난연도 데이터 가져오기 로직 - }; - - const submitExceptionFunc = () => { - console.log('submit exception'); - // 예외 제출 로직 - }; - return ( <>
- +
- + ); }; diff --git a/apps/st/src/components/statistics/management/SeweragePenetrationRateMng.tsx b/apps/st/src/components/statistics/management/SeweragePenetrationRateMng.tsx index 13a902354..bc3bf889c 100644 --- a/apps/st/src/components/statistics/management/SeweragePenetrationRateMng.tsx +++ b/apps/st/src/components/statistics/management/SeweragePenetrationRateMng.tsx @@ -7,7 +7,7 @@ import SubmitExceptionButton from "@/components/button/SubmitExceptionButton"; import { useState } from "react"; -import { SeweragePenetrationRateMngColumnInfo } from "@/components/util/column/management/SeweragePenetrationRateMngColumn"; +import { SeweragePenetrationRateMngColumn } from "@/components/util/column/management/SeweragePenetrationRateMngColumn"; // 하수도 통계 관리 > 01. 하수도 보급률 const SeweragePenetrationRateMng = () => { @@ -45,10 +45,10 @@ const SeweragePenetrationRateMng = () => { - 00. 통계 입력 현황 const StatsInputSatusMng = () => { - const columns = [ - { name: 'sido', fieldName: '시도', header: { text: '시도' } }, - { name: 'sgg', fieldName: '구군', header: { text: '구군' } }, - { name: 'menu_nm', fieldName: '구분', header: { text: '구분' } }, - { name: 'locg_status_nm', fieldName: '진행상황', header: { text: '진행상황' } }, - { name: 'locg_status', fieldName: '작성률', header: { text: '작성률' } }, - { name: 'locg_charger', fieldName: '작성자', header: { text: '작성자' } }, - { name: 'locg_cttpc', fieldName: '작성자 연락처', header: { text: '작성자 연락처' } }, - { name: 'locg_dept', fieldName: '작성자 부서', header: { text: '작성자 부서' } }, - { name: 'locg_job', fieldName: '작성자 직제', header: { text: '작성자 직제' } }, - { name: 'locg_cnfirm_nm', fieldName: '승인자', header: { text: '승인자' } }, - { name: 'locg_cnfirm_dept', fieldName: '승인자 부서', header: { text: '승인자 부서' } }, - { name: 'locg_cnfirm_job', fieldName: '승인자 직제', header: { text: '승인자 직제' } }, - { name: 'return_opinion_sm', fieldName: '반려 사유', header: { text: '반려 사유' } }, - ]; - - const columnLayout = [ - 'sido', - 'sgg', - 'menu_nm', - { - name: 'groupA', - hideChildHeaders: false, - header: { text: '하수도사업자' }, - items: columns.filter((c) => ['sido', 'sgg', 'menu_nm'].includes(c.name) === false).map((m) => m.name), - }, - ]; - - const approveFunc = () => { - console.log('appoved'); - // 승인 요청 로직 - }; const rejectFunc = () => { console.log('reject'); // 보완 요청 로직 }; + const approveFunc = () => { + console.log('appoved'); + // 승인 요청 로직 + }; + const returnFunc = () => { console.log('return'); // 반려 로직 @@ -77,7 +52,7 @@ const StatsInputSatusMng = () => { - + ); }; diff --git a/apps/st/src/components/util/column/management/PublicSewageFacilityMngColumn.ts b/apps/st/src/components/util/column/management/PublicSewageFacilityMngColumn.ts new file mode 100644 index 000000000..fdc53ce55 --- /dev/null +++ b/apps/st/src/components/util/column/management/PublicSewageFacilityMngColumn.ts @@ -0,0 +1,202 @@ +import { footerInt, footerDecimal1, footerDecimal3 } from "@/components/util/grid/footerSummary"; + +/** + * 하수도 통계 관리 > 06. 공공하수처리시설 + * 단일 Tab + */ +export const PublicSewageFacilityMngColumn = { + columns: [ + // 행정구역 + { name: 'sidoCd', fieldName: '시도', header: { text: '시도' }, editable: false }, + { name: 'gugun', fieldName: '구군', header: { text: '구군' }, editable: false }, + + // 시설명 + { name: 'bscFctNm', fieldName: '시설명(500m³/일 이상/미만)', header: { text: '시설명(500m³/일 이상/미만)' }, editable: false }, + + // 소재지 + { name: 'addr', fieldName: '소재지', header: { text: '소재지' }, editable: false }, + + // 시설용량 + { name: 'fctCpc', fieldName: '시설용량(500m³/일 이상/미만)', header: { text: '시설용량(500m³/일 이상/미만)' }, editable: false }, + + // 시설용량 - (m³/일) + { name: 'fctCpc1', fieldName: '물리적', header: { text: '물리적' }, editable: false, footer: footerDecimal1 }, + { name: 'fctCpc2', fieldName: '생물학적', header: { text: '생물학적' }, editable: false, footer: footerDecimal1 }, + { name: 'fctCpc3', fieldName: '고도', header: { text: '고도' }, editable: false, footer: footerDecimal1 }, + + // 유입하수량 + { name: 'totInflAmntAve', fieldName: '유입하수량(500m³/일 이상/미만)', header: { text: '유입하수량(500m³/일 이상/미만)' }, editable: false, footer: footerDecimal1 }, + + // 유입하수량 - (m³/일) + { name: 'pInflAmntAve', fieldName: '물리적', header: { text: '물리적' }, footer: footerDecimal1 }, + { name: 'oInflAmntAve', fieldName: '생물학적', header: { text: '생물학적' }, footer: footerDecimal1 }, + { name: 'aInflAmntAve', fieldName: '고도', header: { text: '고도' }, footer: footerDecimal1 }, + + // 방류량 + { name: 'totTputAve', fieldName: '방류량(500m³/일 이상/미만)', header: { text: '방류량(500m³/일 이상/미만)' }, editable: false, footer: footerDecimal1 }, + + // 방류량 - (m³/일) + { name: 'pTputAve', fieldName: '물리적', header: { text: '물리적' }, footer: footerDecimal1 }, + { name: 'oTputAve', fieldName: '생물학적', header: { text: '생물학적' }, footer: footerDecimal1 }, + { name: 'aTputAve', fieldName: '고도', header: { text: '고도' }, footer: footerDecimal1 }, + + // 수질 + { name: 'inflAssctBfrWqltBod', fieldName: '유입BOD', header: { text: '유입BOD' }, editable: false, footer: footerDecimal1 }, + { name: 'efflWqltBod', fieldName: '방류BOD', header: { text: '방류BOD' }, editable: false, footer: footerDecimal1 }, + { name: 'inflAssctBfrWqltToc', fieldName: '유입TOC', header: { text: '유입TOC' }, editable: false, footer: footerDecimal1 }, + { name: 'efflWqltToc', fieldName: '방류TOC', header: { text: '방류TOC' }, editable: false, footer: footerDecimal1 }, + { name: 'inflAssctBfrWqltSs', fieldName: '유입SS', header: { text: '유입SS' }, editable: false, footer: footerDecimal1 }, + { name: 'efflWqltSs', fieldName: '방류SS', header: { text: '방류SS' }, editable: false, footer: footerDecimal1 }, + { name: 'inflAssctBfrWqltTn', fieldName: '유입T-N', header: { text: '유입T-N' }, editable: false, footer: footerDecimal3 }, + { name: 'efflWqltTn', fieldName: '방류T-N', header: { text: '방류T-N' }, editable: false, footer: footerDecimal3 }, + { name: 'inflAssctBfrWqltTp', fieldName: '유입T-P', header: { text: '유입T-P' }, editable: false, footer: footerDecimal3 }, + { name: 'efflWqltTp', fieldName: '방류T-P', header: { text: '방류T-P' }, editable: false, footer: footerDecimal3 }, + { name: 'inflAssctBfrWqltClfgrpcnt', fieldName: '유입총대장균군수', header: { text: '유입총대장균군수' }, editable: false, footer: footerDecimal1 }, + { name: 'efflWqltClfgrpcnt', fieldName: '방류총대장균군수', header: { text: '방류총대장균군수' }, editable: false, footer: footerDecimal1 }, + + // 처리특성 + { name: 'tmEfficiency', fieldName: '처리효율(%)', header: { text: '처리효율(%)' }, editable: false, footer: footerDecimal1 }, + { name: 'pcLoad', fieldName: '처리부하량(kgBOD/D)', header: { text: '처리부하량(kgBOD/D)' }, editable: false, footer: footerDecimal1 }, + { name: 'trtFrfHanNm', fieldName: '처리방법', header: { text: '처리방법' }, editable: false }, + + // 연계처리량 + { name: 'excretionsTot', fieldName: '분뇨', header: { text: '분뇨' }, editable: false, footer: footerDecimal1 }, + { name: 'stkrsngWstwtrTot', fieldName: '축산', header: { text: '축산' }, editable: false, footer: footerDecimal1 }, + { name: 'lchtTot', fieldName: '침출수', header: { text: '침출수' }, editable: false, footer: footerDecimal1 }, + { name: 'etcTot', fieldName: '기타', header: { text: '기타' }, editable: false, footer: footerDecimal1 }, + + // 시설정보 + { name: 'tel', fieldName: '전화번호', header: { text: '전화번호' }, editable: false }, + { name: 'rnDt', fieldName: '준공일', header: { text: '준공일' }, editable: false }, + { name: 'compDt', fieldName: '가동개시일', header: { text: '가동개시일' }, editable: false }, + { name: 'tot', fieldName: '사업비', header: { text: '사업비' }, editable: false }, + + // 방류수 소독방법 + { name: 'dsfctNm', fieldName: '방류수 소독방법', header: { text: '방류수 소독방법' }, editable: false }, + + // 방류수역 + { name: 'wbsnNm', fieldName: '수계', header: { text: '수계' }, editable: false }, + { name: 'rvNm', fieldName: '지류', header: { text: '지류' }, editable: false }, + { name: 'mdmbsn', fieldName: '세부단위구역', header: { text: '세부단위구역' }, editable: false }, + { name: 'efflWqltStndrdNm', fieldName: '지역구분', header: { text: '지역구분' }, editable: false }, + { name: 'lgbsn', fieldName: '중권역', header: { text: '중권역' }, editable: false }, + { name: 'lgbsnBod', fieldName: '목표수질(BOD)', header: { text: '목표수질(BOD)' }, editable: false }, + + // 에너지 + { name: 'toeRt', fieldName: '에너지자립률(%)', header: { text: '에너지자립률(%)' }, editable: false }, + { name: 'toeSum', fieldName: '계(TOE)', header: { text: '계(TOE)' }, editable: false, footer: footerDecimal1 }, + { name: 'elcpwAmnt', fieldName: '총 전력사용량(kWh)', header: { text: '총 전력사용량(kWh)' }, editable: false, footer: footerDecimal1 }, + { name: 'toeQnty', fieldName: '자체 에너지사용량(TOE)', header: { text: '자체 에너지사용량(TOE)' }, editable: false, footer: footerDecimal1 }, + + // CO2 + { name: 'co2Emissions', fieldName: '하수처리량당 CO2배출량(kgCO2/m³)', header: { text: '하수처리량당 CO2배출량(kgCO2/m³)' }, editable: false, footer: footerDecimal3 }, + + // 운영정보 + { name: 'oprClsNm', fieldName: '운영주체(자체/공기업/민간대행)', header: { text: '운영주체(자체/공기업/민간대행)' }, editable: false }, + + // 위탁현황 + { name: 'trstOprEtpNm', fieldName: '위탁업체명', header: { text: '위탁업체명' } }, + { name: 'yrstpTrstCst', fieldName: '위탁비용(백만원/년)', header: { text: '위탁비용(백만원/년)' }, footer: footerDecimal1 }, + { name: 'trstOprDt', fieldName: '위탁계약기간(yyyy-mm-dd~yyyy-mm-dd)', header: { text: '위탁계약기간(yyyy-mm-dd~yyyy-mm-dd)' } }, + + // 기타 + { name: 'cntrTrtFctNm', fieldName: '중심처리시설', header: { text: '중심처리시설' } }, + { name: 'totWtrQrm', fieldName: '직원총수(명)', header: { text: '직원총수(명)' }, footer: footerInt }, + { name: 'safeAcdntCo', fieldName: '안전사고건수', header: { text: '안전사고건수' } }, + { name: 'rmk', fieldName: '비고', header: { text: '비고' } }, + ], + + columnLayout: [ + { + name: 'administrative', + hideChildHeaders: false, + header: { text: '행정구역' }, + items: ['sidoCd', 'gugun'], + }, + 'bscFctNm', + 'addr', + 'fctCpc', + { + name: 'facilityCapacityDetail', + hideChildHeaders: false, + header: { text: '(m³/일)' }, + items: ['fctCpc1', 'fctCpc2', 'fctCpc3'], + }, + 'totInflAmntAve', + { + name: 'influentWaterDetail', + hideChildHeaders: false, + header: { text: '(m³/일)' }, + items: ['pInflAmntAve', 'oInflAmntAve', 'aInflAmntAve'], + }, + 'totTputAve', + { + name: 'effluentWaterDetail', + hideChildHeaders: false, + header: { text: '(m³/일)' }, + items: ['pTputAve', 'oTputAve', 'aTputAve'], + }, + 'inflAssctBfrWqltBod', + 'efflWqltBod', + 'inflAssctBfrWqltToc', + 'efflWqltToc', + 'inflAssctBfrWqltSs', + 'efflWqltSs', + 'inflAssctBfrWqltTn', + 'efflWqltTn', + 'inflAssctBfrWqltTp', + 'efflWqltTp', + 'inflAssctBfrWqltClfgrpcnt', + 'efflWqltClfgrpcnt', + 'tmEfficiency', + 'pcLoad', + 'trtFrfHanNm', + { + name: 'linkedTreatment', + hideChildHeaders: false, + header: { text: '연계처리량(m³/일) (500m³/일 이상/미만)' }, + items: ['excretionsTot', 'stkrsngWstwtrTot', 'lchtTot', 'etcTot'], + }, + 'tel', + 'rnDt', + 'compDt', + 'tot', + 'dsfctNm', + { + name: 'dischargeArea', + hideChildHeaders: false, + header: { text: '방류수역' }, + items: [ + 'wbsnNm', + 'rvNm', + 'mdmbsn', + 'efflWqltStndrdNm', + { + name: 'mediumWatershed', + hideChildHeaders: false, + header: { text: '중권역' }, + items: ['lgbsn', 'lgbsnBod'], + }, + ], + }, + 'toeRt', + { + name: 'energy', + hideChildHeaders: false, + header: { text: '연간 총 에너지 사용량(TOE)' }, + items: ['toeSum', 'elcpwAmnt', 'toeQnty'], + }, + 'co2Emissions', + 'oprClsNm', + { + name: 'consignmentStatus', + hideChildHeaders: false, + header: { text: '위탁현황' }, + items: ['trstOprEtpNm', 'yrstpTrstCst', 'trstOprDt'], + }, + 'cntrTrtFctNm', + 'totWtrQrm', + 'safeAcdntCo', + 'rmk', + ] +}; \ No newline at end of file diff --git a/apps/st/src/components/util/column/management/PumpingStationMngColumn.ts b/apps/st/src/components/util/column/management/PumpingStationMngColumn.ts new file mode 100644 index 000000000..f7c889bf8 --- /dev/null +++ b/apps/st/src/components/util/column/management/PumpingStationMngColumn.ts @@ -0,0 +1,136 @@ +import { footerInt, footerDecimal1, footerDecimal3 } from "@/components/util/grid/footerSummary"; + +/** + * 하수도 통계 관리 > 05. 펌프장 + * 단일 Tab + */ +export const PumpingStationMngColumn = { + columns: [ + // 행정구역 + { name: 'sido', fieldName: '시도', header: { text: '시도' }, editable: false }, + { name: 'sgg', fieldName: '시군구', header: { text: '시군구' }, editable: false }, + + // 기본 정보 + { name: 'treatmentFacilityName', fieldName: '처리장명', header: { text: '처리장명' } }, + { name: 'facilityName', fieldName: '시설명', header: { text: '시설명' } }, + { name: 'classification', fieldName: '구분(합류식 분류식)', header: { text: '구분(합류식 분류식)' } }, + { name: 'location', fieldName: '위치', header: { text: '위치' } }, + { name: 'operationDate', fieldName: '가동 년월일 yyyy-mm-dd', header: { text: '가동 년월일 yyyy-mm-dd' } }, + + // 계획 정보 + { name: 'planDrainageArea', fieldName: '계획배수면적(㎢)', header: { text: '계획배수면적(㎢)' }, footer: footerDecimal3 }, + { name: 'fairWeatherFlow', fieldName: '청천시(A)', header: { text: '청천시(A)' }, footer: footerDecimal1 }, + { name: 'rainyWeatherFlow', fieldName: '우천시(B)', header: { text: '우천시(B)' }, footer: footerDecimal1 }, + { name: 'rainwaterFlow', fieldName: '우수량(B-A)', header: { text: '우수량(B-A)' }, footer: footerDecimal1, editable: false }, + + // 배수능력 + { name: 'totalPumpCapacity', fieldName: '총양수량(m³/min)', header: { text: '총양수량(m³/min)' }, footer: footerDecimal1, editable: false }, + + // 배수능력 - 오수펌프(1) + { name: 'sewagePump1Diameter', fieldName: '오수펌프(1) 구경(mm)', header: { text: '구경(mm)' }, footer: footerInt }, + { name: 'sewagePump1Capacity', fieldName: '오수펌프(1) 대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' }, footer: footerDecimal1 }, + { name: 'sewagePump1Count', fieldName: '오수펌프(1) 펌프대수', header: { text: '펌프대수' }, footer: footerInt }, + { name: 'sewagePump1Reserve', fieldName: '오수펌프(1) 예비펌프대수', header: { text: '예비펌프대수' }, footer: footerInt }, + + // 배수능력 - 오수펌프(2) + { name: 'sewagePump2Diameter', fieldName: '오수펌프(2) 구경(mm)', header: { text: '구경(mm)' }, footer: footerInt }, + { name: 'sewagePump2Capacity', fieldName: '오수펌프(2) 대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' }, footer: footerDecimal1 }, + { name: 'sewagePump2Count', fieldName: '오수펌프(2) 펌프대수', header: { text: '펌프대수' }, footer: footerInt }, + { name: 'sewagePump2Reserve', fieldName: '오수펌프(2) 예비펌프대수', header: { text: '예비펌프대수' }, footer: footerInt }, + + // 배수능력 - 오수펌프(3) + { name: 'sewagePump3Diameter', fieldName: '오수펌프(3) 구경(mm)', header: { text: '구경(mm)' }, footer: footerInt }, + { name: 'sewagePump3Capacity', fieldName: '오수펌프(3) 대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' }, footer: footerDecimal1 }, + { name: 'sewagePump3Count', fieldName: '오수펌프(3) 펌프대수', header: { text: '펌프대수' }, footer: footerInt }, + { name: 'sewagePump3Reserve', fieldName: '오수펌프(3) 예비펌프대수', header: { text: '예비펌프대수' }, footer: footerInt }, + + // 배수능력 - 우수펌프(1) + { name: 'rainwaterPump1Diameter', fieldName: '우수펌프(1) 구경(mm)', header: { text: '구경(mm)' }, footer: footerInt }, + { name: 'rainwaterPump1Capacity', fieldName: '우수펌프(1) 대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' }, footer: footerDecimal1 }, + { name: 'rainwaterPump1Count', fieldName: '우수펌프(1) 펌프대수', header: { text: '펌프대수' }, footer: footerInt }, + { name: 'rainwaterPump1Reserve', fieldName: '우수펌프(1) 예비펌프대수', header: { text: '예비펌프대수' }, footer: footerInt }, + + // 배수능력 - 우수펌프(2) + { name: 'rainwaterPump2Diameter', fieldName: '우수펌프(2) 구경(mm)', header: { text: '구경(mm)' }, footer: footerInt }, + { name: 'rainwaterPump2Capacity', fieldName: '우수펌프(2) 대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' }, footer: footerDecimal1 }, + { name: 'rainwaterPump2Count', fieldName: '우수펌프(2) 펌프대수', header: { text: '펌프대수' }, footer: footerInt }, + { name: 'rainwaterPump2Reserve', fieldName: '우수펌프(2) 예비펌프대수', header: { text: '예비펌프대수' }, footer: footerInt }, + + // 배수능력 - 우수펌프(3) + { name: 'rainwaterPump3Diameter', fieldName: '우수펌프(3) 구경(mm)', header: { text: '구경(mm)' }, footer: footerInt }, + { name: 'rainwaterPump3Capacity', fieldName: '우수펌프(3) 대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' }, footer: footerDecimal1 }, + { name: 'rainwaterPump3Count', fieldName: '우수펌프(3) 펌프대수', header: { text: '펌프대수' }, footer: footerInt }, + { name: 'rainwaterPump3Reserve', fieldName: '우수펌프(3) 예비펌프대수', header: { text: '예비펌프대수' }, footer: footerInt }, + + // 기타 + { name: 'annualPowerUsage', fieldName: '연간전력사용량(kWh/년)', header: { text: '연간전력사용량(kWh/년)' }, footer: footerDecimal1 }, + { name: 'remarks', fieldName: '비고', header: { text: '비고' } }, + ], + + columnLayout: [ + { + name: 'administrativeArea', + hideChildHeaders: false, + header: { text: '행정구역' }, + items: ['sido', 'sgg'], + }, + 'treatmentFacilityName', + 'facilityName', + 'classification', + 'location', + 'operationDate', + 'planDrainageArea', + { + name: 'planFlowGroup', + hideChildHeaders: false, + header: { text: '계획시간대최대배수량(m³/hr)' }, + items: ['fairWeatherFlow', 'rainyWeatherFlow', 'rainwaterFlow'], + }, + { + name: 'drainageCapability', + hideChildHeaders: false, + header: { text: '배수능력' }, + items: [ + 'totalPumpCapacity', + { + name: 'sewagePump1Group', + hideChildHeaders: false, + header: { text: '오수펌프(1)' }, + items: ['sewagePump1Diameter', 'sewagePump1Capacity', 'sewagePump1Count', 'sewagePump1Reserve'], + }, + { + name: 'sewagePump2Group', + hideChildHeaders: false, + header: { text: '오수펌프(2)' }, + items: ['sewagePump2Diameter', 'sewagePump2Capacity', 'sewagePump2Count', 'sewagePump2Reserve'], + }, + { + name: 'sewagePump3Group', + hideChildHeaders: false, + header: { text: '오수펌프(3)' }, + items: ['sewagePump3Diameter', 'sewagePump3Capacity', 'sewagePump3Count', 'sewagePump3Reserve'], + }, + { + name: 'rainwaterPump1Group', + hideChildHeaders: false, + header: { text: '우수펌프(1)' }, + items: ['rainwaterPump1Diameter', 'rainwaterPump1Capacity', 'rainwaterPump1Count', 'rainwaterPump1Reserve'], + }, + { + name: 'rainwaterPump2Group', + hideChildHeaders: false, + header: { text: '우수펌프(2)' }, + items: ['rainwaterPump2Diameter', 'rainwaterPump2Capacity', 'rainwaterPump2Count', 'rainwaterPump2Reserve'], + }, + { + name: 'rainwaterPump3Group', + hideChildHeaders: false, + header: { text: '우수펌프(3)' }, + items: ['rainwaterPump3Diameter', 'rainwaterPump3Capacity', 'rainwaterPump3Count', 'rainwaterPump3Reserve'], + }, + ], + }, + 'annualPowerUsage', + 'remarks', + ] +}; \ No newline at end of file diff --git a/apps/st/src/components/util/column/management/SewagePipeMaintainMngColumn.ts b/apps/st/src/components/util/column/management/SewagePipeMaintainMngColumn.ts deleted file mode 100644 index f31164dd7..000000000 --- a/apps/st/src/components/util/column/management/SewagePipeMaintainMngColumn.ts +++ /dev/null @@ -1,8 +0,0 @@ -/** - * 하수도 통계 관리 > 3.하수관로 유지 관리 - * 2개 Tab : 컬럼 통합 관리 - */ - -export const SewagePipeMaintainMngColumnInfoList = [ - -]; \ No newline at end of file diff --git a/apps/st/src/components/util/column/management/SewageReservoirPumpMngColumn.ts b/apps/st/src/components/util/column/management/SewageReservoirPumpMngColumn.ts deleted file mode 100644 index 85c49a6bf..000000000 --- a/apps/st/src/components/util/column/management/SewageReservoirPumpMngColumn.ts +++ /dev/null @@ -1,481 +0,0 @@ -/** - * 하수도 통계 관리 > 4.하수저류시설 및 빗물펌프장 - * 2개 Tab: 컬럼 통합 관리 - */ - -export const SewageReservoirPumpMngColumnInfoList = [ - // ======================================== - // Tab 1: 하수저류시설 - // ======================================== - { - columns: [ - // 행정구역 - { name: 'sidoCd', fieldName: '시도코드', header: { text: '시도코드' }, hidden: true }, - { name: 'adstDstrCd', fieldName: '행정구역코드', header: { text: '행정구역코드' }, hidden: true }, - { name: 'adstCd', fieldName: '행정코드', header: { text: '행정코드' }, hidden: true }, - { name: 'rgnNm', fieldName: '지역명', header: { text: '지역명' }, hidden: true }, - { name: 'sido', fieldName: '시도', header: { text: '시도' } }, - { name: 'sgg', fieldName: '시군구', header: { text: '시군구' } }, - - // 기본정보 - { name: 'swgeStrgeFctSeq', fieldName: '시설SEQ', header: { text: '시설SEQ' }, hidden: true }, - { name: 'swgeStrgeNm', fieldName: '시설명', header: { text: '시설명' } }, - { name: 'addr', fieldName: '위치', header: { text: '위치' } }, - { name: 'rnDt', fieldName: '가동개시 년월일 yyyy-mm-dd', header: { text: '가동개시 년월일 yyyy-mm-dd' } }, - { name: 'useYn', fieldName: '사용여부', header: { text: '사용여부' }, hidden: true }, - { name: 'closeDt', fieldName: '폐지일자', header: { text: '폐지일자' }, hidden: true }, - - // 계획설계빈도 - { name: 'designFrequency', fieldName: '계획설계빈도', header: { text: '계획설계빈도' } }, - - // 설치목적 - { name: 'floodingPrevention', fieldName: '침수예방', header: { text: '침수예방' } }, - { name: 'waterQualityReduction', fieldName: '수질오염저감', header: { text: '수질오염저감' } }, - { name: 'sewerageReuseUse', fieldName: '하수재이용용도', header: { text: '하수재이용용도' } }, - - // 시설정보 - { name: 'facilityStructure', fieldName: '시설구조(일반지하식,지하터널식,기타)', header: { text: '시설구조(일반지하식,지하터널식,기타)' } }, - { name: 'catchmentAreaSize', fieldName: '집수구역면적(㎢)', header: { text: '집수구역면적(㎢)' } }, - { name: 'facilityCapacity', fieldName: '시설용량(m³)', header: { text: '시설용량(m³)' } }, - - // 펌프시설 - 총양수량 - { name: 'totalPumpingCapacity', fieldName: '총양수량(m³/min)', header: { text: '총양수량(m³/min)' } }, - - // 펌프시설1 - { name: 'pump1Diameter', fieldName: '구경(mm)', header: { text: '구경(mm)' } }, - { name: 'pump1PumpingCapacity', fieldName: '대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' } }, - { name: 'pump1Count', fieldName: '펌프대수', header: { text: '펌프대수' } }, - { name: 'pump1StandbyCount', fieldName: '예비펌프대수', header: { text: '예비펌프대수' } }, - - // 펌프시설2 - { name: 'pump2Diameter', fieldName: '구경(mm)', header: { text: '구경(mm)' } }, - { name: 'pump2PumpingCapacity', fieldName: '대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' } }, - { name: 'pump2Count', fieldName: '펌프대수', header: { text: '펌프대수' } }, - { name: 'pump2StandbyCount', fieldName: '예비펌프대수', header: { text: '예비펌프대수' } }, - - // 펌프시설3 - { name: 'pump3Diameter', fieldName: '구경(mm)', header: { text: '구경(mm)' } }, - { name: 'pump3PumpingCapacity', fieldName: '대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' } }, - { name: 'pump3Count', fieldName: '펌프대수', header: { text: '펌프대수' } }, - { name: 'pump3StandbyCount', fieldName: '예비펌프대수', header: { text: '예비펌프대수' } }, - - // 부대시설 - { name: 'preprocessingFacility', fieldName: '전처리시설유무(유/무)', header: { text: '전처리시설유무(유/무)' } }, - { name: 'odorRemovalEquipment', fieldName: '탈취설비유무(유/무)', header: { text: '탈취설비유무(유/무)' } }, - { name: 'selfGenerationEquipment', fieldName: '자가발전유무(유/무)', header: { text: '자가발전유무(유/무)' } }, - - // 배수및저류방식 - { name: 'drainageMethod', fieldName: '배수방식(자연배수,강제배수)', header: { text: '배수방식(자연배수,강제배수)' } }, - { name: 'storageMethod', fieldName: '저류방식(직렬,병렬)', header: { text: '저류방식(직렬,병렬)' } }, - { name: 'storageWaterTreatmentMethod', fieldName: '저류수처리방법(자체처리,연계처리)', header: { text: '저류수처리방법(자체처리,연계처리)' } }, - { name: 'dischargeDestination', fieldName: '방류수역(또는 연계처리장명)', header: { text: '방류수역(또는 연계처리장명)' } }, - - // 최종처분량 - { name: 'sedimentDisposalAmount', fieldName: '침사', header: { text: '침사' } }, - { name: 'debrisDisposalAmount', fieldName: '협잡물', header: { text: '협잡물' } }, - - // 최종처분방법 - { name: 'sedimentDisposalMethod', fieldName: '침사', header: { text: '침사' } }, - { name: 'debrisDisposalMethod', fieldName: '협잡물', header: { text: '협잡물' } }, - - // 운영실적 - { name: 'operationDaysPerYear', fieldName: '기동일수(일/년)', header: { text: '기동일수(일/년)' } }, - { name: 'totalDischargePerYear', fieldName: '총배수량(m³/년)', header: { text: '총배수량(m³/년)' } }, - - // 비고 - { name: 'remarks', fieldName: '비고', header: { text: '비고' } }, - ], - - columnLayout: [ - // 행정구역 - { - name: 'adminArea', - hideChildHeaders: false, - header: { text: '행정구역' }, - items: ['sido', 'sgg'], - }, - - // 시설명 - 'swgeStrgeNm', - - // 위치 - 'addr', - - // 가동개시 년월일 - 'rnDt', - - // 계획설계빈도 - 'designFrequency', - - // 설치목적 - { - name: 'installationPurpose', - hideChildHeaders: false, - header: { text: '설치목적(O,X로 표기, 중복체크가능)' }, - items: [ - 'floodingPrevention', - 'waterQualityReduction', - 'sewerageReuseUse', - ], - }, - - // 시설구조 - 'facilityStructure', - - // 집수구역면적 - 'catchmentAreaSize', - - // 시설용량 - 'facilityCapacity', - - // 펌프시설 - { - name: 'pumpSystem', - hideChildHeaders: false, - header: { text: '펌프시설' }, - items: [ - // 총양수량 - 'totalPumpingCapacity', - - // 펌프시설1 - { - name: 'pumpSystem1', - hideChildHeaders: false, - header: { text: '펌프시설1' }, - items: [ - 'pump1Diameter', - 'pump1PumpingCapacity', - 'pump1Count', - 'pump1StandbyCount', - ], - }, - - // 펌프시설2 - { - name: 'pumpSystem2', - hideChildHeaders: false, - header: { text: '펌프시설2' }, - items: [ - 'pump2Diameter', - 'pump2PumpingCapacity', - 'pump2Count', - 'pump2StandbyCount', - ], - }, - - // 펌프시설3 - { - name: 'pumpSystem3', - hideChildHeaders: false, - header: { text: '펌프시설3' }, - items: [ - 'pump3Diameter', - 'pump3PumpingCapacity', - 'pump3Count', - 'pump3StandbyCount', - ], - }, - ], - }, - - // 부대시설 - { - name: 'auxiliaryFacilities', - hideChildHeaders: false, - header: { text: '부대시설' }, - items: [ - 'preprocessingFacility', - 'odorRemovalEquipment', - 'selfGenerationEquipment', - ], - }, - - // 배수방식 - 'drainageMethod', - - // 저류방식 - 'storageMethod', - - // 저류수처리방법 - 'storageWaterTreatmentMethod', - - // 방류수역 - 'dischargeDestination', - - // 최종처분량 - { - name: 'finalDisposalAmount', - hideChildHeaders: false, - header: { text: '최종처분량(ton/년)' }, - items: [ - 'sedimentDisposalAmount', - 'debrisDisposalAmount', - ], - }, - - // 최종처분방법 - { - name: 'finalDisposalMethod', - hideChildHeaders: false, - header: { text: '최종처분방법' }, - items: [ - 'sedimentDisposalMethod', - 'debrisDisposalMethod', - ], - }, - - // 운영실적 - { - name: 'operationResults', - hideChildHeaders: false, - header: { text: '운영실적' }, - items: [ - 'operationDaysPerYear', - 'totalDischargePerYear', - ], - }, - - // 비고 - 'remarks', - ], - - rowStartNum: 3, - fixedColumns: 2, - tabKey: 'sewageReservoir', - tabLabel: '하수저류시설', - }, - - // ======================================== - // Tab 2: 빗물펌프장 - // ======================================== - { - columns: [ - // 행정구역 - { name: 'sidoCd', fieldName: '시도코드', header: { text: '시도코드' }, hidden: true }, - { name: 'adstDstrCd', fieldName: '행정구역코드', header: { text: '행정구역코드' }, hidden: true }, - { name: 'adstCd', fieldName: '행정코드', header: { text: '행정코드' }, hidden: true }, - { name: 'rgnNm', fieldName: '지역명', header: { text: '지역명' }, hidden: true }, - { name: 'sido', fieldName: '시도', header: { text: '시도' } }, - { name: 'sgg', fieldName: '시군구', header: { text: '시군구' } }, - - // 기본정보 - { name: 'swgeStrgeFctSeq', fieldName: '시설SEQ', header: { text: '시설SEQ' }, hidden: true }, - { name: 'swgeStrgeNm', fieldName: '시설명', header: { text: '시설명' } }, - { name: 'addr', fieldName: '위치', header: { text: '위치' } }, - { name: 'facRes', fieldName: '시설물종류', header: { text: '시설물종류' } }, - { name: 'rnDt', fieldName: '가동개시 년월일 yyyy-mm-dd', header: { text: '가동개시 년월일 yyyy-mm-dd' } }, - - // 계획설계빈도 - { name: 'plDsgnFrqnc', fieldName: '계획설계빈도', header: { text: '계획설계빈도' } }, - - // 집수구역면적 - { name: 'dgrAr', fieldName: '집수구역면적(㎢)', header: { text: '집수구역면적(㎢)' } }, - - // 유수지 - { name: 'revFnnc', fieldName: '유수지유무(유,무)', header: { text: '유수지유무(유,무)' } }, - { name: 'revCpcty', fieldName: '저류랑(m³)', header: { text: '저류랑(m³)' } }, - - // 흡수정 - { name: 'absCpcty', fieldName: '저류랑(m³)', header: { text: '저류랑(m³)' } }, - - // 펌프시설 - 총양수량 - { name: 'wpCpcty', fieldName: '총양수량(m³/min)', header: { text: '총양수량(m³/min)' } }, - - // 펌프시설1 - { name: 'pumpCalbr', fieldName: '구경(mm)', header: { text: '구경(mm)' } }, - { name: 'pumpHpCo', fieldName: '대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' } }, - { name: 'pumpCo', fieldName: '펌프대수', header: { text: '펌프대수' } }, - { name: 'pumpPreparCo', fieldName: '예비펌프대수', header: { text: '예비펌프대수' } }, - - // 펌프시설2 - { name: 'pumpCalbr2', fieldName: '구경(mm)', header: { text: '구경(mm)' } }, - { name: 'pumpHpCo2', fieldName: '대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' } }, - { name: 'pumpCo2', fieldName: '펌프대수', header: { text: '펌프대수' } }, - { name: 'pumpPreparCo2', fieldName: '예비펌프대수', header: { text: '예비펌프대수' } }, - - // 펌프시설3 - { name: 'pumpCalbr3', fieldName: '구경(mm)', header: { text: '구경(mm)' } }, - { name: 'pumpHpCo3', fieldName: '대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' } }, - { name: 'pumpCo3', fieldName: '펌프대수', header: { text: '펌프대수' } }, - { name: 'pumpPreparCo3', fieldName: '예비펌프대수', header: { text: '예비펌프대수' } }, - - // 부대시설 - { name: 'dorZeqpFnnc', fieldName: '전처리시설유무(유/무)', header: { text: '전처리시설유무(유/무)' } }, - { name: 'selfEtrqFnnc', fieldName: '탈취설비유무(유/무)', header: { text: '탈취설비유무(유/무)' } }, - { name: 'freFnnc', fieldName: '자가발전유무(유/무)', header: { text: '자가발전유무(유/무)' } }, - - // 방류수역 - { name: 'disWat', fieldName: '방류수역', header: { text: '방류수역' } }, - - // 최종처분량 - { name: 'sdmtTreCpcty', fieldName: '침사', header: { text: '침사' } }, - { name: 'iprtTreCpcty', fieldName: '협잡물', header: { text: '협잡물' } }, - - // 최종처분방법 - { name: 'sdmtTreMth', fieldName: '침사', header: { text: '침사' } }, - { name: 'iprtTreMth', fieldName: '협잡물', header: { text: '협잡물' } }, - - // 운영실적 - { name: 'yrstpRnDyn', fieldName: '기동일수(일/년)', header: { text: '기동일수(일/년)' } }, - { name: 'dsplcmntAmnt', fieldName: '총배수량(m³/년)', header: { text: '총배수량(m³/년)' } }, - - // 비고 - { name: 'rmk', fieldName: '비고', header: { text: '비고' } }, - ], - - columnLayout: [ - // 행정구역 - { - name: 'adminArea', - hideChildHeaders: false, - header: { text: '행정구역' }, - items: ['sido', 'sgg'], - }, - - // 시설명 - 'swgeStrgeNm', - - // 위치 - 'addr', - - // 시설물종류 - 'facRes', - - // 가동개시 년월일 - 'rnDt', - - // 계획설계빈도 - 'plDsgnFrqnc', - - // 집수구역면적 - 'dgrAr', - - // 유수지 - { - name: 'reservoir', - hideChildHeaders: false, - header: { text: '유수지' }, - items: [ - 'revFnnc', - 'revCpcty', - ], - }, - - // 흡수정 - { - name: 'absorptionWell', - hideChildHeaders: false, - header: { text: '흡수정' }, - items: [ - 'absCpcty', - ], - }, - - // 펌프시설 - { - name: 'pumpSystem', - hideChildHeaders: false, - header: { text: '펌프시설' }, - items: [ - // 총양수량 - 'wpCpcty', - - // 펌프시설1 - { - name: 'pumpSystem1', - hideChildHeaders: false, - header: { text: '펌프시설1' }, - items: [ - 'pumpCalbr', - 'pumpHpCo', - 'pumpCo', - 'pumpPreparCo', - ], - }, - - // 펌프시설2 - { - name: 'pumpSystem2', - hideChildHeaders: false, - header: { text: '펌프시설2' }, - items: [ - 'pumpCalbr2', - 'pumpHpCo2', - 'pumpCo2', - 'pumpPreparCo2', - ], - }, - - // 펌프시설3 - { - name: 'pumpSystem3', - hideChildHeaders: false, - header: { text: '펌프시설3' }, - items: [ - 'pumpCalbr3', - 'pumpHpCo3', - 'pumpCo3', - 'pumpPreparCo3', - ], - }, - ], - }, - - // 부대시설 - { - name: 'auxiliaryFacilities', - hideChildHeaders: false, - header: { text: '부대시설' }, - items: [ - 'dorZeqpFnnc', - 'selfEtrqFnnc', - 'freFnnc', - ], - }, - - // 방류수역 - 'disWat', - - // 최종처분량 - { - name: 'finalDisposalAmount', - hideChildHeaders: false, - header: { text: '최종처분량(ton/년)' }, - items: [ - 'sdmtTreCpcty', - 'iprtTreCpcty', - ], - }, - - // 최종처분방법 - { - name: 'finalDisposalMethod', - hideChildHeaders: false, - header: { text: '최종처분방법' }, - items: [ - 'sdmtTreMth', - 'iprtTreMth', - ], - }, - - // 운영실적 - { - name: 'operationResults', - hideChildHeaders: false, - header: { text: '운영실적' }, - items: [ - 'yrstpRnDyn', - 'dsplcmntAmnt', - ], - }, - - // 비고 - 'rmk', - ], - - rowStartNum: 3, - fixedColumns: 2, - tabKey: 'rainfallPumpStation', - tabLabel: '빗물펌프장', - }, -]; \ No newline at end of file diff --git a/apps/st/src/components/util/column/management/SeweragePenetrationRateMngColumn.ts b/apps/st/src/components/util/column/management/SeweragePenetrationRateMngColumn.ts index 6d5e6045a..974753e74 100644 --- a/apps/st/src/components/util/column/management/SeweragePenetrationRateMngColumn.ts +++ b/apps/st/src/components/util/column/management/SeweragePenetrationRateMngColumn.ts @@ -4,7 +4,7 @@ import { ValueType } from "realgrid"; * 하수도 통계 관리 > 01. 하수도 보급률 * 단일 Tab */ -export const SeweragePenetrationRateMngColumnInfo = { +export const SeweragePenetrationRateMngColumn = { columns: [ // [기본정보] 행정구역 - 수정 불가 { name: 'sido', fieldName: '시도', header: { text: '시도' }, editable: false }, diff --git a/apps/st/src/components/util/column/management/StatsInputSatusMngColumn.ts b/apps/st/src/components/util/column/management/StatsInputSatusMngColumn.ts new file mode 100644 index 000000000..0961a6a07 --- /dev/null +++ b/apps/st/src/components/util/column/management/StatsInputSatusMngColumn.ts @@ -0,0 +1,44 @@ +/** + * 하수도 통계 관리 > 00. 통계 입력 현황 + * 단일 Tab + */ +export const StatsInputSatusMngColumn = { + columns: [ + { name: 'sido', fieldName: '시도', header: { text: '시도' } }, + { name: 'sgg', fieldName: '구군', header: { text: '구군' } }, + { name: 'menu_nm', fieldName: '구분', header: { text: '구분' } }, + { name: 'locg_status_nm', fieldName: '진행상황', header: { text: '진행상황' } }, + { name: 'locg_status', fieldName: '작성률', header: { text: '작성률' } }, + { name: 'locg_charger', fieldName: '작성자', header: { text: '작성자' } }, + { name: 'locg_cttpc', fieldName: '작성자연락처', header: { text: '작성자연락처' } }, + { name: 'locg_dept', fieldName: '부서', header: { text: '부서' } }, + { name: 'locg_job', fieldName: '직제', header: { text: '직제' } }, + { name: 'locg_cnfirm_nm', fieldName: '승인자', header: { text: '승인자' } }, + { name: 'locg_cnfirm_dept', fieldName: '부서', header: { text: '부서' } }, + { name: 'locg_cnfirm_job', fieldName: '직제', header: { text: '직제' } }, + { name: 'return_opinion_sm', fieldName: '반려사유', header: { text: '반려사유' } }, + ], + + columnLayout: [ + 'sido', + 'sgg', + 'menu_nm', + { + name: 'groupA', + hideChildHeaders: false, + header: { text: '하수도사업자' }, + items: [ + 'locg_status_nm', + 'locg_status', + 'locg_charger', + 'locg_cttpc', + 'locg_dept', + 'locg_job', + 'locg_cnfirm_nm', + 'locg_cnfirm_dept', + 'locg_cnfirm_job', + 'return_opinion_sm' + ], + }, + ] +}; \ No newline at end of file diff --git a/apps/st/src/components/util/column/management/sewagePipe/ConnectionStatus.ts b/apps/st/src/components/util/column/management/sewagePipe/ConnectionStatusMngColumn.ts similarity index 91% rename from apps/st/src/components/util/column/management/sewagePipe/ConnectionStatus.ts rename to apps/st/src/components/util/column/management/sewagePipe/ConnectionStatusMngColumn.ts index 080fdf083..d0831fcd7 100644 --- a/apps/st/src/components/util/column/management/sewagePipe/ConnectionStatus.ts +++ b/apps/st/src/components/util/column/management/sewagePipe/ConnectionStatusMngColumn.ts @@ -1,7 +1,7 @@ // 하수도 통계 관리 > 02.하수관로 > tab 6. 시설별 현황관리 // Tab 6-1: 행정구역별 연결 현황 (우측 그리드) -export const AdminAreaConnectionColumn = { +export const AdminAreaConnectionMngColumn = { columns: [ // 행정구역 { name: 'sido', fieldName: '시도', header: { text: '시도' } }, @@ -26,12 +26,12 @@ export const AdminAreaConnectionColumn = { ], rowStartNum: 2, fixedColumns: 1, - tabKey: 'administrativeAreaConnection', + tabKey: 'adminAreaConnectionMng', tabLabel: '행정구역별 연결 현황' }; // Tab 6-2: 하수처리장별 연결 현황 (좌측 그리드) -export const TreatmentPlantConnectionColumn = { +export const TreatmentPlantConnectionMngColumn = { columns: [ // 하수처리장 정보 { name: 'bscFctNm', fieldName: '하수처리장명', header: { text: '하수처리장명' } }, @@ -53,6 +53,6 @@ export const TreatmentPlantConnectionColumn = { ], rowStartNum: 1, fixedColumns: 1, - tabKey: 'treatmentPlantConnection', + tabKey: 'treatmentPlantConnectionMng', tabLabel: '하수처리장별 연결 현황' }; \ No newline at end of file diff --git a/apps/st/src/components/util/column/management/sewagePipe/FacilityInstall.ts b/apps/st/src/components/util/column/management/sewagePipe/FacilityInstallStatusMngColumn.ts similarity index 98% rename from apps/st/src/components/util/column/management/sewagePipe/FacilityInstall.ts rename to apps/st/src/components/util/column/management/sewagePipe/FacilityInstallStatusMngColumn.ts index acd3d621f..2da9e41cd 100644 --- a/apps/st/src/components/util/column/management/sewagePipe/FacilityInstall.ts +++ b/apps/st/src/components/util/column/management/sewagePipe/FacilityInstallStatusMngColumn.ts @@ -2,7 +2,7 @@ import { footerInt, footerDecimal2, footerDecimal3 } from "@/components/util/gri // 하수도 통계 관리 > 02.하수관로 > tab 2. 시설별 설치현황 -export const FacilityInstallColumn = { +export const FacilityInstallStatusMngColumn = { columns: [ // 행정구역 { name: 'sido', fieldName: '시도', header: { text: '시도' }, editable: false }, @@ -136,6 +136,6 @@ export const FacilityInstallColumn = { ], rowStartNum: 4, fixedColumns: 3, - tabKey: 'facilityInstallationStatus', + tabKey: 'facilityInstallationStatusMng', tabLabel: '시설별 설치현황' }; \ No newline at end of file diff --git a/apps/st/src/components/util/column/management/sewagePipe/ManholeStatus.ts b/apps/st/src/components/util/column/management/sewagePipe/ManholeStatusMngColumn.ts similarity index 99% rename from apps/st/src/components/util/column/management/sewagePipe/ManholeStatus.ts rename to apps/st/src/components/util/column/management/sewagePipe/ManholeStatusMngColumn.ts index fbff6c372..972e07ad7 100644 --- a/apps/st/src/components/util/column/management/sewagePipe/ManholeStatus.ts +++ b/apps/st/src/components/util/column/management/sewagePipe/ManholeStatusMngColumn.ts @@ -2,7 +2,7 @@ import { footerInt } from "@/components/util/grid/footerSummary"; // 하수도 통계 관리 > 02.하수관로 > tab 5. 맨홀 현황 -export const ManholeStatusColumn = { +export const ManholeStatusMngColumn = { columns: [ // 행정구역 { name: 'a1', fieldName: '시도', header: { text: '시도' }, editable: false }, @@ -325,6 +325,6 @@ export const ManholeStatusColumn = { ], rowStartNum: 3, fixedColumns: 2, - tabKey: 'manholeStatus', + tabKey: 'manholeStatusMng', tabLabel: '맨홀 현황' }; \ No newline at end of file diff --git a/apps/st/src/components/util/column/management/sewagePipe/PipeDiameterStatus.ts b/apps/st/src/components/util/column/management/sewagePipe/PipeDiameterStatusMngColumn.ts similarity index 96% rename from apps/st/src/components/util/column/management/sewagePipe/PipeDiameterStatus.ts rename to apps/st/src/components/util/column/management/sewagePipe/PipeDiameterStatusMngColumn.ts index 5811e46e9..61849f1ce 100644 --- a/apps/st/src/components/util/column/management/sewagePipe/PipeDiameterStatus.ts +++ b/apps/st/src/components/util/column/management/sewagePipe/PipeDiameterStatusMngColumn.ts @@ -2,7 +2,7 @@ import { footerDecimal2 } from "@/components/util/grid/footerSummary"; // 하수도 통계 관리 > 02.하수관로 > tab 4. 관경별 현황 -export const PipeDiameterColumn = { +export const PipeDiameterStatusMngColumn = { columns: [ // 행정구역 { name: 'sido', fieldName: '시도', header: { text: '시도' }, editable: false }, @@ -57,6 +57,6 @@ export const PipeDiameterColumn = { ], rowStartNum: 2, fixedColumns: 1, - tabKey: 'pipeDiameterStatus', + tabKey: 'pipeDiameterStatusMng', tabLabel: '관경별 현황' }; \ No newline at end of file diff --git a/apps/st/src/components/util/column/management/sewagePipe/PipeTypeStatus.ts b/apps/st/src/components/util/column/management/sewagePipe/PipeTypeStatusMngColumn.ts similarity index 99% rename from apps/st/src/components/util/column/management/sewagePipe/PipeTypeStatus.ts rename to apps/st/src/components/util/column/management/sewagePipe/PipeTypeStatusMngColumn.ts index 81b94afe6..d2bf635e9 100644 --- a/apps/st/src/components/util/column/management/sewagePipe/PipeTypeStatus.ts +++ b/apps/st/src/components/util/column/management/sewagePipe/PipeTypeStatusMngColumn.ts @@ -2,7 +2,7 @@ import { footerDecimal2 } from "@/components/util/grid/footerSummary"; // 하수도 통계 관리 > 02.하수관로 > tab 3. 관종별 현황 -export const PipeTypeColumn = { +export const PipeTypeStatusMngColumn = { columns: [ // 행정구역 { name: 'sido', fieldName: '시도', header: { text: '시도' }, editable: false }, @@ -371,6 +371,6 @@ export const PipeTypeColumn = { ], rowStartNum: 2, fixedColumns: 2, - tabKey: 'pipeTypeStatus', + tabKey: 'pipeTypeStatusMng', tabLabel: '관종별 현황' }; \ No newline at end of file diff --git a/apps/st/src/components/util/column/management/sewagePipe/RegionalFacility.ts b/apps/st/src/components/util/column/management/sewagePipe/RegionalFacilityStatusMngColumn.ts similarity index 98% rename from apps/st/src/components/util/column/management/sewagePipe/RegionalFacility.ts rename to apps/st/src/components/util/column/management/sewagePipe/RegionalFacilityStatusMngColumn.ts index fef239bec..633c89d21 100644 --- a/apps/st/src/components/util/column/management/sewagePipe/RegionalFacility.ts +++ b/apps/st/src/components/util/column/management/sewagePipe/RegionalFacilityStatusMngColumn.ts @@ -2,7 +2,7 @@ import { footerInt, footerDecimal1, footerDecimal2, footerDecimal3 } from "@/com // 하수도 통계 관리 > 02.하수관로 > tab 1. 지역별 시설현황 -export const RegionalFacilityColumn = { +export const RegionalFacilityStatusMngColumn = { columns: [ // 행정구역 { name: 'sido', fieldName: '시도', header: { text: '시도' }, editable: false }, @@ -153,6 +153,6 @@ export const RegionalFacilityColumn = { ], rowStartNum: 4, fixedColumns: 1, - tabKey: 'regionalFacilityStatus', + tabKey: 'regionalFacilityStatusMng', tabLabel: '지역별 시설현황' }; \ No newline at end of file diff --git a/apps/st/src/components/util/column/management/sewagePipeMaintain/PipeDredgingStatus.ts b/apps/st/src/components/util/column/management/sewagePipeMaintain/PipeDredgingStatusMngColumn.ts similarity index 98% rename from apps/st/src/components/util/column/management/sewagePipeMaintain/PipeDredgingStatus.ts rename to apps/st/src/components/util/column/management/sewagePipeMaintain/PipeDredgingStatusMngColumn.ts index 23ffaf95b..3685f1635 100644 --- a/apps/st/src/components/util/column/management/sewagePipeMaintain/PipeDredgingStatus.ts +++ b/apps/st/src/components/util/column/management/sewagePipeMaintain/PipeDredgingStatusMngColumn.ts @@ -1,7 +1,7 @@ import { footerInt, footerDecimal1, footerDecimal2 } from "@/components/util/grid/footerSummary"; // 하수도 통계 관리 > 03.하수관로 유지관리 > tab 2. 관로준설 -export const PipeDredgingStatusColumn = { +export const PipeDredgingStatusMngColumn = { columns: [ // 행정구역 { name: 'SIDO', fieldName: '시도', header: { text: '시도' }, editable: false }, @@ -72,6 +72,6 @@ export const PipeDredgingStatusColumn = { ], rowStartNum: 4, fixedColumns: 1, - tabKey: 'pipeDredgingStatus', + tabKey: 'pipeDredgingStatusMng', tabLabel: '관로준설' }; \ No newline at end of file diff --git a/apps/st/src/components/util/column/management/sewagePipeMaintain/RepairStatus.ts b/apps/st/src/components/util/column/management/sewagePipeMaintain/RepairStatusMngColumn.ts similarity index 98% rename from apps/st/src/components/util/column/management/sewagePipeMaintain/RepairStatus.ts rename to apps/st/src/components/util/column/management/sewagePipeMaintain/RepairStatusMngColumn.ts index 195b1ae4b..9851a6270 100644 --- a/apps/st/src/components/util/column/management/sewagePipeMaintain/RepairStatus.ts +++ b/apps/st/src/components/util/column/management/sewagePipeMaintain/RepairStatusMngColumn.ts @@ -1,7 +1,7 @@ import { footerInt, footerDecimal1 } from "@/components/util/grid/footerSummary"; // 하수도 통계 관리 > 03.하수관로 유지관리 > tab 1. 개보수 -export const RepairStatusColumn = { +export const RepairStatusMngColumn = { columns: [ // 행정구역 { name: 'SIDO', fieldName: '시도', header: { text: '시도' }, editable: false }, @@ -103,6 +103,6 @@ export const RepairStatusColumn = { ], rowStartNum: 4, fixedColumns: 1, - tabKey: 'repairStatus', + tabKey: 'repairStatusMng', tabLabel: '개보수' }; \ No newline at end of file diff --git a/apps/st/src/components/util/column/management/sewageReservoirPump/RainfallPumpStationMngColumn.ts b/apps/st/src/components/util/column/management/sewageReservoirPump/RainfallPumpStationMngColumn.ts new file mode 100644 index 000000000..cf70ecfcf --- /dev/null +++ b/apps/st/src/components/util/column/management/sewageReservoirPump/RainfallPumpStationMngColumn.ts @@ -0,0 +1,211 @@ +import { footerInt, footerDecimal1 } from "@/components/util/grid/footerSummary"; + + // 하수도 통계 관리 > 04.하수저류시설 및 빗물펌프장 > tab 2: 빗물펌프장 +export const RainfallPumpStationMngColumn = { + columns: [ + // Hidden Columns : 시스템 관리를 위한 필수 키값 + { name: 'sidoCd', fieldName: '시도코드', header: { text: '시도코드' }, hidden: true }, + { name: 'adstDstrCd', fieldName: '행정구역코드', header: { text: '행정구역코드' }, hidden: true }, + { name: 'adstCd', fieldName: '행정코드', header: { text: '행정코드' }, hidden: true }, + { name: 'swgeStrgeFctSeq', fieldName: '시설SEQ', header: { text: '시설SEQ' }, hidden: true }, + + { name: 'yr', fieldName: '년도', header: { text: '년도' }, hidden: true }, + { name: 'odr', fieldName: '차수', header: { text: '차수' }, hidden: true }, + { name: 'bsnmCd', fieldName: '사업자코드', header: { text: '사업자코드' }, hidden: true }, + + // Visible Columns + // 행정구역 + { name: 'sido', fieldName: '시도', header: { text: '시도' }, editable: false }, + { name: 'gugun', fieldName: '시군구', header: { text: '시군구' }, footer: { text: '합계' }, editable: false }, + + // 시설명 + { name: 'swgeStrgeNm', fieldName: '시설명', header: { text: '시설명' } }, + + // 위치 + { name: 'addr', fieldName: '위치', header: { text: '위치' } }, + + // 시설물종류 + { name: 'facRes', fieldName: '시설물종류', header: { text: '시설물종류' } }, + + // 가동개시 년월일 yyyy-mm-dd + { name: 'rnDt', fieldName: '가동개시 년월일 yyyy-mm-dd', header: { text: '가동개시 년월일 yyyy-mm-dd' } }, + + // 계획설계빈도 + { name: 'plDsgnFrqnc', fieldName: '계획설계빈도', header: { text: '계획설계빈도' } }, + + // 집수구역면적(㎢) + { name: 'dgrAr', fieldName: '집수구역면적(㎢)', header: { text: '집수구역면적(㎢)' }, footer: footerDecimal1 }, + + // 유수지 + { name: 'revFnnc', fieldName: '유수지유무(유,무)', header: { text: '유수지유무(유,무)' } }, + { name: 'revCpcty', fieldName: '저류랑(m³)', header: { text: '저류랑(m³)' }, footer: footerDecimal1 }, + + // 흡수정 + { name: 'absCpcty', fieldName: '저류랑(m³)', header: { text: '저류랑(m³)' }, footer: footerDecimal1 }, + + // 펌프시설 - 총양수량(m³/min) + { name: 'wpCpcty', fieldName: '총양수량(m³/min)', header: { text: '총양수량(m³/min)' }, footer: footerDecimal1 }, + + // 펌프시설1 + { name: 'pumpCalbr', fieldName: '구경(mm)', header: { text: '구경(mm)' } }, + { name: 'pumpHpCo', fieldName: '대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' }, footer: footerDecimal1 }, + { name: 'pumpCo', fieldName: '펌프대수', header: { text: '펌프대수' }, footer: footerInt }, + { name: 'pumpPreparCo', fieldName: '예비펌프대수', header: { text: '예비펌프대수' }, footer: footerInt }, + + // 펌프시설2 + { name: 'pumpCalbr2', fieldName: '구경(mm)', header: { text: '구경(mm)' } }, + { name: 'pumpHpCo2', fieldName: '대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' }, footer: footerDecimal1 }, + { name: 'pumpCo2', fieldName: '펌프대수', header: { text: '펌프대수' }, footer: footerInt }, + { name: 'pumpPreparCo2', fieldName: '예비펌프대수', header: { text: '예비펌프대수' }, footer: footerInt }, + + // 펌프시설3 + { name: 'pumpCalbr3', fieldName: '구경(mm)', header: { text: '구경(mm)' } }, + { name: 'pumpHpCo3', fieldName: '대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' }, footer: footerDecimal1 }, + { name: 'pumpCo3', fieldName: '펌프대수', header: { text: '펌프대수' }, footer: footerInt }, + { name: 'pumpPreparCo3', fieldName: '예비펌프대수', header: { text: '예비펌프대수' }, footer: footerInt }, + + // 부대시설 + { name: 'dorZeqpFnnc', fieldName: '전처리시설유무(유/무)', header: { text: '전처리시설유무(유/무)' } }, + { name: 'selfEtrqFnnc', fieldName: '탈취설비유무(유/무)', header: { text: '탈취설비유무(유/무)' } }, + { name: 'freFnnc', fieldName: '자가발전유무(유/무)', header: { text: '자가발전유무(유/무)' } }, + + // 방류수역 + { name: 'disWat', fieldName: '방류수역', header: { text: '방류수역' } }, + + // 최종처분량(ton/년) + { name: 'sdmtTreCpcty', fieldName: '침사', header: { text: '침사' }, footer: footerInt }, + { name: 'iprtTreCpcty', fieldName: '협잡물', header: { text: '협잡물' }, footer: footerInt }, + + // 최종처분방법 + { name: 'sdmtTreMth', fieldName: '침사', header: { text: '침사' } }, + { name: 'iprtTreMth', fieldName: '협잡물', header: { text: '협잡물' } }, + + // 운영실적 + { name: 'yrstpRnDyn', fieldName: '기동일수(일/년)', header: { text: '기동일수(일/년)' } }, + { name: 'dsplcmntAmnt', fieldName: '총배수량(m³/년)', header: { text: '총배수량(m³/년)' }, footer: footerInt }, + + // 비고 + { name: 'rmk', fieldName: '비고', header: { text: '비고' } }, + { name: 'chckerOpinion', fieldName: '검토자의견', header: { text: '검토자의견' } }, + { name: 'wrterOpinion', fieldName: '사용자의견', header: { text: '사용자의견' } }, + ], + + columnLayout: [ + { + name: 'adminArea', + hideChildHeaders: false, + header: { text: '행정구역' }, + items: ['sido', 'gugun'], + }, + 'swgeStrgeNm', + 'addr', + 'facRes', + 'rnDt', + 'plDsgnFrqnc', + 'dgrAr', + { + name: 'reservoir', + hideChildHeaders: false, + header: { text: '유수지' }, + items: [ + 'revFnnc', + 'revCpcty', + ], + }, + { + name: 'absorptionWell', + hideChildHeaders: false, + header: { text: '흡수정' }, + items: [ + 'absCpcty', + ], + }, + { + name: 'pumpSystem', + hideChildHeaders: false, + header: { text: '펌프시설' }, + items: [ + 'wpCpcty', + { + name: 'pumpSystem1', + hideChildHeaders: false, + header: { text: '펌프시설1' }, + items: [ + 'pumpCalbr', + 'pumpHpCo', + 'pumpCo', + 'pumpPreparCo', + ], + }, + { + name: 'pumpSystem2', + hideChildHeaders: false, + header: { text: '펌프시설2' }, + items: [ + 'pumpCalbr2', + 'pumpHpCo2', + 'pumpCo2', + 'pumpPreparCo2', + ], + }, + { + name: 'pumpSystem3', + hideChildHeaders: false, + header: { text: '펌프시설3' }, + items: [ + 'pumpCalbr3', + 'pumpHpCo3', + 'pumpCo3', + 'pumpPreparCo3', + ], + }, + ], + }, + { + name: 'auxiliaryFacilities', + hideChildHeaders: false, + header: { text: '부대시설' }, + items: [ + 'dorZeqpFnnc', + 'selfEtrqFnnc', + 'freFnnc', + ], + }, + 'disWat', + { + name: 'finalDisposalAmount', + hideChildHeaders: false, + header: { text: '최종처분량(ton/년)' }, + items: [ + 'sdmtTreCpcty', + 'iprtTreCpcty', + ], + }, + { + name: 'finalDisposalMethod', + hideChildHeaders: false, + header: { text: '최종처분방법' }, + items: [ + 'sdmtTreMth', + 'iprtTreMth', + ], + }, + { + name: 'operationResults', + hideChildHeaders: false, + header: { text: '운영실적' }, + items: [ + 'yrstpRnDyn', + 'dsplcmntAmnt', + ], + }, + 'rmk', + 'chckerOpinion', + 'wrterOpinion', + ], + + rowStartNum: 3, + fixedColumns: 2, + tabKey: 'rainfallPumpStationMng', + tabLabel: '빗물펌프장', +}; \ No newline at end of file diff --git a/apps/st/src/components/util/column/management/sewageReservoirPump/SewageReservoirMngColumn.ts b/apps/st/src/components/util/column/management/sewageReservoirPump/SewageReservoirMngColumn.ts new file mode 100644 index 000000000..4d21629db --- /dev/null +++ b/apps/st/src/components/util/column/management/sewageReservoirPump/SewageReservoirMngColumn.ts @@ -0,0 +1,203 @@ +import { footerInt, footerDecimal1 } from "@/components/util/grid/footerSummary"; + + // 하수도 통계 관리 > 04.하수저류시설 및 빗물펌프장 > tab 1: 하수저류시설 +export const SewageReservoirMngColumn = { + columns: [ + // Hidden Columns : 시스템 관리를 위한 필수 키값 + { name: 'sidoCd', fieldName: '시도코드', header: { text: '시도코드' }, hidden: true }, + { name: 'adstDstrCd', fieldName: '행정구역코드', header: { text: '행정구역코드' }, hidden: true }, + { name: 'adstCd', fieldName: '행정코드', header: { text: '행정코드' }, hidden: true }, + { name: 'swgeStrgeFctSeq', fieldName: '시설SEQ', header: { text: '시설SEQ' }, hidden: true }, + // 필요 시 yr, odr 등 추가 가능 + + // Visible Columns + // 행정구역 + { name: 'sido', fieldName: '시도', header: { text: '시도' }, editable: false }, + { name: 'gugun', fieldName: '시군구', header: { text: '시군구' }, editable: false }, + + // 기본 정보 + { name: 'swgeStrgeNm', fieldName: '시설명', header: { text: '시설명' }, footer: { text: '합계' } }, + { name: 'addr', fieldName: '위치', header: { text: '위치' } }, + { name: 'rnDt', fieldName: '가동개시 년월일 yyyy-mm-dd', header: { text: '가동개시 년월일 yyyy-mm-dd' } }, + { name: 'designFrequency', fieldName: '계획설계빈도', header: { text: '계획설계빈도' } }, + + // 설치목적 + { name: 'floodingPrevention', fieldName: '침수예방', header: { text: '침수예방' } }, + { name: 'waterQualityReduction', fieldName: '수질오염저감', header: { text: '수질오염저감' } }, + { name: 'sewerageReuseUse', fieldName: '하수재이용용도', header: { text: '하수재이용용도' } }, + + // 시설 상세 + { name: 'facilityStructure', fieldName: '시설구조(일반지하식,지하터널식,기타)', header: { text: '시설구조(일반지하식,지하터널식,기타)' } }, + { name: 'catchmentAreaSize', fieldName: '집수구역면적(㎢)', header: { text: '집수구역면적(㎢)' }, footer: footerDecimal1 }, + { name: 'facilityCapacity', fieldName: '시설용량(m³)', header: { text: '시설용량(m³)' }, footer: footerDecimal1 }, + + // 펌프시설 - 총괄 + { name: 'totalPumpingCapacity', fieldName: '총양수량(m³/min)', header: { text: '총양수량(m³/min)' }, editable: false, footer: footerDecimal1 }, + + // 펌프시설 1 + { name: 'pump1Diameter', fieldName: '구경(mm)', header: { text: '구경(mm)' } }, + { name: 'pump1PumpingCapacity', fieldName: '대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' }, footer: footerDecimal1 }, + { name: 'pump1Count', fieldName: '펌프대수', header: { text: '펌프대수' }, footer: footerInt }, + { name: 'pump1StandbyCount', fieldName: '예비펌프대수', header: { text: '예비펌프대수' }, footer: footerInt }, + + // 펌프시설 2 + { name: 'pump2Diameter', fieldName: '구경(mm)', header: { text: '구경(mm)' } }, + { name: 'pump2PumpingCapacity', fieldName: '대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' }, footer: footerDecimal1 }, + { name: 'pump2Count', fieldName: '펌프대수', header: { text: '펌프대수' }, footer: footerInt }, + { name: 'pump2StandbyCount', fieldName: '예비펌프대수', header: { text: '예비펌프대수' }, footer: footerInt }, + + // 펌프시설 3 + { name: 'pump3Diameter', fieldName: '구경(mm)', header: { text: '구경(mm)' } }, + { name: 'pump3PumpingCapacity', fieldName: '대당 양수량(m³/min·대)', header: { text: '대당 양수량(m³/min·대)' }, footer: footerDecimal1 }, + { name: 'pump3Count', fieldName: '펌프대수', header: { text: '펌프대수' }, footer: footerInt }, + { name: 'pump3StandbyCount', fieldName: '예비펌프대수', header: { text: '예비펌프대수' }, footer: footerInt }, + + // 부대시설 + { name: 'preprocessingFacility', fieldName: '전처리시설유무(유/무)', header: { text: '전처리시설유무(유/무)' } }, + { name: 'odorRemovalEquipment', fieldName: '탈취설비유무(유/무)', header: { text: '탈취설비유무(유/무)' } }, + { name: 'selfGenerationEquipment', fieldName: '자가발전유무(유/무)', header: { text: '자가발전유무(유/무)' } }, + + // 방식 및 방류수역 + { name: 'drainageMethod', fieldName: '배수방식(자연배수,강제배수)', header: { text: '배수방식(자연배수,강제배수)' } }, + { name: 'storageMethod', fieldName: '저류방식(직렬,병렬)', header: { text: '저류방식(직렬,병렬)' } }, + { name: 'storageWaterTreatmentMethod', fieldName: '저류수처리방법(자체처리,연계처리)', header: { text: '저류수처리방법(자체처리,연계처리)' } }, + { name: 'dischargeDestination', fieldName: '방류수역(또는 연계처리장명)', header: { text: '방류수역(또는 연계처리장명)' } }, + + // 최종처분량 + { name: 'sedimentDisposalAmount', fieldName: '침사', header: { text: '침사' }, footer: footerInt }, + { name: 'debrisDisposalAmount', fieldName: '협잡물', header: { text: '협잡물' }, footer: footerInt }, + + // 최종처분방법 + { name: 'sedimentDisposalMethod', fieldName: '침사', header: { text: '침사' } }, + { name: 'debrisDisposalMethod', fieldName: '협잡물', header: { text: '협잡물' } }, + + // 운영실적 + { name: 'operationDaysPerYear', fieldName: '기동일수(일/년)', header: { text: '기동일수(일/년)' } }, + { name: 'totalDischargePerYear', fieldName: '총배수량(m³/년)', header: { text: '총배수량(m³/년)' }, footer: footerInt }, + + // 비고 + { name: 'remarks', fieldName: '비고', header: { text: '비고' } }, + ], + + columnLayout: [ + { + name: 'adminArea', + hideChildHeaders: false, + header: { text: '행정구역' }, + items: ['sido', 'gugun'], + }, + 'swgeStrgeNm', + 'addr', + 'rnDt', + 'designFrequency', + + { + name: 'installationPurpose', + hideChildHeaders: false, + header: { text: '설치목적(O,X로 표기, 중복체크가능)' }, + items: [ + 'floodingPrevention', + 'waterQualityReduction', + 'sewerageReuseUse', + ], + }, + 'facilityStructure', + 'catchmentAreaSize', + 'facilityCapacity', + + { + name: 'pumpSystem', + hideChildHeaders: false, + header: { text: '펌프시설' }, + items: [ + 'totalPumpingCapacity', + { + name: 'pumpSystem1', + hideChildHeaders: false, + header: { text: '펌프시설1' }, + items: [ + 'pump1Diameter', + 'pump1PumpingCapacity', + 'pump1Count', + 'pump1StandbyCount', + ], + }, + + { + name: 'pumpSystem2', + hideChildHeaders: false, + header: { text: '펌프시설2' }, + items: [ + 'pump2Diameter', + 'pump2PumpingCapacity', + 'pump2Count', + 'pump2StandbyCount', + ], + }, + + { + name: 'pumpSystem3', + hideChildHeaders: false, + header: { text: '펌프시설3' }, + items: [ + 'pump3Diameter', + 'pump3PumpingCapacity', + 'pump3Count', + 'pump3StandbyCount', + ], + }, + ], + }, + + { + name: 'auxiliaryFacilities', + hideChildHeaders: false, + header: { text: '부대시설' }, + items: [ + 'preprocessingFacility', + 'odorRemovalEquipment', + 'selfGenerationEquipment', + ], + }, + 'drainageMethod', + 'storageMethod', + 'storageWaterTreatmentMethod', + 'dischargeDestination', + + { + name: 'finalDisposalAmount', + hideChildHeaders: false, + header: { text: '최종처분량(ton/년)' }, + items: [ + 'sedimentDisposalAmount', + 'debrisDisposalAmount', + ], + }, + + { + name: 'finalDisposalMethod', + hideChildHeaders: false, + header: { text: '최종처분방법' }, + items: [ + 'sedimentDisposalMethod', + 'debrisDisposalMethod', + ], + }, + + { + name: 'operationResults', + hideChildHeaders: false, + header: { text: '운영실적' }, + items: [ + 'operationDaysPerYear', + 'totalDischargePerYear', + ], + }, + 'remarks', + ], + + rowStartNum: 3, + fixedColumns: 2, + tabKey: 'sewageReservoirMng', + tabLabel: '하수저류시설', +}; \ No newline at end of file