Merge remote-tracking branch 'origin/eunsun' into iipbs/st/dev

This commit is contained in:
2025-12-29 16:11:02 +09:00
10 changed files with 815 additions and 0 deletions
@@ -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 (
<>
<SearchForm userMenual={true} />
<div className="flex justify-end items-center gap-[0.6rem] m-[0.6rem]">
<SubmitExceptionButton SubmitExceptionFunc={submitExceptionFunc} />
<LastYearDataButton getLastYearDataFunc={getLastYearDataFunc} />
</div>
<div className="flex justify-end items-center gap-[0.6rem] m-[0.6rem]">
<SaveButton saveFunc={saveFunc} />
<SubmitButton submitFunc={submitFunc} />
</div>
<DataGrid columnInfo={{ columns, columnLayout }} rowStartNum={2} fixedColumns={2} isExcelImport={true} />
</>
);
};
@@ -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 (
<>
<SearchForm userMenual={true} />
<div className="flex justify-end items-center gap-[0.6rem] m-[0.6rem]">
<SubmitExceptionButton SubmitExceptionFunc={submitExceptionFunc} />
<LastYearDataButton getLastYearDataFunc={lastYearDataFunc} />
<SaveButton saveFunc={saveFunc} />
<SubmitButton submitFunc={submitFunc} />
</div>
<TabDataGrid columnInfo={PrivateSewageFacilityMngColumnInfoList} />
</>
);
};
@@ -1,5 +1,6 @@
import SearchForm from "@/components/module/SearchForm";
// 하수도 통계 관리 > 12. 하수 및 분뇨관련산업
const SewageExcretaRelatedMng = () => {
return (
<>
@@ -1,5 +1,6 @@
import SearchForm from "@/components/module/SearchForm";
// 하수도 통계 관리 > 11. 하수 및 분뇨찌꺼기(슬러지)처리
const SewageExcretaSlurgeMng = () => {
return (
<>
@@ -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 (
<>
<SearchForm userMenual={true} />
<div className="flex justify-end items-center gap-[0.6rem] m-[0.6rem]">
<SubmitExceptionButton SubmitExceptionFunc={submitExceptionFunc} />
<LastYearDataButton getLastYearDataFunc={lastYearDataFunc} />
<SaveButton saveFunc={saveFunc} />
<SubmitButton submitFunc={submitFunc} />
</div>
<TabDataGrid columnInfo={SewerageFinanceMngInfoList} />
</>
);
};
@@ -1,5 +1,6 @@
import SearchForm from "../../module/SearchForm";
// 하수도 통계 관리 > 13. 하수도 서비스 수준
const SewerageServiceLevelMng = () => {
return (
<>
@@ -1,5 +1,8 @@
import SearchForm from "../../module/SearchForm";
import { WaterReuseMngColumnInfoList } from "@/components/util/column/WaterReuseMngColumn";
// 하수도 통계 관리 > 10. 물 재이용
const WaterReuseMng = () => {
return (
<>
@@ -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: '개인하수도 관리지역 지정공고 현황'
}
];
@@ -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: '하수도재정 결산'
},
];
@@ -0,0 +1,8 @@
/**
* 하수도 통계 관리 > 10. 물 재이용
* 5개 Tab: 컬럼 통합 관리
*/
export const WaterReuseMngColumnInfoList = [];
// ========================================
// Tab 1: 공공하수처리수 재이용
// ========================================