diff --git a/apps/st/src/components/statistics/management/ExcretaTreatmentFacilityMng.tsx b/apps/st/src/components/statistics/management/ExcretaTreatmentFacilityMng.tsx index e5b70343e..bcd73394d 100644 --- a/apps/st/src/components/statistics/management/ExcretaTreatmentFacilityMng.tsx +++ b/apps/st/src/components/statistics/management/ExcretaTreatmentFacilityMng.tsx @@ -7,10 +7,10 @@ import SubmitExceptionButton from "@/components/button/SubmitExceptionButton"; import { useState } from "react"; import { ExcretaTreatmentFacilityMngColumn } from "@/components/util/column/management/ExcretaTreatmentFacilityMngColumn" + // 하수도 통계 관리 > 07. 분뇨처리시설 const ExcretaTreatmentFacilityMng = () => { - const submitExceptionFunc = () => { console.log('submit exception'); // 예외제출 로직 diff --git a/apps/st/src/components/statistics/management/PrivateSewageFacilityMng.tsx b/apps/st/src/components/statistics/management/PrivateSewageFacilityMng.tsx index e4bb9b310..a55219cdd 100644 --- a/apps/st/src/components/statistics/management/PrivateSewageFacilityMng.tsx +++ b/apps/st/src/components/statistics/management/PrivateSewageFacilityMng.tsx @@ -47,8 +47,8 @@ const PrivateSewageFacilityMng = () => {
- +
diff --git a/apps/st/src/components/statistics/management/SewerageFinanceMng.tsx b/apps/st/src/components/statistics/management/SewerageFinanceMng.tsx index a44c278ef..8ea794818 100644 --- a/apps/st/src/components/statistics/management/SewerageFinanceMng.tsx +++ b/apps/st/src/components/statistics/management/SewerageFinanceMng.tsx @@ -6,12 +6,33 @@ import SaveButton from "@/components/button/SaveButton"; import SubmitExceptionButton from "@/components/button/SubmitExceptionButton"; import LastYearDataButton from "@/components/button/LastYearDataButton"; -import { SewerageFinanceMngInfoList } from "@/components/util/column/management/SewerageFinanceMngColumn"; +import { SewerageFinanceSettlementMngColumn } from "@/components/util/column/management/sewerageFinance/SewerageFinanceSettlementMngColumn" +import { SewerageChargeMngColumn } from "@/components/util/column/management/sewerageFinance/SewerageChargeMngColumn" +import { SewerageUsageFeeMngColumn } from "@/components/util/column/management/sewerageFinance/SewerageUsageFeeMngColumn" +import { CauserBurdenMngColumn } from "@/components/util/column/management/sewerageFinance/CauserBurdenMngColumn" // 하수도 통계 관리 > 09. 하수도재정 const SewerageFinanceMng = () => { const [rowDataMap, setRowDataMap] = useState[]>>(new Map()); + // tab list + const SewerageFinanceMngList = [ + SewerageFinanceSettlementMngColumn, + SewerageChargeMngColumn, + SewerageUsageFeeMngColumn, + CauserBurdenMngColumn + ]; + + const submitExceptionFunc = () => { + // TODO: 예외 제출 로직 구현 + console.log('예외 제출 로직 실행'); + }; + + const lastYearDataFunc = () => { + // TODO: 지난연도 데이터 가져오기 로직 구현 + console.log('지난연도 데이터 가져오기 로직 실행'); + }; + const submitFunc = () => { // TODO: 제출 로직 구현 console.log('제출 로직 실행'); @@ -22,16 +43,6 @@ const SewerageFinanceMng = () => { console.log('저장 로직 실행'); }; - const lastYearDataFunc = () => { - // TODO: 지난년도 데이터 가져오기 로직 구현 - console.log('지난년도 데이터 가져오기 로직 실행'); - }; - - const submitExceptionFunc = () => { - // TODO: 예외 제출 로직 구현 - console.log('예외 제출 로직 실행'); - }; - return ( <> @@ -39,11 +50,11 @@ const SewerageFinanceMng = () => {
- +
- + ); }; diff --git a/apps/st/src/components/util/column/management/SewerageFinanceMngColumn.ts b/apps/st/src/components/util/column/management/SewerageFinanceMngColumn.ts deleted file mode 100644 index ab598062f..000000000 --- a/apps/st/src/components/util/column/management/SewerageFinanceMngColumn.ts +++ /dev/null @@ -1,434 +0,0 @@ -/** - * 하수도 통계 관리 > 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' } }, - ], - 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: '하수도재정 결산' - }, - // ======================================== - // Tab 2: 하수도 요금 - // ======================================== - { - columns: [ - // 행정구역 - { name: 'SIDO', fieldName: '시도', header: { text: '시도' } }, - { name: 'GUGUN', fieldName: '시군구', header: { text: '시군구' } }, - - // 요금 현황 - { name: 'FYER_LEVY_QY', fieldName: '연간조정량(m³)(A)', header: { text: '연간조정량(m³)(A)' } }, - { name: 'LEVY_AMOUNT', fieldName: '하수도사용료수익(원)(B)', header: { text: '하수도사용료수익(원)(B)' } }, - { name: 'AVRG_UNTPC', fieldName: 'm³당요금(원/m³) C=(B/A)', header: { text: 'm³당요금(원/m³) C=(B/A)' } }, - { name: 'SMRIZE_PRMPC', fieldName: '총괄원가(원)(D)', header: { text: '총괄원가(원)(D)' } }, - { name: 'SMRIZE_UNIT_PRMPC', fieldName: 'm³당원가(원/m³) E=(D/A)', header: { text: 'm³당원가(원/m³) E=(D/A)' } }, - { name: 'RLTY_RT', fieldName: '요금현실화율(%) F=(C/E*100)', header: { text: '요금현실화율(%) F=(C/E*100)' } }, - - // 비고 및 의견 - { name: 'RMK', fieldName: '비고', header: { text: '비고' } }, - { name: 'CHCKER_OPINION', fieldName: '검토자의견', header: { text: '검토자의견' } }, - { name: 'WRTER_OPINION', fieldName: '사용자의견', header: { text: '사용자의견' } }, - - // 참조 필드 - { name: 'SEWER_RNTFEE', fieldName: 'SEWER_RNTFEE', header: { text: 'SEWER_RNTFEE' } }, - { name: 'C_LEVY_AMOUNT', fieldName: 'C_LEVY_AMOUNT', header: { text: 'C_LEVY_AMOUNT' } }, - ], - columnLayout: [ - { - name: 'group_admin', - header: { text: '행정구역' }, - items: ['SIDO', 'GUGUN'] - }, - 'FYER_LEVY_QY', - 'LEVY_AMOUNT', - 'AVRG_UNTPC', - 'SMRIZE_PRMPC', - 'SMRIZE_UNIT_PRMPC', - 'RLTY_RT', - 'RMK' - ], - rowStartNum: 2, - fixedColumns: 1, - tabKey: 'SewerageFinanceMng_tab2', - tabLabel: '하수도 요금' - }, - // ======================================== - // Tab 3: 하수도 사용료 - // ======================================== - { - columns: [ - // 행정구역 - { name: 'SIDO', fieldName: '시도', header: { text: '시도' } }, - { name: 'GUGUN', fieldName: '시군구', header: { text: '시군구' } }, - - // 총계 - { name: 'LEVY_AMOUNT', fieldName: '(백만원)', header: { text: '(백만원)' } }, - { name: 'LEVY_QY', fieldName: '(천톤)', header: { text: '(천톤)' } }, - - // 가정용 - { name: 'HOME_LEVY_AMOUNT', fieldName: '(백만원)', header: { text: '(백만원)' } }, - { name: 'HOME_LEVY_QY', fieldName: '(천톤)', header: { text: '(천톤)' } }, - { name: 'HOME_UNTPC', fieldName: '(원/톤)', header: { text: '(원/톤)' } }, - - // 업무용 - { name: 'JOB_LEVY_AMOUNT', fieldName: '(백만원)', header: { text: '(백만원)' } }, - { name: 'JOB_LEVY_QY', fieldName: '(천톤)', header: { text: '(천톤)' } }, - { name: 'JOB_UNTPC', fieldName: '(원/톤)', header: { text: '(원/톤)' } }, - - // 영업용(일반용) - { name: 'BSN_LEVY_AMOUNT', fieldName: '(백만원)', header: { text: '(백만원)' } }, - { name: 'BSN_LEVY_QY', fieldName: '(천톤)', header: { text: '(천톤)' } }, - { name: 'BSN_UNTPC', fieldName: '(원/톤)', header: { text: '(원/톤)' } }, - - // 욕탕1종(대중탕용) - { name: 'BATHS1_LEVY_AMOUNT', fieldName: '(백만원)', header: { text: '(백만원)' } }, - { name: 'BATHS1_LEVY_QY', fieldName: '(천톤)', header: { text: '(천톤)' } }, - { name: 'BATHS1_UNTPC', fieldName: '(원/톤)', header: { text: '(원/톤)' } }, - - // 대중탕용 (별도 분류) - { name: 'PBBATH_LEVY_AMOUNT', fieldName: '(백만원)', header: { text: '(백만원)' } }, - { name: 'PBBATH_LEVY_QY', fieldName: '(천톤)', header: { text: '(천톤)' } }, - { name: 'PBBATH_UNTPC', fieldName: '(원/톤)', header: { text: '(원/톤)' } }, - - // 욕탕2종 - { name: 'BATHS2_LEVY_AMOUNT', fieldName: '(백만원)', header: { text: '(백만원)' } }, - { name: 'BATHS2_LEVY_QY', fieldName: '(천톤)', header: { text: '(천톤)' } }, - { name: 'BATHS2_UNTPC', fieldName: '(원/톤)', header: { text: '(원/톤)' } }, - - // 산업용 - { name: 'INDUST_LEVY_AMOUNT', fieldName: '(백만원)', header: { text: '(백만원)' } }, - { name: 'INDUST_LEVY_QY', fieldName: '(천톤)', header: { text: '(천톤)' } }, - { name: 'INDUST_UNTPC', fieldName: '(원/톤)', header: { text: '(원/톤)' } }, - - // 공업용 - { name: 'INDPRP_LEVY_AMOUNT', fieldName: '(백만원)', header: { text: '(백만원)' } }, - { name: 'INDPRP_LEVY_QY', fieldName: '(천톤)', header: { text: '(천톤)' } }, - { name: 'INDPRP_UNTPC', fieldName: '(원/톤)', header: { text: '(원/톤)' } }, - - // 공공용 - { name: 'PUBLIC_LEVY_AMOUNT', fieldName: '(백만원)', header: { text: '(백만원)' } }, - { name: 'PUBLIC_LEVY_QY', fieldName: '(천톤)', header: { text: '(천톤)' } }, - { name: 'PUBLIC_UNTPC', fieldName: '(원/톤)', header: { text: '(원/톤)' } }, - - // 일반용 - { name: 'GNRL_LEVY_AMOUNT', fieldName: '(백만원)', header: { text: '(백만원)' } }, - { name: 'GNRL_LEVY_QY', fieldName: '(천톤)', header: { text: '(천톤)' } }, - { name: 'GNRL_UNTPC', fieldName: '(원/톤)', header: { text: '(원/톤)' } }, - - // 기타 - { name: 'ETC_LEVY_AMOUNT', fieldName: '(백만원)', header: { text: '(백만원)' } }, - { name: 'ETC_LEVY_QY', fieldName: '(천톤)', header: { text: '(천톤)' } }, - { name: 'ETC_UNTPC', fieldName: '(원/톤)', header: { text: '(원/톤)' } }, - - // 비고 및 의견 - { name: 'RMK', fieldName: '비고', header: { text: '비고' } }, - { name: 'CHCKER_OPINION', fieldName: '검토자의견', header: { text: '검토자의견' } }, - { name: 'WRTER_OPINION', fieldName: '사용자의견', header: { text: '사용자의견' } }, - - // 참조 필드 - { name: 'SEWER_RNTFEE', fieldName: 'SEWER_RNTFEE', header: { text: 'SEWER_RNTFEE' } }, - { name: 'B_LEVY_AMOUNT', fieldName: 'B_LEVY_AMOUNT', header: { text: 'B_LEVY_AMOUNT' } }, - ], - - columnLayout: [ - { - name: 'group_admin', - header: { text: '행정구역' }, - items: ['SIDO', 'GUGUN'] - }, - { - name: 'group_total', - header: { text: '총계' }, - items: [ - { name: 'total_amount', header: { text: '부과액' }, items: ['LEVY_AMOUNT'] }, - { name: 'total_qty', header: { text: '부과량' }, items: ['LEVY_QY'] } - ] - }, - { - name: 'group_home', - header: { text: '가 정 용' }, - items: [ - { name: 'home_amount', header: { text: '부과액' }, items: ['HOME_LEVY_AMOUNT'] }, - { name: 'home_qty', header: { text: '부과량' }, items: ['HOME_LEVY_QY'] }, - { name: 'home_price', header: { text: '단가' }, items: ['HOME_UNTPC'] } - ] - }, - { - name: 'group_job', - header: { text: '업 무 용' }, - items: [ - { name: 'job_amount', header: { text: '부과액' }, items: ['JOB_LEVY_AMOUNT'] }, - { name: 'job_qty', header: { text: '부과량' }, items: ['JOB_LEVY_QY'] }, - { name: 'job_price', header: { text: '단가' }, items: ['JOB_UNTPC'] } - ] - }, - { - name: 'group_business', - header: { text: '영 업 용(일 반 용)' }, - items: [ - { name: 'bsn_amount', header: { text: '부과액' }, items: ['BSN_LEVY_AMOUNT'] }, - { name: 'bsn_qty', header: { text: '부과량' }, items: ['BSN_LEVY_QY'] }, - { name: 'bsn_price', header: { text: '단가' }, items: ['BSN_UNTPC'] } - ] - }, - { - name: 'group_baths1', - header: { text: '욕 탕 1종(대중탕용)' }, - items: [ - { name: 'baths1_amount', header: { text: '부과액' }, items: ['BATHS1_LEVY_AMOUNT'] }, - { name: 'baths1_qty', header: { text: '부과량' }, items: ['BATHS1_LEVY_QY'] }, - { name: 'baths1_price', header: { text: '단가' }, items: ['BATHS1_UNTPC'] } - ] - }, - { - name: 'group_pbbath', - header: { text: '욕 탕 2종' }, - items: [ - { name: 'pbbath_amount', header: { text: '부과액' }, items: ['PBBATH_LEVY_AMOUNT'] }, - { name: 'pbbath_qty', header: { text: '부과량' }, items: ['PBBATH_LEVY_QY'] }, - { name: 'pbbath_price', header: { text: '단가' }, items: ['PBBATH_UNTPC'] } - ] - }, - { - name: 'group_industry', - header: { text: '산업 및 공업용' }, - items: [ - { name: 'indust_amount', header: { text: '부과액' }, items: ['INDUST_LEVY_AMOUNT'] }, - { name: 'indust_qty', header: { text: '부과량' }, items: ['INDUST_LEVY_QY'] }, - { name: 'indust_price', header: { text: '단가' }, items: ['INDUST_UNTPC'] } - ] - }, - { - name: 'group_etc', - header: { text: '기타' }, - items: [ - { name: 'etc_amount', header: { text: '부과액' }, items: ['ETC_LEVY_AMOUNT'] }, - { name: 'etc_qty', header: { text: '부과량' }, items: ['ETC_LEVY_QY'] }, - { name: 'etc_price', header: { text: '단가' }, items: ['ETC_UNTPC'] } - ] - }, - 'RMK' - ], - - rowStartNum: 3, - fixedColumns: 1, - tabKey: 'SewerageFinanceMng_tab3', - tabLabel: '하수도 사용료' - }, - - // ======================================== - // Tab 4: 원인자 부담금 - // ======================================== - { - columns: [ - // 행정구역 - { name: 'SIDO', fieldName: '시도', header: { text: '시도' } }, - { name: 'GUGUN', fieldName: '시군구', header: { text: '시군구' } }, - - // 부과액 - { name: 'LEVY_CO', fieldName: '건수', header: { text: '건수' } }, - { name: 'LEVY_AMOUNT', fieldName: '금액(백만원)', header: { text: '금액(백만원)' } }, - - // 대상별 징수현황 - 계 - { name: 'TRGET_LEV_STTUS_CO', fieldName: '건수', header: { text: '건수' } }, - { name: 'TRGET_LEV_STTUS_AMOUNT', fieldName: '금액(백만원)', header: { text: '금액(백만원)' } }, - - // 대상별 징수현황 - 배수설비설치자 - { name: 'DRNG_EQP_CO', fieldName: '건수', header: { text: '건수' } }, - { name: 'DRNG_EQP_AMOUNT', fieldName: '금액(백만원)', header: { text: '금액(백만원)' } }, - - // 대상별 징수현황 - 타공사·타행위자 - { name: 'CNTRWK_CO', fieldName: '건수', header: { text: '건수' } }, - { name: 'CNTRWK_AMOUNT', fieldName: '금액(백만원)', header: { text: '금액(백만원)' } }, - - // 비고 및 의견 - { name: 'RMK', fieldName: '비고', header: { text: '비고' } }, - { name: 'CHCKER_OPINION', fieldName: '검토자의견', header: { text: '검토자의견' } }, - { name: 'WRTER_OPINION', fieldName: '사용자의견', header: { text: '사용자의견' } }, - - // 참조 필드 - { name: 'AMNTBRNCSR', fieldName: 'AMNTBRNCSR', header: { text: 'AMNTBRNCSR' } }, - ], - - columnLayout: [ - { - name: 'group_admin', - header: { text: '행정구역' }, - items: ['SIDO', 'GUGUN'] - }, - { - name: 'group_assess', - header: { text: '부과액' }, - items: ['LEVY_CO', 'LEVY_AMOUNT'] - }, - { - name: 'group_collection', - header: { text: '대상별 징수현황' }, - items: [ - { - name: 'coll_group_total', - header: { text: '계' }, - items: ['TRGET_LEV_STTUS_CO', 'TRGET_LEV_STTUS_AMOUNT'] - }, - { - name: 'coll_group_inst', - header: { text: '배수설비설치자(하수도법 제61조 제1항)' }, - items: ['DRNG_EQP_CO', 'DRNG_EQP_AMOUNT'] - }, - { - name: 'coll_group_otr', - header: { text: '타공사·타행위자(하수도법 제61조 제2항)' }, - items: ['CNTRWK_CO', 'CNTRWK_AMOUNT'] - } - ] - }, - 'RMK' - ], - - rowStartNum: 3, - fixedColumns: 1, - tabKey: 'SewerageFinanceMng_tab4', - tabLabel: '원인자 부담금' - }, - -]; \ No newline at end of file diff --git a/apps/st/src/components/util/column/management/sewerageFinance/CauserBurdenMngColumn.ts b/apps/st/src/components/util/column/management/sewerageFinance/CauserBurdenMngColumn.ts new file mode 100644 index 000000000..933ee6795 --- /dev/null +++ b/apps/st/src/components/util/column/management/sewerageFinance/CauserBurdenMngColumn.ts @@ -0,0 +1,76 @@ +import { footerInt, footerDecimal1 } from "@/components/util/grid/footerSummary"; + + // 하수도 통계 관리 > 09.하수도 재정 > tab 4: 원인자 부담금 +export const CauserBurdenMngColumn = { + columns: [ + // 행정구역 + { name: 'SIDO', fieldName: '시도', header: { text: '시도' }, editable: false }, + { name: 'GUGUN', fieldName: '시군구', header: { text: '시군구' }, editable: false, footer: { text: '합계' } }, + + // 부과액 + { name: 'LEVY_CO', fieldName: '건수', header: { text: '건수' }, footer: footerInt }, + { name: 'LEVY_AMOUNT', fieldName: '금액(백만원)', header: { text: '금액(백만원)' }, footer: footerDecimal1 }, + + // 대상별 징수현황 > 계 + { name: 'TRGET_LEV_STTUS_CO', fieldName: '건수', header: { text: '건수' }, editable: false, footer: footerInt }, + { name: 'TRGET_LEV_STTUS_AMOUNT', fieldName: '금액(백만원)', header: { text: '금액(백만원)' }, editable: false, footer: footerDecimal1 }, + + // 대상별 징수현황 > 배수설비설치자 + { name: 'DRNG_EQP_CO', fieldName: '건수', header: { text: '건수' }, footer: footerInt }, + { name: 'DRNG_EQP_AMOUNT', fieldName: '금액(백만원)', header: { text: '금액(백만원)' }, footer: footerDecimal1 }, + + // 대상별 징수현황 > 타공사·타행위자 + { name: 'CNTRWK_CO', fieldName: '건수', header: { text: '건수' }, footer: footerInt }, + { name: 'CNTRWK_AMOUNT', fieldName: '금액(백만원)', header: { text: '금액(백만원)' }, footer: footerDecimal1 }, + + // 비고 + { name: 'RMK', fieldName: '비고', header: { text: '비고' } }, + + // hidden + { name: 'CHCKER_OPINION', fieldName: '검토자의견', header: { text: '검토자의견' } }, + { name: 'WRTER_OPINION', fieldName: '사용자의견', header: { text: '사용자의견' } }, + + // 참조 필드 + { name: 'AMNTBRNCSR', fieldName: 'AMNTBRNCSR', header: { text: 'AMNTBRNCSR' } }, + ], + + columnLayout: [ + { + name: 'group_admin', + header: { text: '행정구역' }, + items: ['SIDO', 'GUGUN'] + }, + { + name: 'group_assess', + header: { text: '부과액' }, + items: ['LEVY_CO', 'LEVY_AMOUNT'] + }, + { + name: 'group_collection', + header: { text: '대상별 징수현황' }, + items: [ + { + name: 'coll_group_total', + header: { text: '계' }, + items: ['TRGET_LEV_STTUS_CO', 'TRGET_LEV_STTUS_AMOUNT'] + }, + { + name: 'coll_group_inst', + header: { text: '배수설비설치자(하수도법 제61조 제1항)' }, + items: ['DRNG_EQP_CO', 'DRNG_EQP_AMOUNT'] + }, + { + name: 'coll_group_otr', + header: { text: '타공사·타행위자(하수도법 제61조 제2항)' }, + items: ['CNTRWK_CO', 'CNTRWK_AMOUNT'] + } + ] + }, + 'RMK' + ], + + rowStartNum: 3, + fixedColumns: 1, + tabKey: 'CauserBurdenMng', + tabLabel: '원인자 부담금' +}; \ No newline at end of file diff --git a/apps/st/src/components/util/column/management/sewerageFinance/SewerageChargeMngColumn.ts b/apps/st/src/components/util/column/management/sewerageFinance/SewerageChargeMngColumn.ts new file mode 100644 index 000000000..6accb21d1 --- /dev/null +++ b/apps/st/src/components/util/column/management/sewerageFinance/SewerageChargeMngColumn.ts @@ -0,0 +1,48 @@ +import { footerDecimal1 } from "@/components/util/grid/footerSummary"; + +// 하수도 통계 관리 > 09.하수도 재정 > tab 2: 하수도 요금 +export const SewerageChargeMngColumn = { + columns: [ + // 행정구역 + { name: 'SIDO', fieldName: '시도', header: { text: '시도' }, editable: false }, + { name: 'GUGUN', fieldName: '시군구', header: { text: '시군구' }, editable: false, footer: { text: '합계' } }, + + // 요금 + { name: 'FYER_LEVY_QY', fieldName: '연간조정량(m³)(A)', header: { text: '연간조정량(m³)(A)' }, footer: footerDecimal1 }, + { name: 'LEVY_AMOUNT', fieldName: '하수도사용료수익(원)(B)', header: { text: '하수도사용료수익(원)(B)' }, footer: footerDecimal1 }, + { name: 'AVRG_UNTPC', fieldName: 'm³당요금(원/m³) C=(B/A)', header: { text: 'm³당요금(원/m³) C=(B/A)' }, editable: false, footer: footerDecimal1 }, + + { name: 'SMRIZE_PRMPC', fieldName: '총괄원가(원)(D)', header: { text: '총괄원가(원)(D)' }, footer: footerDecimal1 }, + { name: 'SMRIZE_UNIT_PRMPC', fieldName: 'm³당원가(원/m³) E=(D/A)', header: { text: 'm³당원가(원/m³) E=(D/A)' }, editable: false, footer: footerDecimal1 }, + { name: 'RLTY_RT', fieldName: '요금현실화율(%) F=(C/E*100)', header: { text: '요금현실화율(%) F=(C/E*100)' }, editable: false, footer: footerDecimal1 }, + + // 비고 + { name: 'RMK', fieldName: '비고', header: { text: '비고' } }, + + // hidden + { name: 'CHCKER_OPINION', fieldName: '검토자의견', header: { text: '검토자의견' }, footer: footerDecimal1 }, + { name: 'WRTER_OPINION', fieldName: '사용자의견', header: { text: '사용자의견' }, footer: footerDecimal1 }, + + // 참조 필드 + { name: 'SEWER_RNTFEE', fieldName: 'SEWER_RNTFEE', header: { text: 'SEWER_RNTFEE' }, footer: footerDecimal1 }, + { name: 'C_LEVY_AMOUNT', fieldName: 'C_LEVY_AMOUNT', header: { text: 'C_LEVY_AMOUNT' }, footer: footerDecimal1 }, + ], + columnLayout: [ + { + name: 'group_admin', + header: { text: '행정구역' }, + items: ['SIDO', 'GUGUN'] + }, + 'FYER_LEVY_QY', + 'LEVY_AMOUNT', + 'AVRG_UNTPC', + 'SMRIZE_PRMPC', + 'SMRIZE_UNIT_PRMPC', + 'RLTY_RT', + 'RMK' + ], + rowStartNum: 2, + fixedColumns: 1, + tabKey: 'SewerageChargeMng', + tabLabel: '하수도 요금' +}; \ No newline at end of file diff --git a/apps/st/src/components/util/column/management/sewerageFinance/SewerageFinanceSettlementMngColumn.ts b/apps/st/src/components/util/column/management/sewerageFinance/SewerageFinanceSettlementMngColumn.ts new file mode 100644 index 000000000..af32862bf --- /dev/null +++ b/apps/st/src/components/util/column/management/sewerageFinance/SewerageFinanceSettlementMngColumn.ts @@ -0,0 +1,149 @@ +import { footerDecimal1 } from "@/components/util/grid/footerSummary"; + +// 하수도 통계 관리 > 09.하수도 재정 > tab 1: 하수도 재정 결산 +export const SewerageFinanceSettlementMngColumn = { + columns: [ + // 행정구역 + { name: 'SIDO', fieldName: '시도', header: { text: '시도' }, editable: false }, + { name: 'GUGUN', fieldName: '시군구', header: { text: '시군구' }, editable: false, footer: { text: '합계' } }, + + // 재정별 사업비 + { name: 'FNANC_WCT_SM', fieldName: '계', header: { text: '계' }, editable: false, footer: footerDecimal1 }, + { name: 'NTNXPN', fieldName: '중앙정부지원액', header: { text: '중앙정부지원액' }, footer: footerDecimal1 }, + + // 재정별 사업비 > 지방비 + { name: 'LCLEXPNS', fieldName: '특·광역시, 도', header: { text: '특·광역시, 도' }, footer: footerDecimal1 }, + { name: 'LCLTY_CT', fieldName: '시,군,구 지자체', header: { text: '시,군,구 지자체' }, footer: footerDecimal1 }, + + // 재정별 사업비 + { name: 'SEWER_RNTFEE', fieldName: '하수도사용료', header: { text: '하수도사용료' }, footer: footerDecimal1 }, + { name: 'AMNTBRNCSR', fieldName: '원인자부담금', header: { text: '원인자부담금' }, footer: footerDecimal1 }, + { name: 'ETC_INCME', fieldName: '기타잡수입', header: { text: '기타잡수입' }, footer: footerDecimal1 }, + { name: 'CYFD_AMOUNT', fieldName: '이월액', header: { text: '이월액' }, footer: footerDecimal1 }, + + // 부채액 + { name: 'DEBT_AMOUNT', fieldName: '부채액(백만원)', header: { text: '부채액(백만원)' }, footer: footerDecimal1 }, + + // 용도별사업비 > 계 + { name: 'PRPOS_WCT_SM', fieldName: '계', header: { text: '계' }, editable: false, footer: footerDecimal1 }, + + // 용도별사업비 > 처리장 + { name: 'PRCPLT_SM', fieldName: '소계', header: { text: '소계' }, editable: false, footer: footerDecimal1 }, + { name: 'PRCPLT_FCLTY', fieldName: '시설비', header: { text: '시설비' }, footer: footerDecimal1 }, + { name: 'PRCPLT_RPAIR', fieldName: '개보수비', header: { text: '개보수비' }, footer: footerDecimal1 }, + { name: 'PRCPLT_ORPNS', fieldName: '운영유지비', header: { text: '운영유지비' }, footer: footerDecimal1 }, + { name: 'PRCPLT_ETC', fieldName: '기타', header: { text: '기타' }, footer: footerDecimal1 }, + + // 용도별사업비 > 하수관로 + { name: 'SEWAGE_SM', fieldName: '소계', header: { text: '소계' }, editable: false, footer: footerDecimal1 }, + { name: 'SEWAGE_FCLTY', fieldName: '시설비', header: { text: '시설비' }, footer: footerDecimal1 }, + { name: 'SEWAGE_RPAIR', fieldName: '개보수비', header: { text: '개보수비' }, footer: footerDecimal1 }, + { name: 'SEWAGE_ORPNS', fieldName: '운영유지비', header: { text: '운영유지비' }, footer: footerDecimal1 }, + { name: 'SEWAGE_ETC', fieldName: '기타', header: { text: '기타' }, footer: footerDecimal1 }, + + // 용도별사업비 > 하수저류시설 + { name: 'SWGE_STRGE_SM', fieldName: '소계', header: { text: '소계' }, editable: false, footer: footerDecimal1 }, + { name: 'SWGE_STRGE_FCLTY', fieldName: '시설비', header: { text: '시설비' }, footer: footerDecimal1 }, + { name: 'SWGE_STRGE_RPAIR', fieldName: '개보수비', header: { text: '개보수비' }, footer: footerDecimal1 }, + { name: 'SWGE_STRGE_ORPNS', fieldName: '운영유지비', header: { text: '운영유지비' }, footer: footerDecimal1 }, + { name: 'SWGE_STRGE_ETC', fieldName: '기타', header: { text: '기타' }, footer: footerDecimal1 }, + + // 용도별사업비 > 기타 + { name: 'ETC_SM', fieldName: '소계', header: { text: '소계' }, editable: false, footer: footerDecimal1 }, + { name: 'ACDNT_CYFD_AMOUNT', fieldName: '사고이월액', header: { text: '사고이월액' }, footer: footerDecimal1 }, + { name: 'UNRCIV_AMOUNT', fieldName: '미수납액', header: { text: '미수납액' }, footer: footerDecimal1 }, + { name: 'ETC_AMOUNT', fieldName: '기타', header: { text: '기타' }, footer: footerDecimal1 }, + + // 비고 + { name: 'RMK', fieldName: '비고', header: { text: '비고' } }, + + // hidden + { name: 'CHCKER_OPINION', fieldName: '검토자의견', header: { text: '검토자의견' }, footer: footerDecimal1 }, + { name: 'WRTER_OPINION', fieldName: '사용자의견', header: { text: '사용자의견' }, footer: footerDecimal1 }, + + // 참조 필드 + { name: 'B_LEVY_AMOUNT', fieldName: 'B_LEVY_AMOUNT', header: { text: 'B_LEVY_AMOUNT' }, footer: footerDecimal1 }, + { name: 'C_LEVY_AMOUNT', fieldName: 'C_LEVY_AMOUNT', header: { text: 'C_LEVY_AMOUNT' }, footer: footerDecimal1 }, + { name: 'D_LEVY_AMOUNT', fieldName: 'D_LEVY_AMOUNT', header: { text: 'D_LEVY_AMOUNT' }, footer: footerDecimal1 }, + ], + 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: 'SewerageFinanceSettlementMng', + tabLabel: '하수도재정 결산' +}; \ No newline at end of file diff --git a/apps/st/src/components/util/column/management/sewerageFinance/SewerageUsageFeeMngColumn.ts b/apps/st/src/components/util/column/management/sewerageFinance/SewerageUsageFeeMngColumn.ts new file mode 100644 index 000000000..98c148851 --- /dev/null +++ b/apps/st/src/components/util/column/management/sewerageFinance/SewerageUsageFeeMngColumn.ts @@ -0,0 +1,237 @@ +import { footerDecimal1 } from "@/components/util/grid/footerSummary"; + +// 하수도 통계 관리 > 09.하수도 재정 > tab 3: 하수도 사용료 +export const SewerageUsageFeeMngColumn = { + columns: [ + // 행정구역 + { name: 'SIDO', fieldName: '시도', header: { text: '시도' }, editable: false }, + { name: 'GUGUN', fieldName: '시군구', header: { text: '시군구' }, editable: false, footer: { text: '합계' } }, + + // 총계 + { name: 'LEVY_AMOUNT', fieldName: '(백만원)', header: { text: '(백만원)' }, editable: false, footer: footerDecimal1 }, + { name: 'LEVY_QY', fieldName: '(천톤)', header: { text: '(천톤)' }, editable: false, footer: footerDecimal1 }, + + // 가정용 + { name: 'HOME_LEVY_AMOUNT', fieldName: '(백만원)', header: { text: '(백만원)' }, footer: footerDecimal1 }, + { name: 'HOME_LEVY_QY', fieldName: '(천톤)', header: { text: '(천톤)' }, footer: footerDecimal1 }, + { name: 'HOME_UNTPC', fieldName: '(원/톤)', header: { text: '(원/톤)' }, editable: false, footer: footerDecimal1 }, + + // 업무용 + { name: 'JOB_LEVY_AMOUNT', fieldName: '(백만원)', header: { text: '(백만원)' }, footer: footerDecimal1 }, + { name: 'JOB_LEVY_QY', fieldName: '(천톤)', header: { text: '(천톤)' }, footer: footerDecimal1 }, + { name: 'JOB_UNTPC', fieldName: '(원/톤)', header: { text: '(원/톤)' }, editable: false, footer: footerDecimal1 }, + + // 영업용(일반용) + { name: 'BSN_LEVY_AMOUNT', fieldName: '(백만원)', header: { text: '(백만원)' }, footer: footerDecimal1 }, + { name: 'BSN_LEVY_QY', fieldName: '(천톤)', header: { text: '(천톤)' }, footer: footerDecimal1 }, + { name: 'BSN_UNTPC', fieldName: '(원/톤)', header: { text: '(원/톤)' }, editable: false, footer: footerDecimal1 }, + + // 욕탕1종(대중탕용) + { name: 'BATHS1_LEVY_AMOUNT', fieldName: '(백만원)', header: { text: '(백만원)' }, footer: footerDecimal1 }, + { name: 'BATHS1_LEVY_QY', fieldName: '(천톤)', header: { text: '(천톤)' }, footer: footerDecimal1 }, + { name: 'BATHS1_UNTPC', fieldName: '(원/톤)', header: { text: '(원/톤)' }, editable: false, footer: footerDecimal1 }, + + // 욕탕2종 + { name: 'PBBATH_LEVY_AMOUNT', fieldName: '(백만원)', header: { text: '(백만원)' }, footer: footerDecimal1 }, + { name: 'PBBATH_LEVY_QY', fieldName: '(천톤)', header: { text: '(천톤)' }, footer: footerDecimal1 }, + { name: 'PBBATH_UNTPC', fieldName: '(원/톤)', header: { text: '(원/톤)' }, editable: false, footer: footerDecimal1 }, + + // 산업 및 공업용 + { name: 'INDUST_LEVY_AMOUNT', fieldName: '(백만원)', header: { text: '(백만원)' }, footer: footerDecimal1 }, + { name: 'INDUST_LEVY_QY', fieldName: '(천톤)', header: { text: '(천톤)' }, footer: footerDecimal1 }, + { name: 'INDUST_UNTPC', fieldName: '(원/톤)', header: { text: '(원/톤)' }, editable: false, footer: footerDecimal1 }, + + // 기타 + { name: 'ETC_LEVY_AMOUNT', fieldName: '(백만원)', header: { text: '(백만원)' }, footer: footerDecimal1 }, + { name: 'ETC_LEVY_QY', fieldName: '(천톤)', header: { text: '(천톤)' }, footer: footerDecimal1 }, + { name: 'ETC_UNTPC', fieldName: '(원/톤)', header: { text: '(원/톤)' }, editable: false, footer: footerDecimal1 }, + + // 비고 + { name: 'RMK', fieldName: '비고', header: { text: '비고' } }, + + // hidden + { name: 'CHCKER_OPINION', fieldName: '검토자의견', header: { text: '검토자의견' } }, + { name: 'WRTER_OPINION', fieldName: '사용자의견', header: { text: '사용자의견' } }, + + // 참조 필드 + { name: 'SEWER_RNTFEE', fieldName: 'SEWER_RNTFEE', header: { text: 'SEWER_RNTFEE' } }, + { name: 'B_LEVY_AMOUNT', fieldName: 'B_LEVY_AMOUNT', header: { text: 'B_LEVY_AMOUNT' } }, + ], + + columnLayout: [ + { + name: 'group_admin', + header: { text: '행정구역' }, + items: ['SIDO', 'GUGUN'] + }, + { + name: 'group_total', + header: { text: '총계' }, + items: [ + { + name: 'total_amount', + header: { text: '부과액' }, + items: ['LEVY_AMOUNT'] + }, + { + name: 'total_qty', + header: { text: '부과량' }, + items: ['LEVY_QY'] + } + ] + }, + { + name: 'group_home', + header: { text: '가 정 용' }, + items: [ + { + name: 'home_amount', + header: { text: '부과액' }, + items: ['HOME_LEVY_AMOUNT'] + }, + { + name: 'home_qty', + header: { text: '부과량' }, + items: ['HOME_LEVY_QY'] + }, + { + name: 'home_price', + header: { text: '단가' }, + items: ['HOME_UNTPC'] + } + ] + }, + { + name: 'group_job', + header: { text: '업 무 용' }, + items: [ + { + name: 'job_amount', + header: { text: '부과액' }, + items: ['JOB_LEVY_AMOUNT'] + }, + { + name: 'job_qty', + header: { text: '부과량' }, + items: ['JOB_LEVY_QY'] + }, + { + name: 'job_price', + header: { text: '단가' }, + items: ['JOB_UNTPC'] + } + ] + }, + { + name: 'group_business', + header: { text: '영 업 용(일 반 용)' }, + items: [ + { + name: 'bsn_amount', + header: { text: '부과액' }, + items: ['BSN_LEVY_AMOUNT'] + }, + { + name: 'bsn_qty', + header: { text: '부과량' }, + items: ['BSN_LEVY_QY'] + }, + { + name: 'bsn_price', + header: { text: '단가' }, + items: ['BSN_UNTPC'] + } + ] + }, + { + name: 'group_baths1', + header: { text: '욕 탕 1종(대중탕용)' }, + items: [ + { + name: 'baths1_amount', + header: { text: '부과액' }, + items: ['BATHS1_LEVY_AMOUNT'] + }, + { + name: 'baths1_qty', + header: { text: '부과량' }, + items: ['BATHS1_LEVY_QY'] + }, + { + name: 'baths1_price', + header: { text: '단가' }, + items: ['BATHS1_UNTPC'] + } + ] + }, + { + name: 'group_pbbath', + header: { text: '욕 탕 2종' }, + items: [ + { + name: 'pbbath_amount', + header: { text: '부과액' }, + items: ['PBBATH_LEVY_AMOUNT'] + }, + { + name: 'pbbath_qty', + header: { text: '부과량' }, + items: ['PBBATH_LEVY_QY'] + }, + { + name: 'pbbath_price', + header: { text: '단가' }, + items: ['PBBATH_UNTPC'] + } + ] + }, + { + name: 'group_industry_all', + header: { text: '산업 및 공업용' }, + items: [ + { + name: 'indust_amount', + header: { text: '부과액' }, + items: ['INDUST_LEVY_AMOUNT'] + }, + { + name: 'indust_qty', + header: { text: '부과량' }, + items: ['INDUST_LEVY_QY'] + }, + { + name: 'indust_price', + header: { text: '단가' }, + items: ['INDUST_UNTPC'] + } + ] + }, + { + name: 'group_etc', + header: { text: '기타' }, + items: [ + { + name: 'etc_amount', + header: { text: '부과액' }, + items: ['ETC_LEVY_AMOUNT'] + }, + { + name: 'etc_qty', + header: { text: '부과량' }, + items: ['ETC_LEVY_QY'] + }, + { + name: 'etc_price', + header: { text: '단가' }, + items: ['ETC_UNTPC'] + } + ] + }, + 'RMK' + ], + + rowStartNum: 3, + fixedColumns: 1, + tabKey: 'SewerageUsageFeeMng', + tabLabel: '하수도 사용료' +}; \ No newline at end of file