diff --git a/apps/st/src/components/statistics/management/ExcretaTreatmentFacilityMng.tsx b/apps/st/src/components/statistics/management/ExcretaTreatmentFacilityMng.tsx
index 4b4988240..6e683b07c 100644
--- a/apps/st/src/components/statistics/management/ExcretaTreatmentFacilityMng.tsx
+++ b/apps/st/src/components/statistics/management/ExcretaTreatmentFacilityMng.tsx
@@ -1,9 +1,143 @@
import SearchForm from "@/components/module/SearchForm";
+import DataGrid from "@/components/module/DataGrid";
+import SubmitButton from "@/components/button/SumitButton";
+import SaveButton from "@/components/button/SaveButton";
+import LastYearDataButton from "@/components/button/LastYearDataButton";
+import SubmitExceptionButton from "@/components/button/SubmitExceptionButton";
+// 하수도 통계 관리 > 07. 분뇨처리시설
const ExcretaTreatmentFacilityMng = () => {
+ const columns = [
+ // 행정구역
+ { name: 'sido', fieldName: '시도', header: { text: '시도' } },
+ { name: 'gugun', fieldName: '시군구', header: { text: '시군구' } },
+
+ // 기본 정보
+ { name: 'ecscs_nm', fieldName: '시설명', header: { text: '시설명' } },
+ { name: 'locplcs', fieldName: '소재지', header: { text: '소재지' } },
+ { name: 'telno', fieldName: '전화번호', header: { text: '전화번호' } },
+
+ // 날짜 정보
+ { name: 'comp_dt', fieldName: '준공일 yyyy-mm-dd', header: { text: '준공일 yyyy-mm-dd' } },
+ { name: 'rn_dt', fieldName: '가동개시일 yyyy-mm-dd', header: { text: '가동개시일 yyyy-mm-dd' } },
+
+ // 사업비/용량 정보
+ { name: 'wct', fieldName: '사업비', header: { text: '사업비(백만원)' } },
+ { name: 'ecscs_cpcty', fieldName: '시설용량', header: { text: '시설용량(m³/일)' } },
+ { name: 'process_cpcty', fieldName: '처리량', header: { text: '처리량(m³/일)' } },
+ { name: 'opr_daycnt', fieldName: '가동일수', header: { text: '가동일수(일/년)' } },
+
+ // 처리 공법 및 연계
+ { name: 'trt_msrc', fieldName: '처리공법', header: { text: '처리공법' } },
+ { name: 'cntc_prcplt', fieldName: '연계처리장명', header: { text: '연계처리장명' } },
+ { name: 'assct_trt_cpc', fieldName: '연계처리량', header: { text: '연계처리량(m³/일)' } },
+
+ // 유입수질 (TOC만 포함)
+ { name: 'infl_wqlt_bod', fieldName: '유입BOD', header: { text: 'BOD' } },
+ { name: 'infl_wqlt_toc', fieldName: '유입TOC', header: { text: 'TOC' } },
+ { name: 'infl_wqlt_ss', fieldName: '유입SS', header: { text: 'SS' } },
+ { name: 'infl_wqlt_tn', fieldName: '유입T-N', header: { text: 'T-N' } },
+ { name: 'infl_wqlt_tp', fieldName: '유입T-P', header: { text: 'T-P' } },
+ { name: 'infl_wqlt_clfgrpcnt', fieldName: '유입대장균군수', header: { text: '대장균군수' } },
+
+ // 방류수질 (TOC만 포함)
+ { name: 'effl_wqlt_bod', fieldName: '방류BOD', header: { text: 'BOD' } },
+ { name: 'effl_wqlt_toc', fieldName: '방류TOC', header: { text: 'TOC' } },
+ { name: 'effl_wqlt_ss', fieldName: '방류SS', header: { text: 'SS' } },
+ { name: 'effl_wqlt_tn', fieldName: '방류T-N', header: { text: 'T-N' } },
+ { name: 'effl_wqlt_tp', fieldName: '방류T-P', header: { text: 'T-P' } },
+ { name: 'effl_wqlt_clfgrpcnt', fieldName: '방류대장균군수', header: { text: '대장균군수' } },
+
+ // 방류수역
+ { name: 'rvbsn', fieldName: '수계', header: { text: '수계' } },
+ { name: 'bstrm', fieldName: '지류', header: { text: '지류' } },
+ { name: 'lgbsn', fieldName: '중권역', header: { text: '중권역' } },
+ { name: 'mdmbsn', fieldName: '소권역', header: { text: '소권역' } },
+
+ // 운영 정보
+ { name: 'oper_mth', fieldName: '운영주체(자체/공기업/민간위탁)', header: { text: '운영주체(자체/공기업/민간위탁)' } },
+ { name: 'cntc_prcplt_cpc', fieldName: '직원총수', header: { text: '직원총수(명)' } },
+ { name: 'safe_acdnt_co', fieldName: '안전사고건수', header: { text: '안전사고건수(건/인/년)' } },
+
+ // 기타
+ { name: 'rmk', fieldName: '비고', header: { text: '비고' } },
+ ];
+
+ const columnLayout = [
+ {
+ name: 'adminGroup',
+ hideChildHeaders: false,
+ header: { text: '행정구역' },
+ items: ['sido', 'gugun'],
+ },
+ 'ecscs_nm',
+ 'locplcs',
+ 'telno',
+ 'comp_dt',
+ 'rn_dt',
+ 'wct',
+ 'ecscs_cpcty',
+ 'process_cpcty',
+ 'opr_daycnt',
+ 'trt_msrc',
+ 'cntc_prcplt',
+ 'assct_trt_cpc',
+ {
+ name: 'influenceGroup',
+ hideChildHeaders: false,
+ header: { text: '유입수질(mg/L, 개/mL)' },
+ items: ['infl_wqlt_bod', 'infl_wqlt_toc', 'infl_wqlt_ss', 'infl_wqlt_tn', 'infl_wqlt_tp', 'infl_wqlt_clfgrpcnt'],
+ },
+ {
+ name: 'effluentGroup',
+ hideChildHeaders: false,
+ header: { text: '방류수질(mg/L, 개/mL)' },
+ items: ['effl_wqlt_bod', 'effl_wqlt_toc', 'effl_wqlt_ss', 'effl_wqlt_tn', 'effl_wqlt_tp', 'effl_wqlt_clfgrpcnt'],
+ },
+ {
+ name: 'dischargeGroup',
+ hideChildHeaders: false,
+ header: { text: '방류수역' },
+ items: ['rvbsn', 'bstrm', 'lgbsn', 'mdmbsn'],
+ },
+ 'oper_mth',
+ 'cntc_prcplt_cpc',
+ 'safe_acdnt_co',
+ 'rmk',
+ ];
+
+ const submitExceptionFunc = () => {
+ console.log('submit exception');
+ // 예외제출 로직
+ };
+
+ const getLastYearDataFunc = () => {
+ console.log('get last year data');
+ // 지난년도 데이터 가져오기 로직
+ };
+
+ const saveFunc = () => {
+ console.log('save');
+ // 저장 로직
+ };
+
+ const submitFunc = () => {
+ console.log('submit');
+ // 제출 로직
+ };
+
return (
<>
+
+
+
+
+
+
+
+
+
>
);
};
diff --git a/apps/st/src/components/statistics/management/PrivateSewageFacilityMng.tsx b/apps/st/src/components/statistics/management/PrivateSewageFacilityMng.tsx
index a57011038..35136c240 100644
--- a/apps/st/src/components/statistics/management/PrivateSewageFacilityMng.tsx
+++ b/apps/st/src/components/statistics/management/PrivateSewageFacilityMng.tsx
@@ -1,9 +1,49 @@
import SearchForm from "@/components/module/SearchForm";
+import TabDataGrid from "@/components/module/TabDataGrid";
+import SubmitButton from "@/components/button/SumitButton";
+import SaveButton from "@/components/button/SaveButton";
+import SubmitExceptionButton from "@/components/button/SubmitExceptionButton";
+import LastYearDataButton from "@/components/button/LastYearDataButton";
+import { PrivateSewageFacilityMngColumnInfoList } from "@/components/util/column/PrivateSewageFacilityMngColumn";
+
+// 하수도 통계 관리 > 08. 개인하수처리시설
const PrivateSewageFacilityMng = () => {
+
+ const submitFunc = () => {
+ // TODO: 제출 로직 구현
+ console.log('제출 로직 실행');
+ };
+
+ const saveFunc = () => {
+ // TODO: 저장 로직 구현
+ console.log('저장 로직 실행');
+ };
+
+ const lastYearDataFunc = () => {
+ // TODO: 지난년도 데이터 가져오기 로직 구현
+ console.log('지난년도 데이터 가져오기 로직 실행');
+ };
+
+ const submitExceptionFunc = () => {
+ // TODO: 예외 제출 로직 구현
+ console.log('예외 제출 로직 실행');
+ };
+
+
+
return (
<>
+
+
+
+
+
+
+
+
+
>
);
};
diff --git a/apps/st/src/components/statistics/management/SewageExcretaRelatedMng.tsx b/apps/st/src/components/statistics/management/SewageExcretaRelatedMng.tsx
index 4305c6344..e0d5ab6ba 100644
--- a/apps/st/src/components/statistics/management/SewageExcretaRelatedMng.tsx
+++ b/apps/st/src/components/statistics/management/SewageExcretaRelatedMng.tsx
@@ -1,5 +1,6 @@
import SearchForm from "@/components/module/SearchForm";
+// 하수도 통계 관리 > 12. 하수 및 분뇨관련산업
const SewageExcretaRelatedMng = () => {
return (
<>
diff --git a/apps/st/src/components/statistics/management/SewageExcretaSlurgeMng.tsx b/apps/st/src/components/statistics/management/SewageExcretaSlurgeMng.tsx
index ea3bd241a..fc3ac670f 100644
--- a/apps/st/src/components/statistics/management/SewageExcretaSlurgeMng.tsx
+++ b/apps/st/src/components/statistics/management/SewageExcretaSlurgeMng.tsx
@@ -1,5 +1,6 @@
import SearchForm from "@/components/module/SearchForm";
+// 하수도 통계 관리 > 11. 하수 및 분뇨찌꺼기(슬러지)처리
const SewageExcretaSlurgeMng = () => {
return (
<>
diff --git a/apps/st/src/components/statistics/management/SewerageFinanceMng.tsx b/apps/st/src/components/statistics/management/SewerageFinanceMng.tsx
index 85e35d715..99cdb26e3 100644
--- a/apps/st/src/components/statistics/management/SewerageFinanceMng.tsx
+++ b/apps/st/src/components/statistics/management/SewerageFinanceMng.tsx
@@ -1,9 +1,47 @@
import SearchForm from "@/components/module/SearchForm";
+import TabDataGrid from "@/components/module/TabDataGrid";
+import SubmitButton from "@/components/button/SumitButton";
+import SaveButton from "@/components/button/SaveButton";
+import SubmitExceptionButton from "@/components/button/SubmitExceptionButton";
+import LastYearDataButton from "@/components/button/LastYearDataButton";
+import { SewerageFinanceMngInfoList } from "@/components/util/column/SewerageFinanceMngColumn";
+
+// 하수도 통계 관리 > 09. 하수도재정
const SewerageFinanceMng = () => {
+
+ const submitFunc = () => {
+ // TODO: 제출 로직 구현
+ console.log('제출 로직 실행');
+ };
+
+ const saveFunc = () => {
+ // TODO: 저장 로직 구현
+ console.log('저장 로직 실행');
+ };
+
+ const lastYearDataFunc = () => {
+ // TODO: 지난년도 데이터 가져오기 로직 구현
+ console.log('지난년도 데이터 가져오기 로직 실행');
+ };
+
+ const submitExceptionFunc = () => {
+ // TODO: 예외 제출 로직 구현
+ console.log('예외 제출 로직 실행');
+ };
+
return (
<>
+
+
+
+
+
+
+
+
+
>
);
};
diff --git a/apps/st/src/components/statistics/management/SewerageServiceLevelMng.tsx b/apps/st/src/components/statistics/management/SewerageServiceLevelMng.tsx
index a9c2adf00..e7bdc2945 100644
--- a/apps/st/src/components/statistics/management/SewerageServiceLevelMng.tsx
+++ b/apps/st/src/components/statistics/management/SewerageServiceLevelMng.tsx
@@ -1,5 +1,6 @@
import SearchForm from "../../module/SearchForm";
+// 하수도 통계 관리 > 13. 하수도 서비스 수준
const SewerageServiceLevelMng = () => {
return (
<>
diff --git a/apps/st/src/components/statistics/management/WaterReuseMng.tsx b/apps/st/src/components/statistics/management/WaterReuseMng.tsx
index b4afc8254..222da9cd0 100644
--- a/apps/st/src/components/statistics/management/WaterReuseMng.tsx
+++ b/apps/st/src/components/statistics/management/WaterReuseMng.tsx
@@ -1,5 +1,8 @@
import SearchForm from "../../module/SearchForm";
+import { WaterReuseMngColumnInfoList } from "@/components/util/column/WaterReuseMngColumn";
+
+// 하수도 통계 관리 > 10. 물 재이용
const WaterReuseMng = () => {
return (
<>
diff --git a/apps/st/src/components/util/column/PrivateSewageFacilityMngColumn.ts b/apps/st/src/components/util/column/PrivateSewageFacilityMngColumn.ts
new file mode 100644
index 000000000..00b59ac55
--- /dev/null
+++ b/apps/st/src/components/util/column/PrivateSewageFacilityMngColumn.ts
@@ -0,0 +1,408 @@
+/**
+ * 하수도 통계 관리 > 8.개인하수처리시설
+ * 3개 Tab: 컬럼 통합 관리
+ */
+
+export const PrivateSewageFacilityMngColumnInfoList = [
+ // ========================================
+ // Tab 1: 처리용량별 오수처리시설 현황
+ // ========================================
+ {
+ columns: [
+ // 행정구역
+ { name: 'SIDO', fieldName: '시도', header: { text: '시도' } },
+ { name: 'GUGUN', fieldName: '시군구', header: { text: '시군구' } },
+
+ // 총계
+ { name: 'STTY_SM', fieldName: '총계', header: { text: '총계' } },
+
+ // 오수처리시설 - 하수처리구역 내(m³/일)
+ { name: 'STTY_ZONE_INNER_SM', fieldName: '계', header: { text: '계' } },
+ { name: 'STTY_ZONE_INNER_2', fieldName: '2이하', header: { text: '2이하' } },
+ { name: 'STTY_ZONE_INNER_3', fieldName: '3~10', header: { text: '3~10' } },
+ { name: 'STTY_ZONE_INNER_11', fieldName: '11~20', header: { text: '11~20' } },
+ { name: 'STTY_ZONE_INNER_21', fieldName: '21~50', header: { text: '21~50' } },
+ { name: 'STTY_ZONE_INNER_51', fieldName: '51~100', header: { text: '51~100' } },
+ { name: 'STTY_ZONE_INNER_101', fieldName: '101~500', header: { text: '101~500' } },
+ { name: 'STTY_ZONE_INNER_501', fieldName: '501이상', header: { text: '501이상' } },
+
+ // 오수처리시설 - 하수처리구역 외(m³/일)
+ { name: 'STTY_ZONE_OUTER_SM', fieldName: '계', header: { text: '계' } },
+ { name: 'STTY_ZONE_OUTER_2', fieldName: '2이하', header: { text: '2이하' } },
+ { name: 'STTY_ZONE_OUTER_3', fieldName: '3~10', header: { text: '3~10' } },
+ { name: 'STTY_ZONE_OUTER_11', fieldName: '11~20', header: { text: '11~20' } },
+ { name: 'STTY_ZONE_OUTER_21', fieldName: '21~50', header: { text: '21~50' } },
+ { name: 'STTY_ZONE_OUTER_51', fieldName: '51~100', header: { text: '51~100' } },
+ { name: 'STTY_ZONE_OUTER_101', fieldName: '101~500', header: { text: '101~500' } },
+ { name: 'STTY_ZONE_OUTER_501', fieldName: '501이상', header: { text: '501이상' } },
+
+ // 기타
+ { name: 'RMK', fieldName: '비고', header: { text: '비고' } },
+ { name: 'WRTER_OPINION', fieldName: '사용자의견', header: { text: '사용자의견' } },
+ { name: 'CHCKER_OPINION', fieldName: '검토자의견', header: { text: '검토자의견' } },
+
+ // 검증 필드 (검증 여부 표시용 - 빨간색 표시)
+ { name: 'CHK_STTY_SM', fieldName: 'CHK_STTY_SM', header: { text: '' } },
+ { name: 'CHK_STTY_ZONE_INNER_SM', fieldName: 'CHK_STTY_ZONE_INNER_SM', header: { text: '' } },
+ { name: 'CHK_STTY_ZONE_INNER_2', fieldName: 'CHK_STTY_ZONE_INNER_2', header: { text: '' } },
+ { name: 'CHK_STTY_ZONE_INNER_3', fieldName: 'CHK_STTY_ZONE_INNER_3', header: { text: '' } },
+ { name: 'CHK_STTY_ZONE_INNER_11', fieldName: 'CHK_STTY_ZONE_INNER_11', header: { text: '' } },
+ { name: 'CHK_STTY_ZONE_INNER_21', fieldName: 'CHK_STTY_ZONE_INNER_21', header: { text: '' } },
+ { name: 'CHK_STTY_ZONE_INNER_51', fieldName: 'CHK_STTY_ZONE_INNER_51', header: { text: '' } },
+ { name: 'CHK_STTY_ZONE_INNER_101', fieldName: 'CHK_STTY_ZONE_INNER_101', header: { text: '' } },
+ { name: 'CHK_STTY_ZONE_INNER_501', fieldName: 'CHK_STTY_ZONE_INNER_501', header: { text: '' } },
+ { name: 'CHK_STTY_ZONE_OUTER_SM', fieldName: 'CHK_STTY_ZONE_OUTER_SM', header: { text: '' } },
+ { name: 'CHK_STTY_ZONE_OUTER_2', fieldName: 'CHK_STTY_ZONE_OUTER_2', header: { text: '' } },
+ { name: 'CHK_STTY_ZONE_OUTER_3', fieldName: 'CHK_STTY_ZONE_OUTER_3', header: { text: '' } },
+ { name: 'CHK_STTY_ZONE_OUTER_11', fieldName: 'CHK_STTY_ZONE_OUTER_11', header: { text: '' } },
+ { name: 'CHK_STTY_ZONE_OUTER_21', fieldName: 'CHK_STTY_ZONE_OUTER_21', header: { text: '' } },
+ { name: 'CHK_STTY_ZONE_OUTER_51', fieldName: 'CHK_STTY_ZONE_OUTER_51', header: { text: '' } },
+ { name: 'CHK_STTY_ZONE_OUTER_101', fieldName: 'CHK_STTY_ZONE_OUTER_101', header: { text: '' } },
+ { name: 'CHK_STTY_ZONE_OUTER_501', fieldName: 'CHK_STTY_ZONE_OUTER_501', header: { text: '' } },
+ ],
+ columnLayout: [
+ {
+ name: 'group_admin',
+ header: { text: '행정구역' },
+ items: ['SIDO', 'GUGUN']
+ },
+ 'STTY_SM',
+ {
+ name: 'group_stty',
+ header: { text: '오수처리시설' },
+ items: [
+ {
+ name: 'group_inner',
+ header: { text: '하수처리구역 내(m³/일)' },
+ items: [
+ 'STTY_ZONE_INNER_SM',
+ 'STTY_ZONE_INNER_2',
+ 'STTY_ZONE_INNER_3',
+ 'STTY_ZONE_INNER_11',
+ 'STTY_ZONE_INNER_21',
+ 'STTY_ZONE_INNER_51',
+ 'STTY_ZONE_INNER_101',
+ 'STTY_ZONE_INNER_501'
+ ]
+ },
+ {
+ name: 'group_outer',
+ header: { text: '하수처리구역 외(m³/일)' },
+ items: [
+ 'STTY_ZONE_OUTER_SM',
+ 'STTY_ZONE_OUTER_2',
+ 'STTY_ZONE_OUTER_3',
+ 'STTY_ZONE_OUTER_11',
+ 'STTY_ZONE_OUTER_21',
+ 'STTY_ZONE_OUTER_51',
+ 'STTY_ZONE_OUTER_101',
+ 'STTY_ZONE_OUTER_501'
+ ]
+ }
+ ]
+ },
+ 'RMK'
+ ],
+ rowStartNum: 3,
+ fixedColumns: 1,
+ tabKey: 'treatment_facility',
+ tabLabel: '처리용량별 오수처리시설 현황'
+ },
+
+ // ========================================
+ // Tab 2: 정화조 현황
+ // ========================================
+ {
+ columns: [
+ // 행정구역
+ { name: 'SIDO', fieldName: '시도', header: { text: '시도' } },
+ { name: 'GUGUN', fieldName: '시군구', header: { text: '시군구' } },
+
+ // 총 시설 수
+ { name: 'TOT_FCLTY_CNT', fieldName: '총 시설 수 (A+D)', header: { text: '총 시설 수 (A+D)' } },
+
+ // 하수처리구역 내 - 총계
+ { name: 'SPZI_SM', fieldName: '총계 A=(B+C)/2', header: { text: '총계 A=(B+C)/2' } },
+
+ // 하수처리구역 내 - 처리방식별
+ { name: 'SPZI_MTHD_SM', fieldName: '계(B)', header: { text: '계(B)' } },
+ { name: 'SPZI_ROT_NPFL_CNT', fieldName: '자연유하', header: { text: '자연유하' } },
+ { name: 'SPZI_ROT_ENFCT_PUMP_1', fieldName: '강제펌핑식', header: { text: '강제펌핑식' } },
+ { name: 'SPZI_WTROT_NPFL_CNT', fieldName: '살수형', header: { text: '살수형' } },
+ { name: 'SPZI_TFM', fieldName: '폭기방법', header: { text: '폭기방법' } },
+ { name: 'SPZI_ARTM', fieldName: '접촉폭기', header: { text: '접촉폭기' } },
+ { name: 'SPZI_CTARM', fieldName: '기타', header: { text: '기타' } },
+
+ // 하수처리구역 내 - 처리용량별
+ { name: 'SPZI_PROC_CPC_SM', fieldName: '계(C)', header: { text: '계(C)' } },
+ { name: 'SPZI_PROC_CPC_1', fieldName: '10인조이하', header: { text: '10인조이하' } },
+ { name: 'SPZI_PROC_CPC_2', fieldName: '11~20', header: { text: '11~20' } },
+ { name: 'SPZI_PROC_CPC_3', fieldName: '21~30', header: { text: '21~30' } },
+ { name: 'SPZI_PROC_CPC_4', fieldName: '31~50', header: { text: '31~50' } },
+ { name: 'SPZI_PROC_CPC_5', fieldName: '51~199', header: { text: '51~199' } },
+ { name: 'SPZI_PROC_CPC_6', fieldName: '200~499', header: { text: '200~499' } },
+ { name: 'SPZI_PROC_CPC_7', fieldName: '500~999', header: { text: '500~999' } },
+ { name: 'SPZI_PROC_CPC_8', fieldName: '1,000 이상', header: { text: '1,000 이상' } },
+
+ // 하수처리구역 외 - 총계
+ { name: 'SPZO_SM', fieldName: '총계 D=(E+F)/2', header: { text: '총계 D=(E+F)/2' } },
+
+ // 하수처리구역 외 - 처리방식별
+ { name: 'SPZO_MTHD_SM', fieldName: '계(E)', header: { text: '계(E)' } },
+ { name: 'SPZO_ROT_NPFL_CNT', fieldName: '자연유하', header: { text: '자연유하' } },
+ { name: 'SPZO_ROT_ENFCT_PUMP_1', fieldName: '강제펌핑식', header: { text: '강제펌핑식' } },
+ { name: 'SPZO_WTROT_NPFL_CNT', fieldName: '살수형', header: { text: '살수형' } },
+ { name: 'SPZO_TFM', fieldName: '폭기방법', header: { text: '폭기방법' } },
+ { name: 'SPZO_ARTM', fieldName: '접촉폭기', header: { text: '접촉폭기' } },
+ { name: 'SPZO_CTARM', fieldName: '기타', header: { text: '기타' } },
+
+ // 하수처리구역 외 - 처리용량별
+ { name: 'SPZO_PROC_CPC_SM', fieldName: '계(F)', header: { text: '계(F)' } },
+ { name: 'SPZO_PROC_CPC_1', fieldName: '10인조이하', header: { text: '10인조이하' } },
+ { name: 'SPZO_PROC_CPC_2', fieldName: '11~20', header: { text: '11~20' } },
+ { name: 'SPZO_PROC_CPC_3', fieldName: '21~30', header: { text: '21~30' } },
+ { name: 'SPZO_PROC_CPC_4', fieldName: '31~50', header: { text: '31~50' } },
+ { name: 'SPZO_PROC_CPC_5', fieldName: '51~199', header: { text: '51~199' } },
+ { name: 'SPZO_PROC_CPC_6', fieldName: '200~499', header: { text: '200~499' } },
+ { name: 'SPZO_PROC_CPC_7', fieldName: '500~999', header: { text: '500~999' } },
+ { name: 'SPZO_PROC_CPC_8', fieldName: '1,000 이상', header: { text: '1,000 이상' } },
+
+ // 기타
+ { name: 'RMK', fieldName: '비고', header: { text: '비고' } },
+ { name: 'WRTER_OPINION', fieldName: '사용자의견', header: { text: '사용자의견' } },
+ { name: 'CHCKER_OPINION', fieldName: '검토자의견', header: { text: '검토자의견' } },
+
+ // 검증 필드 (검증 여부 표시용 - 빨간색 표시)
+ { name: 'CHK_TOT_FCLTY_CNT', fieldName: 'CHK_TOT_FCLTY_CNT', header: { text: '' } },
+ { name: 'CHK_SPZI_SM', fieldName: 'CHK_SPZI_SM', header: { text: '' } },
+ { name: 'CHK_SPZI_MTHD_SM', fieldName: 'CHK_SPZI_MTHD_SM', header: { text: '' } },
+ { name: 'CHK_SPZI_ROT_NPFL_CNT', fieldName: 'CHK_SPZI_ROT_NPFL_CNT', header: { text: '' } },
+ { name: 'CHK_SPZI_ROT_ENFCT_PUMP_1', fieldName: 'CHK_SPZI_ROT_ENFCT_PUMP_1', header: { text: '' } },
+ { name: 'CHK_SPZI_ROT_ENFCT_PUMP_2', fieldName: 'CHK_SPZI_ROT_ENFCT_PUMP_2', header: { text: '' } },
+ { name: 'CHK_SPZI_ROT_ENFCT_PUMP_3', fieldName: 'CHK_SPZI_ROT_ENFCT_PUMP_3', header: { text: '' } },
+ { name: 'CHK_SPZI_ROT_TANK_SM', fieldName: 'CHK_SPZI_ROT_TANK_SM', header: { text: '' } },
+ { name: 'CHK_SPZI_IMHF_NPFL_CNT', fieldName: 'CHK_SPZI_IMHF_NPFL_CNT', header: { text: '' } },
+ { name: 'CHK_SPZI_IMHF_ENFCT_PUMP_1', fieldName: 'CHK_SPZI_IMHF_ENFCT_PUMP_1', header: { text: '' } },
+ { name: 'CHK_SPZI_IMHF_ENFCT_PUMP_2', fieldName: 'CHK_SPZI_IMHF_ENFCT_PUMP_2', header: { text: '' } },
+ { name: 'CHK_SPZI_IMHF_ENFCT_PUMP_3', fieldName: 'CHK_SPZI_IMHF_ENFCT_PUMP_3', header: { text: '' } },
+ { name: 'CHK_SPZI_IMHF_TANK_SM', fieldName: 'CHK_SPZI_IMHF_TANK_SM', header: { text: '' } },
+ { name: 'CHK_SPZI_WTROT_NPFL_CNT', fieldName: 'CHK_SPZI_WTROT_NPFL_CNT', header: { text: '' } },
+ { name: 'CHK_SPZI_WTROT_ENFCT_PUMP_1', fieldName: 'CHK_SPZI_WTROT_ENFCT_PUMP_1', header: { text: '' } },
+ { name: 'CHK_SPZI_WTROT_ENFCT_PUMP_2', fieldName: 'CHK_SPZI_WTROT_ENFCT_PUMP_2', header: { text: '' } },
+ { name: 'CHK_SPZI_WTROT_ENFCT_PUMP_3', fieldName: 'CHK_SPZI_WTROT_ENFCT_PUMP_3', header: { text: '' } },
+ { name: 'CHK_SPZI_WTROT_TANK_SM', fieldName: 'CHK_SPZI_WTROT_TANK_SM', header: { text: '' } },
+ { name: 'CHK_SPZI_TFM', fieldName: 'CHK_SPZI_TFM', header: { text: '' } },
+ { name: 'CHK_SPZI_ARTM', fieldName: 'CHK_SPZI_ARTM', header: { text: '' } },
+ { name: 'CHK_SPZI_CTARM', fieldName: 'CHK_SPZI_CTARM', header: { text: '' } },
+ { name: 'CHK_SPZI_NPFL', fieldName: 'CHK_SPZI_NPFL', header: { text: '' } },
+ { name: 'CHK_SPZI_ENFCT_PUMP', fieldName: 'CHK_SPZI_ENFCT_PUMP', header: { text: '' } },
+ { name: 'CHK_SPZI_PROC_CPC_SM', fieldName: 'CHK_SPZI_PROC_CPC_SM', header: { text: '' } },
+ { name: 'CHK_SPZI_PROC_CPC_1', fieldName: 'CHK_SPZI_PROC_CPC_1', header: { text: '' } },
+ { name: 'CHK_SPZI_PROC_CPC_2', fieldName: 'CHK_SPZI_PROC_CPC_2', header: { text: '' } },
+ { name: 'CHK_SPZI_PROC_CPC_3', fieldName: 'CHK_SPZI_PROC_CPC_3', header: { text: '' } },
+ { name: 'CHK_SPZI_PROC_CPC_4', fieldName: 'CHK_SPZI_PROC_CPC_4', header: { text: '' } },
+ { name: 'CHK_SPZI_PROC_CPC_5', fieldName: 'CHK_SPZI_PROC_CPC_5', header: { text: '' } },
+ { name: 'CHK_SPZI_PROC_CPC_6', fieldName: 'CHK_SPZI_PROC_CPC_6', header: { text: '' } },
+ { name: 'CHK_SPZI_PROC_CPC_7', fieldName: 'CHK_SPZI_PROC_CPC_7', header: { text: '' } },
+ { name: 'CHK_SPZI_PROC_CPC_8', fieldName: 'CHK_SPZI_PROC_CPC_8', header: { text: '' } },
+ { name: 'CHK_SPZO_SM', fieldName: 'CHK_SPZO_SM', header: { text: '' } },
+ { name: 'CHK_SPZO_MTHD_SM', fieldName: 'CHK_SPZO_MTHD_SM', header: { text: '' } },
+ { name: 'CHK_SPZO_ROT_NPFL_CNT', fieldName: 'CHK_SPZO_ROT_NPFL_CNT', header: { text: '' } },
+ { name: 'CHK_SPZO_ROT_ENFCT_PUMP_1', fieldName: 'CHK_SPZO_ROT_ENFCT_PUMP_1', header: { text: '' } },
+ { name: 'CHK_SPZO_ROT_ENFCT_PUMP_2', fieldName: 'CHK_SPZO_ROT_ENFCT_PUMP_2', header: { text: '' } },
+ { name: 'CHK_SPZO_ROT_ENFCT_PUMP_3', fieldName: 'CHK_SPZO_ROT_ENFCT_PUMP_3', header: { text: '' } },
+ { name: 'CHK_SPZO_ROT_TANK_SM', fieldName: 'CHK_SPZO_ROT_TANK_SM', header: { text: '' } },
+ { name: 'CHK_SPZO_IMHF_NPFL_CNT', fieldName: 'CHK_SPZO_IMHF_NPFL_CNT', header: { text: '' } },
+ { name: 'CHK_SPZO_IMHF_ENFCT_PUMP_1', fieldName: 'CHK_SPZO_IMHF_ENFCT_PUMP_1', header: { text: '' } },
+ { name: 'CHK_SPZO_IMHF_ENFCT_PUMP_2', fieldName: 'CHK_SPZO_IMHF_ENFCT_PUMP_2', header: { text: '' } },
+ { name: 'CHK_SPZO_IMHF_ENFCT_PUMP_3', fieldName: 'CHK_SPZO_IMHF_ENFCT_PUMP_3', header: { text: '' } },
+ { name: 'CHK_SPZO_IMHF_TANK_SM', fieldName: 'CHK_SPZO_IMHF_TANK_SM', header: { text: '' } },
+ { name: 'CHK_SPZO_WTROT_NPFL_CNT', fieldName: 'CHK_SPZO_WTROT_NPFL_CNT', header: { text: '' } },
+ { name: 'CHK_SPZO_WTROT_ENFCT_PUMP_1', fieldName: 'CHK_SPZO_WTROT_ENFCT_PUMP_1', header: { text: '' } },
+ { name: 'CHK_SPZO_WTROT_ENFCT_PUMP_2', fieldName: 'CHK_SPZO_WTROT_ENFCT_PUMP_2', header: { text: '' } },
+ { name: 'CHK_SPZO_WTROT_ENFCT_PUMP_3', fieldName: 'CHK_SPZO_WTROT_ENFCT_PUMP_3', header: { text: '' } },
+ { name: 'CHK_SPZO_WTROT_TANK_SM', fieldName: 'CHK_SPZO_WTROT_TANK_SM', header: { text: '' } },
+ { name: 'CHK_SPZO_TFM', fieldName: 'CHK_SPZO_TFM', header: { text: '' } },
+ { name: 'CHK_SPZO_ARTM', fieldName: 'CHK_SPZO_ARTM', header: { text: '' } },
+ { name: 'CHK_SPZO_CTARM', fieldName: 'CHK_SPZO_CTARM', header: { text: '' } },
+ { name: 'CHK_SPZO_NPFL', fieldName: 'CHK_SPZO_NPFL', header: { text: '' } },
+ { name: 'CHK_SPZO_ENFCT_PUMP', fieldName: 'CHK_SPZO_ENFCT_PUMP', header: { text: '' } },
+ { name: 'CHK_SPZO_PROC_CPC_SM', fieldName: 'CHK_SPZO_PROC_CPC_SM', header: { text: '' } },
+ { name: 'CHK_SPZO_PROC_CPC_1', fieldName: 'CHK_SPZO_PROC_CPC_1', header: { text: '' } },
+ { name: 'CHK_SPZO_PROC_CPC_2', fieldName: 'CHK_SPZO_PROC_CPC_2', header: { text: '' } },
+ { name: 'CHK_SPZO_PROC_CPC_3', fieldName: 'CHK_SPZO_PROC_CPC_3', header: { text: '' } },
+ { name: 'CHK_SPZO_PROC_CPC_4', fieldName: 'CHK_SPZO_PROC_CPC_4', header: { text: '' } },
+ { name: 'CHK_SPZO_PROC_CPC_5', fieldName: 'CHK_SPZO_PROC_CPC_5', header: { text: '' } },
+ { name: 'CHK_SPZO_PROC_CPC_6', fieldName: 'CHK_SPZO_PROC_CPC_6', header: { text: '' } },
+ { name: 'CHK_SPZO_PROC_CPC_7', fieldName: 'CHK_SPZO_PROC_CPC_7', header: { text: '' } },
+ { name: 'CHK_SPZO_PROC_CPC_8', fieldName: 'CHK_SPZO_PROC_CPC_8', header: { text: '' } },
+ ],
+ columnLayout: [
+ {
+ name: 'group_admin',
+ header: { text: '행정구역' },
+ items: ['SIDO', 'GUGUN']
+ },
+ 'TOT_FCLTY_CNT',
+ {
+ name: 'group_spzi',
+ header: { text: '하수처리구역 내' },
+ items: [
+ 'SPZI_SM',
+ {
+ name: 'group_spzi_mthd',
+ header: { text: '처리방식별' },
+ items: [
+ 'SPZI_MTHD_SM',
+ {
+ name: 'group_spzi_rot',
+ header: { text: '부패탱크' },
+ items: [
+ 'SPZI_ROT_NPFL_CNT',
+ 'SPZI_ROT_ENFCT_PUMP_1'
+ ]
+ },
+ 'SPZI_WTROT_NPFL_CNT',
+ 'SPZI_TFM',
+ 'SPZI_ARTM',
+ 'SPZI_CTARM'
+ ]
+ },
+ {
+ name: 'group_spzi_proc',
+ header: { text: '처리용량별' },
+ items: [
+ 'SPZI_PROC_CPC_SM',
+ 'SPZI_PROC_CPC_1',
+ 'SPZI_PROC_CPC_2',
+ 'SPZI_PROC_CPC_3',
+ 'SPZI_PROC_CPC_4',
+ 'SPZI_PROC_CPC_5',
+ 'SPZI_PROC_CPC_6',
+ 'SPZI_PROC_CPC_7',
+ 'SPZI_PROC_CPC_8'
+ ]
+ }
+ ]
+ },
+ {
+ name: 'group_spzo',
+ header: { text: '하수처리구역 외' },
+ items: [
+ 'SPZO_SM',
+ {
+ name: 'group_spzo_mthd',
+ header: { text: '처리방식별' },
+ items: [
+ 'SPZO_MTHD_SM',
+ {
+ name: 'group_spzo_rot',
+ header: { text: '부패탱크' },
+ items: [
+ 'SPZO_ROT_NPFL_CNT',
+ 'SPZO_ROT_ENFCT_PUMP_1'
+ ]
+ },
+ 'SPZO_WTROT_NPFL_CNT',
+ 'SPZO_TFM',
+ 'SPZO_ARTM',
+ 'SPZO_CTARM'
+ ]
+ },
+ {
+ name: 'group_spzo_proc',
+ header: { text: '처리용량별' },
+ items: [
+ 'SPZO_PROC_CPC_SM',
+ 'SPZO_PROC_CPC_1',
+ 'SPZO_PROC_CPC_2',
+ 'SPZO_PROC_CPC_3',
+ 'SPZO_PROC_CPC_4',
+ 'SPZO_PROC_CPC_5',
+ 'SPZO_PROC_CPC_6',
+ 'SPZO_PROC_CPC_7',
+ 'SPZO_PROC_CPC_8'
+ ]
+ }
+ ]
+ },
+ 'RMK'
+ ],
+ rowStartNum: 3,
+ fixedColumns: 1,
+ tabKey: 'septic_tank',
+ tabLabel: '정화조 현황'
+ },
+
+ // ========================================
+ // Tab 3: 개인하수도 관리지역 지정공고 현황
+ // ========================================
+ {
+ columns: [
+ // 행정구역
+ { name: 'SIDO', fieldName: '시도', header: { text: '시도' } },
+ { name: 'GUGUN', fieldName: '시군구', header: { text: '시군구' } },
+
+ // 개인하수도관리지역공고현황
+ { name: 'MGMT_AR', fieldName: '공고지역(개소)', header: { text: '공고지역(개소)' } },
+ { name: 'APPN_SCOPE', fieldName: '지정범위(㎢)', header: { text: '지정범위(㎢)' } },
+
+ // 정화조
+ { name: 'STTY_CNT', fieldName: '개소수', header: { text: '개소수' } },
+ { name: 'STTY_CPC', fieldName: '처리용량(인/일)', header: { text: '처리용량(인/일)' } },
+
+ // 오수시설
+ { name: 'WRRTN_CNT', fieldName: '개소수', header: { text: '개소수' } },
+ { name: 'WRRTN_CPC', fieldName: '처리용량(m³/일)', header: { text: '처리용량(m³/일)' } },
+
+ // 검증 필드
+ { name: 'CHK_MGMT_AR', fieldName: 'CHK_MGMT_AR', header: { text: '' } },
+ { name: 'CHK_APPN_SCOPE', fieldName: 'CHK_APPN_SCOPE', header: { text: '' } },
+ { name: 'CHK_STTY_CNT', fieldName: 'CHK_STTY_CNT', header: { text: '' } },
+ { name: 'CHK_STTY_CPC', fieldName: 'CHK_STTY_CPC', header: { text: '' } },
+ { name: 'CHK_WRRTN_CNT', fieldName: 'CHK_WRRTN_CNT', header: { text: '' } },
+ { name: 'CHK_WRRTN_CPC', fieldName: 'CHK_WRRTN_CPC', header: { text: '' } },
+
+ // 기타
+ { name: 'RMK', fieldName: '비고', header: { text: '비고' } },
+ { name: 'WRTER_OPINION', fieldName: '사용자의견', header: { text: '사용자의견' } },
+ { name: 'CHCKER_OPINION', fieldName: '검토자의견', header: { text: '검토자의견' } },
+ ],
+ columnLayout: [
+ {
+ name: 'group_admin',
+ header: { text: '행정구역' },
+ items: ['SIDO', 'GUGUN']
+ },
+ {
+ name: 'group_notice',
+ header: { text: '개인하수도관리지역공고현황 (하수도법제34조의2)' },
+ items: [
+ 'MGMT_AR',
+ 'APPN_SCOPE',
+ {
+ name: 'group_septic',
+ header: { text: '정화조' },
+ items: [
+ 'STTY_CNT',
+ 'STTY_CPC'
+ ]
+ },
+ {
+ name: 'group_sewage',
+ header: { text: '오수시설' },
+ items: [
+ 'WRRTN_CNT',
+ 'WRRTN_CPC'
+ ]
+ }
+ ]
+ },
+ 'RMK'
+ ],
+ rowStartNum: 3,
+ fixedColumns: 1,
+ tabKey: 'designated_area',
+ tabLabel: '개인하수도 관리지역 지정공고 현황'
+ }
+];
\ No newline at end of file
diff --git a/apps/st/src/components/util/column/SewerageFinanceMngColumn.ts b/apps/st/src/components/util/column/SewerageFinanceMngColumn.ts
new file mode 100644
index 000000000..4d1c3cfa4
--- /dev/null
+++ b/apps/st/src/components/util/column/SewerageFinanceMngColumn.ts
@@ -0,0 +1,181 @@
+/**
+ * 하수도 통계 관리 > 09. 하수도 재정
+ * 4개 Tab: 컬럼 통합 관리
+ */
+
+export const SewerageFinanceMngInfoList = [
+ // ========================================
+ // Tab 1: 하수도재정 결산
+ // ========================================
+ {
+ columns: [
+ // 행정구역
+ { name: 'SIDO', fieldName: '시도', header: { text: '시도' } },
+ { name: 'GUGUN', fieldName: '시군구', header: { text: '시군구' } },
+
+ // 재정별 사업비
+ { name: 'FNANC_WCT_SM', fieldName: '계', header: { text: '계' } },
+ { name: 'NTNXPN', fieldName: '중앙정부지원액', header: { text: '중앙정부지원액' } },
+ { name: 'LCLEXPNS', fieldName: '특·광역시, 도', header: { text: '특·광역시, 도' } },
+ { name: 'LCLTY_CT', fieldName: '시,군,구 지자체', header: { text: '시,군,구 지자체' } },
+ { name: 'SEWER_RNTFEE', fieldName: '하수도사용료', header: { text: '하수도사용료' } },
+ { name: 'AMNTBRNCSR', fieldName: '원인자부담금', header: { text: '원인자부담금' } },
+ { name: 'ETC_INCME', fieldName: '기타잡수입', header: { text: '기타잡수입' } },
+ { name: 'CYFD_AMOUNT', fieldName: '이월액', header: { text: '이월액' } },
+
+ // 부채액
+ { name: 'DEBT_AMOUNT', fieldName: '부채액(백만원)', header: { text: '부채액(백만원)' } },
+
+ // 용도별사업비
+ { name: 'PRPOS_WCT_SM', fieldName: '계', header: { text: '계' } },
+
+ // 처리장
+ { name: 'PRCPLT_SM', fieldName: '소계', header: { text: '소계' } },
+ { name: 'PRCPLT_FCLTY', fieldName: '시설비', header: { text: '시설비' } },
+ { name: 'PRCPLT_RPAIR', fieldName: '개보수비', header: { text: '개보수비' } },
+ { name: 'PRCPLT_ORPNS', fieldName: '운영유지비', header: { text: '운영유지비' } },
+ { name: 'PRCPLT_ETC', fieldName: '기타', header: { text: '기타' } },
+
+ // 하수관로
+ { name: 'SEWAGE_SM', fieldName: '소계', header: { text: '소계' } },
+ { name: 'SEWAGE_FCLTY', fieldName: '시설비', header: { text: '시설비' } },
+ { name: 'SEWAGE_RPAIR', fieldName: '개보수비', header: { text: '개보수비' } },
+ { name: 'SEWAGE_ORPNS', fieldName: '운영유지비', header: { text: '운영유지비' } },
+ { name: 'SEWAGE_ETC', fieldName: '기타', header: { text: '기타' } },
+
+ // 하수저류시설
+ { name: 'SWGE_STRGE_SM', fieldName: '소계', header: { text: '소계' } },
+ { name: 'SWGE_STRGE_FCLTY', fieldName: '시설비', header: { text: '시설비' } },
+ { name: 'SWGE_STRGE_RPAIR', fieldName: '개보수비', header: { text: '개보수비' } },
+ { name: 'SWGE_STRGE_ORPNS', fieldName: '운영유지비', header: { text: '운영유지비' } },
+ { name: 'SWGE_STRGE_ETC', fieldName: '기타', header: { text: '기타' } },
+
+ // 기타
+ { name: 'ETC_SM', fieldName: '소계', header: { text: '소계' } },
+ { name: 'ACDNT_CYFD_AMOUNT', fieldName: '사고이월액', header: { text: '사고이월액' } },
+ { name: 'UNRCIV_AMOUNT', fieldName: '미수납액', header: { text: '미수납액' } },
+ { name: 'ETC_AMOUNT', fieldName: '기타', header: { text: '기타' } },
+
+ // 비고
+ { name: 'RMK', fieldName: '비고', header: { text: '비고' } },
+ { name: 'CHCKER_OPINION', fieldName: '검토자의견', header: { text: '검토자의견' } },
+ { name: 'WRTER_OPINION', fieldName: '사용자의견', header: { text: '사용자의견' } },
+
+ // 참조 필드
+ { name: 'B_LEVY_AMOUNT', fieldName: 'B_LEVY_AMOUNT', header: { text: 'B_LEVY_AMOUNT' } },
+ { name: 'C_LEVY_AMOUNT', fieldName: 'C_LEVY_AMOUNT', header: { text: 'C_LEVY_AMOUNT' } },
+ { name: 'D_LEVY_AMOUNT', fieldName: 'D_LEVY_AMOUNT', header: { text: 'D_LEVY_AMOUNT' } },
+
+ // 검증 필드
+ { name: 'CHK_FNANC_WCT_SM', fieldName: 'CHK_FNANC_WCT_SM', header: { text: 'CHK_FNANC_WCT_SM' } },
+ { name: 'CHK_NTNXPN', fieldName: 'CHK_NTNXPN', header: { text: 'CHK_NTNXPN' } },
+ { name: 'CHK_LCLEXPNS', fieldName: 'CHK_LCLEXPNS', header: { text: 'CHK_LCLEXPNS' } },
+ { name: 'CHK_LCLTY_CT', fieldName: 'CHK_LCLTY_CT', header: { text: 'CHK_LCLTY_CT' } },
+ { name: 'CHK_SEWER_RNTFEE', fieldName: 'CHK_SEWER_RNTFEE', header: { text: 'CHK_SEWER_RNTFEE' } },
+ { name: 'CHK_AMNTBRNCSR', fieldName: 'CHK_AMNTBRNCSR', header: { text: 'CHK_AMNTBRNCSR' } },
+ { name: 'CHK_ETC_INCME', fieldName: 'CHK_ETC_INCME', header: { text: 'CHK_ETC_INCME' } },
+ { name: 'CHK_CYFD_AMOUNT', fieldName: 'CHK_CYFD_AMOUNT', header: { text: 'CHK_CYFD_AMOUNT' } },
+ { name: 'CHK_DEBT_AMOUNT', fieldName: 'CHK_DEBT_AMOUNT', header: { text: 'CHK_DEBT_AMOUNT' } },
+ { name: 'CHK_PRPOS_WCT_SM', fieldName: 'CHK_PRPOS_WCT_SM', header: { text: 'CHK_PRPOS_WCT_SM' } },
+ { name: 'CHK_PRCPLT_SM', fieldName: 'CHK_PRCPLT_SM', header: { text: 'CHK_PRCPLT_SM' } },
+ { name: 'CHK_PRCPLT_FCLTY', fieldName: 'CHK_PRCPLT_FCLTY', header: { text: 'CHK_PRCPLT_FCLTY' } },
+ { name: 'CHK_PRCPLT_RPAIR', fieldName: 'CHK_PRCPLT_RPAIR', header: { text: 'CHK_PRCPLT_RPAIR' } },
+ { name: 'CHK_PRCPLT_ORPNS', fieldName: 'CHK_PRCPLT_ORPNS', header: { text: 'CHK_PRCPLT_ORPNS' } },
+ { name: 'CHK_PRCPLT_ETC', fieldName: 'CHK_PRCPLT_ETC', header: { text: 'CHK_PRCPLT_ETC' } },
+ { name: 'CHK_SEWAGE_SM', fieldName: 'CHK_SEWAGE_SM', header: { text: 'CHK_SEWAGE_SM' } },
+ { name: 'CHK_SEWAGE_FCLTY', fieldName: 'CHK_SEWAGE_FCLTY', header: { text: 'CHK_SEWAGE_FCLTY' } },
+ { name: 'CHK_SEWAGE_RPAIR', fieldName: 'CHK_SEWAGE_RPAIR', header: { text: 'CHK_SEWAGE_RPAIR' } },
+ { name: 'CHK_SEWAGE_ORPNS', fieldName: 'CHK_SEWAGE_ORPNS', header: { text: 'CHK_SEWAGE_ORPNS' } },
+ { name: 'CHK_SEWAGE_ETC', fieldName: 'CHK_SEWAGE_ETC', header: { text: 'CHK_SEWAGE_ETC' } },
+ { name: 'CHK_SWGE_STRGE_SM', fieldName: 'CHK_SWGE_STRGE_SM', header: { text: 'CHK_SWGE_STRGE_SM' } },
+ { name: 'CHK_SWGE_STRGE_FCLTY', fieldName: 'CHK_SWGE_STRGE_FCLTY', header: { text: 'CHK_SWGE_STRGE_FCLTY' } },
+ { name: 'CHK_SWGE_STRGE_RPAIR', fieldName: 'CHK_SWGE_STRGE_RPAIR', header: { text: 'CHK_SWGE_STRGE_RPAIR' } },
+ { name: 'CHK_SWGE_STRGE_ORPNS', fieldName: 'CHK_SWGE_STRGE_ORPNS', header: { text: 'CHK_SWGE_STRGE_ORPNS' } },
+ { name: 'CHK_SWGE_STRGE_ETC', fieldName: 'CHK_SWGE_STRGE_ETC', header: { text: 'CHK_SWGE_STRGE_ETC' } },
+ { name: 'CHK_ACDNT_CYFD_AMOUNT', fieldName: 'CHK_ACDNT_CYFD_AMOUNT', header: { text: 'CHK_ACDNT_CYFD_AMOUNT' } },
+ { name: 'CHK_UNRCIV_AMOUNT', fieldName: 'CHK_UNRCIV_AMOUNT', header: { text: 'CHK_UNRCIV_AMOUNT' } },
+ { name: 'CHK_ETC_AMOUNT', fieldName: 'CHK_ETC_AMOUNT', header: { text: 'CHK_ETC_AMOUNT' } },
+ { name: 'CHK_ETC_SM', fieldName: 'CHK_ETC_SM', header: { text: 'CHK_ETC_SM' } },
+ ],
+ columnLayout: [
+ {
+ name: 'group_admin',
+ header: { text: '행정구역' },
+ items: ['SIDO', 'GUGUN']
+ },
+ {
+ name: 'group_finance',
+ header: { text: '재정별 사업비(백만원)' },
+ items: [
+ 'FNANC_WCT_SM',
+ 'NTNXPN',
+ {
+ name: 'group_local_finance',
+ header: { text: '지방비' },
+ items: ['LCLEXPNS', 'LCLTY_CT']
+ },
+ 'SEWER_RNTFEE',
+ 'AMNTBRNCSR',
+ 'ETC_INCME',
+ 'CYFD_AMOUNT'
+ ]
+ },
+ 'DEBT_AMOUNT',
+ {
+ name: 'group_purpose',
+ header: { text: '용도별사업비(백만원)' },
+ items: [
+ 'PRPOS_WCT_SM',
+ {
+ name: 'group_treatment',
+ header: { text: '처리장' },
+ items: [
+ 'PRCPLT_SM',
+ 'PRCPLT_FCLTY',
+ 'PRCPLT_RPAIR',
+ 'PRCPLT_ORPNS',
+ 'PRCPLT_ETC'
+ ]
+ },
+ {
+ name: 'group_pipe',
+ header: { text: '하수관로' },
+ items: [
+ 'SEWAGE_SM',
+ 'SEWAGE_FCLTY',
+ 'SEWAGE_RPAIR',
+ 'SEWAGE_ORPNS',
+ 'SEWAGE_ETC'
+ ]
+ },
+ {
+ name: 'group_storage',
+ header: { text: '하수저류시설' },
+ items: [
+ 'SWGE_STRGE_SM',
+ 'SWGE_STRGE_FCLTY',
+ 'SWGE_STRGE_RPAIR',
+ 'SWGE_STRGE_ORPNS',
+ 'SWGE_STRGE_ETC'
+ ]
+ },
+ {
+ name: 'group_etc_purpose',
+ header: { text: '기타' },
+ items: [
+ 'ETC_SM',
+ 'ACDNT_CYFD_AMOUNT',
+ 'UNRCIV_AMOUNT',
+ 'ETC_AMOUNT'
+ ]
+ }
+ ]
+ },
+ 'RMK'
+ ],
+ rowStartNum: 3,
+ fixedColumns: 1,
+ tabKey: 'SewerageFinanceMng_tab1',
+ tabLabel: '하수도재정 결산'
+ },
+];
\ No newline at end of file
diff --git a/apps/st/src/components/util/column/WaterReuseMngColumn.ts b/apps/st/src/components/util/column/WaterReuseMngColumn.ts
new file mode 100644
index 000000000..823f535b8
--- /dev/null
+++ b/apps/st/src/components/util/column/WaterReuseMngColumn.ts
@@ -0,0 +1,8 @@
+/**
+ * 하수도 통계 관리 > 10. 물 재이용
+ * 5개 Tab: 컬럼 통합 관리
+ */
+export const WaterReuseMngColumnInfoList = [];
+ // ========================================
+ // Tab 1: 공공하수처리수 재이용
+ // ========================================
\ No newline at end of file