From 3d7fc84a2e5fc79d0630fb6efda7cd4a21c53f26 Mon Sep 17 00:00:00 2001 From: yangsein Date: Tue, 23 Dec 2025 17:51:24 +0900 Subject: [PATCH] =?UTF-8?q?[feat]=EB=B6=84=EB=87=A8=EC=B2=98=EB=A6=AC?= =?UTF-8?q?=EC=8B=9C=EC=84=A4=20=ED=99=94=EB=A9=B4=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../review/ExcretaTreatmentFacilityRvw.tsx | 144 ++++++++++++++++++ 1 file changed, 144 insertions(+) create mode 100644 apps/st/src/components/statistics/review/ExcretaTreatmentFacilityRvw.tsx diff --git a/apps/st/src/components/statistics/review/ExcretaTreatmentFacilityRvw.tsx b/apps/st/src/components/statistics/review/ExcretaTreatmentFacilityRvw.tsx new file mode 100644 index 000000000..585bfade7 --- /dev/null +++ b/apps/st/src/components/statistics/review/ExcretaTreatmentFacilityRvw.tsx @@ -0,0 +1,144 @@ +import SearchForm from "@/components/module/SearchForm"; +import DataGrid from "@/components/module/DataGrid"; +import SaveButton from "@/components/button/SaveButton"; +import ApproveButton from "@/components/button/ApproveButton"; +import ReviewOpinionButton from "@/components/button/ReviewOpinionButton"; +import ReturnButton from "@/components/button/ReturnButton"; + + +const ExcretaTreatmentFacilityRvw = () => { + const columns = [ + // 행정구역 + { name: 'sido', fieldName: '시도', header: { text: '시도' } }, + { name: 'sgg', fieldName: '구군', header: { text: '구군' } }, + + // 기본 정보 + { name: '시설명', fieldName: '시설명', header: { text: '시설명' } }, + { name: '구분', fieldName: '구분', header: { text: '구분' } }, + { name: '소재지', fieldName: '소재지', header: { text: '소재지' } }, + { name: '전화번호', fieldName: '전화번호', header: { text: '전화번호' } }, + { name: '준공일', fieldName: '준공일', header: { text: '준공일' } }, + { name: '가동개시일', fieldName: '가동개시일', header: { text: '가동개시일' } }, + { name: '사업비(백만원)', fieldName: '사업비(백만원)', header: { text: '사업비(백만원)' } }, + { name: '시설용량(m3/일)', fieldName: '시설용량(m3/일)', header: { text: '시설용량(m3/일)' } }, + { name: '처리량(m3/일)', fieldName: '처리량(m3/일)', header: { text: '처리량(m3/일)' } }, + { name: '가동일수(일/년)', fieldName: '가동일수(일/년)', header: { text: '가동일수(일/년)' } }, + + // 처리 + { name: '처리공법', fieldName: '처리공법', header: { text: '처리공법' } }, + { name: '연계처리장명', fieldName: '연계처리장명', header: { text: '연계처리장명' } }, + { name: '연계처리량', fieldName: '연계처리량', header: { text: '연계처리량' } }, + + // 유입수질 + { name: 'BOD', fieldName: 'BOD', header: { text: 'BOD' } }, + { name: 'TOC', fieldName: 'TOC', header: { text: 'TOC' } }, + { name: 'SS', fieldName: 'SS', header: { text: 'SS' } }, + { name: 'T-N', fieldName: 'T-N', header: { text: 'T-N' } }, + { name: 'T-P', fieldName: 'T-P', header: { text: 'T-P' } }, + { name: '대장균군수', fieldName: '대장균군수', header: { text: '대장균군수' } }, + + // 방류수질 + { name: '방류수질BOD', fieldName: '방류수질BOD', header: { text: 'BOD' } }, + { name: '방류수질TOC', fieldName: '방류수질TOC', header: { text: 'TOC' } }, + { name: '방류수질SS', fieldName: '방류수질SS', header: { text: 'SS' } }, + { name: '방류수질T-N', fieldName: '방류수질T-N', header: { text: 'T-N' } }, + { name: '방류수질T-P', fieldName: '방류수질T-P', header: { text: 'T-P' } }, + { name: '방류수질대장균군수', fieldName: '방류수질대장균군수', header: { text: '방류수질대장균군수' } }, + + // 방류수역 + { name: '수계', fieldName: '수계', header: { text: '수계' } }, + { name: '지류', fieldName: '지류', header: { text: '지류' } }, + { name: '중권역', fieldName: '중권역', header: { text: '중권역' } }, + { name: '소권역', fieldName: '소권역', header: { text: '소권역' } }, + + // 운영 + { name: '운영주체(자체/공기업,민간위탁)', fieldName: '운영주체(자체/공기업,민간위탁)', header: { text: '운영주체(자체/공기업,민간위탁)' } }, + { name: '직원총수(명)', fieldName: '직원총수(명)', header: { text: '직원총수(명)' } }, + { name: '안전사고건수(건,인/년)', fieldName: '안전사고건수(건,인/년)', header: { text: '안전사고건수(건,인/년)' } }, + { name: 'rmk', fieldName: '비고', header: { text: '비고' } }, + ]; + + + + const columnLayout = [ + { + name: 'groupA', + hideChildHeaders: false, + header: { text: '행정구역' }, + items: ['sido', 'sgg'], + }, + '시설명', + '구분', + '소재지', + '전화번호', + '준공일', + '가동개시일', + '사업비(백만원)', + '시설용량(m3/일)', + '처리량(m3/일)', + '가동일수(일/년)', + '처리공법', + '연계처리장명', + '연계처리량', + { + name: 'groupB', + hideChildHeaders: false, + header: { text: '유입수질(mg/L,개/mL)' }, + items: ['BOD','TOC','SS','T-N','T-P','대장균군수'], + }, + + { + name: 'groupC', + hideChildHeaders: false, + header: { text: '방류수질(mg/L,개/mL))' }, + items: ['방류수질BOD','방류수질TOC','방류수질SS','방류수질T-N','방류수질T-P','방류수질대장균군수'], + }, + + { + name: 'groupD', + hideChildHeaders: false, + header: { text: '방류수역' }, + items: ['수계','지류','중권역','소권역'], + }, + '운영주체(자체/공기업,민간위탁)', + '직원총수(명)', + '안전사고건수(건,인/년)', + 'rmk' + ]; + + const approveFunc = () => { + console.log('approveFunc'); + // 승인 로직 + }; + + const saveFunc = () => { + console.log('submit'); + // 저장 로직 + }; + + const reviewOpinionFunc = () => { + console.log('reviewOpinionFunc'); + // 검토의견 작성 + }; + + const returnFunc = () => { + console.log('returnFunc'); + // 반려 + }; + + return ( + <> + +
+ + + + + +
+ + + ); +}; + +export default ExcretaTreatmentFacilityRvw; \ No newline at end of file