feat:
- 하수관로, 하수맨홀, 하수펌프장, 우수토실 검색 구현 - env.development 프록시 호스트 변경
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
NEXT_PUBLIC_SITE_ID = SN
|
||||
NEXT_PUBLIC_PORT = 11302
|
||||
NEXT_PUBLIC_PROXY_HOST = http://con.mind-one.co.kr:11302
|
||||
NEXT_PUBLIC_PROXY_HOST = http://dev.onasys.co.kr:8000
|
||||
NEXT_PUBLIC_SERVER_API_URL = http://dev.onasys.co.kr:8000
|
||||
NEXT_PUBLIC_GEOSERVER_URL = http://rsone.iptime.org:10010/geoserver
|
||||
NEXT_PUBLIC_LX_GEOSERVER_URL = http://con.mind-one.co.kr:11306/geoserver #TODO 운영에서 바꿔야 함
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import FeatureClickEventPopup from './featureClickEventPopup';
|
||||
import React, { useState } from 'react';
|
||||
import React, { useEffect, useState } from 'react';
|
||||
import axios from 'axios';
|
||||
import { UiModal, UiTable } from '@common/business_components/ui';
|
||||
import { Button, Input, Label } from '@common/components';
|
||||
@@ -8,7 +8,7 @@ import { UITab2 } from '@common/business_components/ui/tab/index-2';
|
||||
import { SelectBox2 } from '@common/business_components/ui/select/index-2';
|
||||
import { YearRangeSelectBox } from '@/components/ui/YearRangeSelectBox';
|
||||
import { SidoSigunguSelectBox } from '@/components/ui/SidoSigunguSelectBox';
|
||||
import { SwtrmtFcltCol, SwtrmtPrcsZoneCol } from './components/common/table';
|
||||
import { MsSwagePplCol2, SwtrmtFcltCol2, SwtrmtPrcsZoneCol2, MsSwageMhlCol2, SewagePump2, stofcbr2 } from './components/common/table';
|
||||
import LoadingOverlay from '@/components/ui/LoadingBar';
|
||||
|
||||
const API_URL = `${process.env.NEXT_PUBLIC_SEWERAGE_API_URL}`;
|
||||
@@ -24,10 +24,11 @@ const BASIC_TYPES = [
|
||||
{ val: "tb_ms_swage_ppl", text: "하수관로" },
|
||||
{ val: "tb_il_swage_prcs_fclt", text: "하수처리시설" },
|
||||
{ val: "tb_ms_swage_prcs_zone", text: "하수처리구역" },
|
||||
{ val: "tb_ms_swage_mh", text: "하수맨홀" },
|
||||
{ val: "tb_ms_swage_psmtn_1", text: "오수펌프" },
|
||||
{ val: "tb_ms_swage_psmtn_2", text: "빗물펌프" },
|
||||
{ val: "tb_ms_otfl", text: "우수토실" },
|
||||
{ val: "tb_ms_swage_mhl", text: "하수맨홀" },
|
||||
{ val: "tb_ms_swage_pmstn", text: "하수펌프장" },
|
||||
// { val: "tb_ms_swage_psmtn_1", text: "오수펌프" },
|
||||
// { val: "tb_ms_swage_psmtn_2", text: "빗물펌프" },
|
||||
{ val: "tb_ms_stofcbr", text: "우수토실" },
|
||||
];
|
||||
// 운영정보 '구분' 선택 목록
|
||||
const WORK_TYPES = [
|
||||
@@ -165,13 +166,15 @@ const SearchModal: React.FC<SearchModalProps> = ({
|
||||
const todayDate = today.getDate().toString().padStart(2, "0");
|
||||
|
||||
// UiTable2에 넘길 headlist를 BASIC_TYPES 값에 따라 분기 처리
|
||||
let dynamicHeadlist = SwtrmtPrcsZoneCol; // default 값
|
||||
let dynamicHeadlist = MsSwagePplCol2; // default 값
|
||||
if (activeTab === 'operation') dynamicHeadlist = operationTableHeadlist; // 운영정보
|
||||
else if (activeTab === 'report') dynamicHeadlist = reportTableHeadlist; // 하수도정비기본계획보고서
|
||||
else if (basicType === 'tb_ms_swage_ppl') dynamicHeadlist = swagePplTableHeadlist; // 하수관로
|
||||
else if (basicType === 'tb_il_swage_prcs_fclt') dynamicHeadlist = SwtrmtFcltCol; // 하수처리시설
|
||||
else if (basicType === 'tb_ms_swage_prcs_zone') dynamicHeadlist = SwtrmtPrcsZoneCol; // 하수처리구역
|
||||
else if (basicType === 'tb_ms_swage_mh') dynamicHeadlist = swageMhTableHeadlist; // 하수맨홀
|
||||
else if (basicType === 'tb_ms_swage_ppl') dynamicHeadlist = MsSwagePplCol2; // 하수관로
|
||||
else if (basicType === 'tb_il_swage_prcs_fclt') dynamicHeadlist = SwtrmtFcltCol2; // 하수처리시설
|
||||
else if (basicType === 'tb_ms_swage_prcs_zone') dynamicHeadlist = SwtrmtPrcsZoneCol2; // 하수처리구역
|
||||
else if (basicType === 'tb_ms_swage_mhl') dynamicHeadlist = MsSwageMhlCol2; // 하수맨홀
|
||||
else if (basicType === 'tb_ms_swage_pmstn') dynamicHeadlist = SewagePump2; // 하수펌프장
|
||||
else if (basicType === 'tb_ms_stofcbr') dynamicHeadlist = stofcbr2; // 우수토실
|
||||
|
||||
// 조회 버튼 클릭 시 1페이지로 이동하도록 수정
|
||||
const handleSearch = () => {
|
||||
@@ -189,7 +192,7 @@ const SearchModal: React.FC<SearchModalProps> = ({
|
||||
};
|
||||
|
||||
// 구분(basicType)이 바뀔 때마다 queryParams, filterParams 초기화
|
||||
React.useEffect(() => {
|
||||
useEffect(() => {
|
||||
// filterParams 초기화
|
||||
// setFilterParams({});
|
||||
set시작1("");
|
||||
@@ -219,7 +222,7 @@ const SearchModal: React.FC<SearchModalProps> = ({
|
||||
}, [activeTab, basicType]);
|
||||
|
||||
// 페이지 변경 시마다 데이터 fetch
|
||||
React.useEffect(() => {
|
||||
useEffect(() => {
|
||||
// showTable이 true일 때만 fetch (최초 렌더 방지)
|
||||
if (showTable) {
|
||||
fetchFilteredData(); // 실제 API 사용 시
|
||||
@@ -227,38 +230,82 @@ const SearchModal: React.FC<SearchModalProps> = ({
|
||||
}
|
||||
}, [curPage]);
|
||||
|
||||
// 검색 API 호출 함수
|
||||
const fetchFilteredData = async () => {
|
||||
setIsLoading(true); // 로딩 시작
|
||||
try {
|
||||
const queryParams = new URLSearchParams({
|
||||
lyrTypeNm: basicType,
|
||||
page: `${curPage - 1}`,
|
||||
size: '10',
|
||||
sort: 'string',
|
||||
});
|
||||
|
||||
let cqlFilters: string[] = [];
|
||||
if (activeTab === 'basic') {
|
||||
if (basicType === 'tb_ms_swage_prcs_zone') cqlFilters = zoneCqlFilters(); // 하수처리구역
|
||||
else if (basicType === 'tb_il_swage_prcs_fclt') cqlFilters = facilityCqlFilters(); // 하수처리시설
|
||||
else if (basicType === 'tb_ms_swage_ppl') cqlFilters = pplCqlFilters(); // 하수관로
|
||||
else if (basicType === 'tb_ms_swage_mhl') cqlFilters = mhCqlFilters(); // 하수맨홀
|
||||
else if (basicType === 'tb_ms_swage_pmstn') cqlFilters = psmtnCqlFilters(); // 하수펌프장
|
||||
else if (basicType === 'tb_ms_stofcbr') cqlFilters = otflCqlFilters(); // 우수토실
|
||||
} else if (activeTab === 'operation') {
|
||||
cqlFilters = zoneCqlFilters();
|
||||
} else {
|
||||
cqlFilters = reportCqlFilters();
|
||||
}
|
||||
|
||||
if (cqlFilters.length > 0) queryParams.append('cqlFiter', cqlFilters.join(' and '));
|
||||
|
||||
console.log('API URL:', `${API_URL}/v1/fclts?${queryParams.toString()}`);
|
||||
const res = await axios.get(`${API_URL}/v1/fclts?${queryParams.toString()}`);
|
||||
console.log('필터링된 API 결과(개수):', res.data.count);
|
||||
console.log('필터링된 API 결과(데이터):', res.data.data);
|
||||
|
||||
setTableData(res.data.data || []);
|
||||
setTableCount(res.data.count || []);
|
||||
console.log('tableCount 상태 업데이트 후:', res.data.count); // tableCount 로그 추가
|
||||
setShowTable(true);
|
||||
} catch (err) {
|
||||
console.error('API ERROR:', err);
|
||||
setTableData([]);
|
||||
} finally {
|
||||
setIsLoading(false); // 로딩 종료
|
||||
}
|
||||
};
|
||||
|
||||
// 하수관로용 CQL 필터 생성
|
||||
const pplCqlFilters = () => {
|
||||
const cqlFilters: string[] = [];
|
||||
// 추후 작성 예정
|
||||
if (변수1) cqlFilters.push(`용도코드='${변수1}'`);
|
||||
if (변수2) cqlFilters.push(`재질코드='${변수2}'`);
|
||||
if (변수3) cqlFilters.push(`행정읍면동코드='${변수3}'`);
|
||||
if (변수4) cqlFilters.push(`경과년도='${변수4}'`);
|
||||
// 설치년도 범위
|
||||
const startDate = getDateString(
|
||||
yearFilter.시작,
|
||||
가동개시_시작_월,
|
||||
가동개시_시작_일,
|
||||
"19000101",
|
||||
);
|
||||
const endDate = getDateString(
|
||||
yearFilter.종료,
|
||||
가동개시_종료_월,
|
||||
가동개시_종료_일,
|
||||
`${todayYear}${todayMonth}${todayDate}`,
|
||||
);
|
||||
cqlFilters.push(
|
||||
`설치시작년도 >= '${startDate}' and 설치시작년도 <= '${endDate}'`,
|
||||
);
|
||||
// 관경(mm) 범위
|
||||
if (시작1 && 종료1) cqlFilters.push(`관경 BETWEEN ${시작1} AND ${종료1}`);
|
||||
else if (시작1) cqlFilters.push(`관경 >= ${시작1}`);
|
||||
else if (종료1) cqlFilters.push(`관경 <= ${종료1}`);
|
||||
// 연장(m) 범위
|
||||
if (시작2 && 종료2) cqlFilters.push(`연장 BETWEEN ${시작2} AND ${종료2}`);
|
||||
else if (시작2) cqlFilters.push(`연장 >= ${시작2}`);
|
||||
else if (종료2) cqlFilters.push(`연장 <= ${종료2}`);
|
||||
// if (변수1) cqlFilters.push(`용도코드='${변수1}'`);
|
||||
// if (변수2) cqlFilters.push(`재질코드='${변수2}'`);
|
||||
// if (변수3) cqlFilters.push(`행정읍면동코드='${변수3}'`);
|
||||
// if (변수4) cqlFilters.push(`경과년도='${변수4}'`);
|
||||
// // 설치년도 범위
|
||||
// const startDate = getDateString(
|
||||
// yearFilter.시작,
|
||||
// 가동개시_시작_월,
|
||||
// 가동개시_시작_일,
|
||||
// "19000101",
|
||||
// );
|
||||
// const endDate = getDateString(
|
||||
// yearFilter.종료,
|
||||
// 가동개시_종료_월,
|
||||
// 가동개시_종료_일,
|
||||
// `${todayYear}${todayMonth}${todayDate}`,
|
||||
// );
|
||||
// cqlFilters.push(
|
||||
// `설치시작년도 >= '${startDate}' and 설치시작년도 <= '${endDate}'`,
|
||||
// );
|
||||
// // 관경(mm) 범위
|
||||
// if (시작1 && 종료1) cqlFilters.push(`관경 BETWEEN ${시작1} AND ${종료1}`);
|
||||
// else if (시작1) cqlFilters.push(`관경 >= ${시작1}`);
|
||||
// else if (종료1) cqlFilters.push(`관경 <= ${종료1}`);
|
||||
// // 연장(m) 범위
|
||||
// if (시작2 && 종료2) cqlFilters.push(`연장 BETWEEN ${시작2} AND ${종료2}`);
|
||||
// else if (시작2) cqlFilters.push(`연장 >= ${시작2}`);
|
||||
// else if (종료2) cqlFilters.push(`연장 <= ${종료2}`);
|
||||
|
||||
return cqlFilters;
|
||||
};
|
||||
@@ -302,28 +349,28 @@ const SearchModal: React.FC<SearchModalProps> = ({
|
||||
// 하수맨홀용 CQL 필터 생성
|
||||
const mhCqlFilters = () => {
|
||||
const cqlFilters: string[] = [];
|
||||
// 설치년도 범위
|
||||
const startDate = getDateString(
|
||||
yearFilter.시작,
|
||||
가동개시_시작_월,
|
||||
가동개시_시작_일,
|
||||
"19000101",
|
||||
);
|
||||
const endDate = getDateString(
|
||||
yearFilter.종료,
|
||||
가동개시_종료_월,
|
||||
가동개시_종료_일,
|
||||
`${todayYear}${todayMonth}${todayDate}`,
|
||||
);
|
||||
cqlFilters.push(
|
||||
`설치시작년도 >= '${startDate}' and 설치시작년도 <= '${endDate}'`,
|
||||
);
|
||||
if (변수1) cqlFilters.push(`경과년도='${변수1}'`);
|
||||
if (변수2) cqlFilters.push(`용도코드='${변수2}'`);
|
||||
// 구경(mm) 범위
|
||||
if (시작1 && 종료1) cqlFilters.push(`구경 BETWEEN ${시작1} AND ${종료1}`);
|
||||
else if (시작1) cqlFilters.push(`구경 >= ${시작1}`);
|
||||
else if (종료1) cqlFilters.push(`구경 <= ${종료1}`);
|
||||
// // 설치년도 범위
|
||||
// const startDate = getDateString(
|
||||
// yearFilter.시작,
|
||||
// 가동개시_시작_월,
|
||||
// 가동개시_시작_일,
|
||||
// "19000101",
|
||||
// );
|
||||
// const endDate = getDateString(
|
||||
// yearFilter.종료,
|
||||
// 가동개시_종료_월,
|
||||
// 가동개시_종료_일,
|
||||
// `${todayYear}${todayMonth}${todayDate}`,
|
||||
// );
|
||||
// cqlFilters.push(
|
||||
// `설치시작년도 >= '${startDate}' and 설치시작년도 <= '${endDate}'`,
|
||||
// );
|
||||
// if (변수1) cqlFilters.push(`경과년도='${변수1}'`);
|
||||
// if (변수2) cqlFilters.push(`용도코드='${변수2}'`);
|
||||
// // 구경(mm) 범위
|
||||
// if (시작1 && 종료1) cqlFilters.push(`구경 BETWEEN ${시작1} AND ${종료1}`);
|
||||
// else if (시작1) cqlFilters.push(`구경 >= ${시작1}`);
|
||||
// else if (종료1) cqlFilters.push(`구경 <= ${종료1}`);
|
||||
|
||||
return cqlFilters;
|
||||
};
|
||||
@@ -331,32 +378,32 @@ const SearchModal: React.FC<SearchModalProps> = ({
|
||||
const psmtnCqlFilters = () => {
|
||||
const cqlFilters: string[] = [];
|
||||
// 설치년도 범위
|
||||
const startDate = getDateString(
|
||||
yearFilter.시작,
|
||||
가동개시_시작_월,
|
||||
가동개시_시작_일,
|
||||
"19000101",
|
||||
);
|
||||
const endDate = getDateString(
|
||||
yearFilter.종료,
|
||||
가동개시_종료_월,
|
||||
가동개시_종료_일,
|
||||
`${todayYear}${todayMonth}${todayDate}`,
|
||||
);
|
||||
cqlFilters.push(
|
||||
`설치시작년도 >= '${startDate}' and 설치시작년도 <= '${endDate}'`,
|
||||
);
|
||||
if (변수1) cqlFilters.push(`경과년도='${변수1}'`);
|
||||
// 일일처리용량 범위
|
||||
if (시작1 && 종료1)
|
||||
cqlFilters.push(`일일처리용량 BETWEEN ${시작1} AND ${종료1}`);
|
||||
else if (시작1) cqlFilters.push(`일일처리용량 >= ${시작1}`);
|
||||
else if (종료1) cqlFilters.push(`일일처리용량 <= ${종료1}`);
|
||||
// 우수양수능력 범위
|
||||
if (시작2 && 종료2)
|
||||
cqlFilters.push(`우수양수능력 BETWEEN ${시작2} AND ${종료2}`);
|
||||
else if (시작2) cqlFilters.push(`우수양수능력 >= ${시작2}`);
|
||||
else if (종료2) cqlFilters.push(`우수양수능력 <= ${종료2}`);
|
||||
// const startDate = getDateString(
|
||||
// yearFilter.시작,
|
||||
// 가동개시_시작_월,
|
||||
// 가동개시_시작_일,
|
||||
// "19000101",
|
||||
// );
|
||||
// const endDate = getDateString(
|
||||
// yearFilter.종료,
|
||||
// 가동개시_종료_월,
|
||||
// 가동개시_종료_일,
|
||||
// `${todayYear}${todayMonth}${todayDate}`,
|
||||
// );
|
||||
// cqlFilters.push(
|
||||
// `설치시작년도 >= '${startDate}' and 설치시작년도 <= '${endDate}'`,
|
||||
// );
|
||||
// if (변수1) cqlFilters.push(`경과년도='${변수1}'`);
|
||||
// // 일일처리용량 범위
|
||||
// if (시작1 && 종료1)
|
||||
// cqlFilters.push(`일일처리용량 BETWEEN ${시작1} AND ${종료1}`);
|
||||
// else if (시작1) cqlFilters.push(`일일처리용량 >= ${시작1}`);
|
||||
// else if (종료1) cqlFilters.push(`일일처리용량 <= ${종료1}`);
|
||||
// // 우수양수능력 범위
|
||||
// if (시작2 && 종료2)
|
||||
// cqlFilters.push(`우수양수능력 BETWEEN ${시작2} AND ${종료2}`);
|
||||
// else if (시작2) cqlFilters.push(`우수양수능력 >= ${시작2}`);
|
||||
// else if (종료2) cqlFilters.push(`우수양수능력 <= ${종료2}`);
|
||||
|
||||
return cqlFilters;
|
||||
};
|
||||
@@ -364,28 +411,28 @@ const SearchModal: React.FC<SearchModalProps> = ({
|
||||
const otflCqlFilters = () => {
|
||||
const cqlFilters: string[] = [];
|
||||
// 설치년도 범위
|
||||
const startDate = getDateString(
|
||||
yearFilter.시작,
|
||||
가동개시_시작_월,
|
||||
가동개시_시작_일,
|
||||
"19000101",
|
||||
);
|
||||
const endDate = getDateString(
|
||||
yearFilter.종료,
|
||||
가동개시_종료_월,
|
||||
가동개시_종료_일,
|
||||
`${todayYear}${todayMonth}${todayDate}`,
|
||||
);
|
||||
cqlFilters.push(
|
||||
`설치시작년도 >= '${startDate}' and 설치시작년도 <= '${endDate}'`,
|
||||
);
|
||||
if (변수1) cqlFilters.push(`경과년도='${변수1}'`);
|
||||
if (변수2) cqlFilters.push(`하천명 ILIKE '%${변수1}%'`);
|
||||
// 계획방류량 범위
|
||||
if (시작1 && 종료1)
|
||||
cqlFilters.push(`계획방류량 BETWEEN ${시작1} AND ${종료1}`);
|
||||
else if (시작1) cqlFilters.push(`계획방류량 >= ${시작1}`);
|
||||
else if (종료1) cqlFilters.push(`계획방류량 <= ${종료1}`);
|
||||
// const startDate = getDateString(
|
||||
// yearFilter.시작,
|
||||
// 가동개시_시작_월,
|
||||
// 가동개시_시작_일,
|
||||
// "19000101",
|
||||
// );
|
||||
// const endDate = getDateString(
|
||||
// yearFilter.종료,
|
||||
// 가동개시_종료_월,
|
||||
// 가동개시_종료_일,
|
||||
// `${todayYear}${todayMonth}${todayDate}`,
|
||||
// );
|
||||
// cqlFilters.push(
|
||||
// `설치시작년도 >= '${startDate}' and 설치시작년도 <= '${endDate}'`,
|
||||
// );
|
||||
// if (변수1) cqlFilters.push(`경과년도='${변수1}'`);
|
||||
// if (변수2) cqlFilters.push(`하천명 ILIKE '%${변수1}%'`);
|
||||
// // 계획방류량 범위
|
||||
// if (시작1 && 종료1)
|
||||
// cqlFilters.push(`계획방류량 BETWEEN ${시작1} AND ${종료1}`);
|
||||
// else if (시작1) cqlFilters.push(`계획방류량 >= ${시작1}`);
|
||||
// else if (종료1) cqlFilters.push(`계획방류량 <= ${종료1}`);
|
||||
|
||||
return cqlFilters;
|
||||
};
|
||||
@@ -436,47 +483,6 @@ const SearchModal: React.FC<SearchModalProps> = ({
|
||||
return cqlFilters;
|
||||
};
|
||||
|
||||
// 검색 API 호출 함수
|
||||
const fetchFilteredData = async () => {
|
||||
setIsLoading(true); // 로딩 시작
|
||||
try {
|
||||
const queryParams = new URLSearchParams({
|
||||
lyrTypeNm: basicType,
|
||||
page: `${curPage - 1}`,
|
||||
size: '10',
|
||||
sort: 'string',
|
||||
});
|
||||
|
||||
let cqlFilters: string[] = [];
|
||||
if (activeTab === 'basic') {
|
||||
if (basicType === 'tb_ms_swage_prcs_zone') cqlFilters = zoneCqlFilters();
|
||||
else if (basicType === 'tb_il_swage_prcs_fclt') cqlFilters = facilityCqlFilters();
|
||||
else if (basicType === 'tb_ms_swage_ppl') cqlFilters = pplCqlFilters();
|
||||
} else if (activeTab === 'operation') {
|
||||
cqlFilters = zoneCqlFilters();
|
||||
} else {
|
||||
cqlFilters = reportCqlFilters();
|
||||
}
|
||||
|
||||
if (cqlFilters.length > 0) queryParams.append('cqlFiter', cqlFilters.join(' and '));
|
||||
|
||||
console.log('API URL:', `${API_URL}/v1/fclts?${queryParams.toString()}`);
|
||||
const res = await axios.get(`${API_URL}/v1/fclts?${queryParams.toString()}`);
|
||||
console.log('필터링된 API 결과(개수):', res.data.count);
|
||||
console.log('필터링된 API 결과(데이터):', res.data.data);
|
||||
|
||||
setTableData(res.data.data || []);
|
||||
setTableCount(res.data.count || []);
|
||||
console.log('tableCount 상태 업데이트 후:', res.data.count); // tableCount 로그 추가
|
||||
setShowTable(true);
|
||||
} catch (err) {
|
||||
console.error('API ERROR:', err);
|
||||
setTableData([]);
|
||||
} finally {
|
||||
setIsLoading(false); // 로딩 종료
|
||||
}
|
||||
};
|
||||
|
||||
const renderBody = () => (
|
||||
<>
|
||||
{/* 탭 영역 */}
|
||||
@@ -736,7 +742,7 @@ const SearchModal: React.FC<SearchModalProps> = ({
|
||||
</div>
|
||||
)}
|
||||
{/* 분기처리: 하수맨홀 */}
|
||||
{basicType === "tb_ms_swage_mh" && (
|
||||
{basicType === "tb_ms_swage_mhl" && (
|
||||
<div className="mb-3">
|
||||
<div className="mb-2 flex items-center">
|
||||
{/* 설치년도 */}
|
||||
@@ -812,8 +818,7 @@ const SearchModal: React.FC<SearchModalProps> = ({
|
||||
</div>
|
||||
)}
|
||||
{/* 분기처리: 하수펌프장 */}
|
||||
{(basicType === "tb_ms_swage_psmtn_1" ||
|
||||
basicType === "tb_ms_swage_psmtn_2") && (
|
||||
{basicType === "tb_ms_swage_pmstn" && (
|
||||
<div className="mb-3">
|
||||
{/* 설치년도 */}
|
||||
<div className="flex items-center mb-2">
|
||||
@@ -892,7 +897,7 @@ const SearchModal: React.FC<SearchModalProps> = ({
|
||||
</div>
|
||||
)}
|
||||
{/* 분기처리: 우수토실? 토구? */}
|
||||
{basicType === "tb_ms_otfl" && (
|
||||
{basicType === "tb_ms_stofcbr" && (
|
||||
<div className="mb-3">
|
||||
{/* 설치년도 */}
|
||||
<div className="flex items-center mb-2">
|
||||
|
||||
@@ -27,6 +27,34 @@ export const MsSwagePplCol = [
|
||||
{ id: 'wdth_len', title: '가로길이' },
|
||||
// { id: 'lyrTypeNm', title: '레이어타입명' },
|
||||
]
|
||||
export const MsSwagePplCol2 = [
|
||||
{ id: 'avgGrdn', title: '평균구배' },
|
||||
{ id: 'clarFvlc', title: '맑음유속' },
|
||||
{ id: 'drtwMltvArea', title: '오수배수면적' },
|
||||
{ id: 'exclnMltvArea', title: '우수배수면적' },
|
||||
{ id: 'fcltMngNo', title: '시설관리번호' },
|
||||
// { id: 'fcltyShpCd', title: '시설물형태코드' },
|
||||
// { id: 'fid', title: 'FID' },
|
||||
// { id: 'ftreSmbolCd', title: '지형지물부호코드' },
|
||||
{ id: 'instMngNo', title: '기관관리번호' },
|
||||
{ id: 'instlYmd', title: '설치일자' },
|
||||
{ id: 'mapshtNo', title: '도엽번호' },
|
||||
// { id: 'mngInstCd', title: '관리기관코드' },
|
||||
// { id: 'mqltCd', title: '재질코드' },
|
||||
// { id: 'pbadmsEmdCd', title: '행정읍면동코드' },
|
||||
{ id: 'pdmt', title: '관경' },
|
||||
{ id: 'prlg', title: '연장' },
|
||||
// { id: 'rnysnFvlc', title: '우기유속' },
|
||||
{ id: 'scendDpth', title: '종점깊이' },
|
||||
{ id: 'scendMhlMngNo', title: '종점맨홀관리번호' },
|
||||
{ id: 'tmptDpth', title: '시점깊이' },
|
||||
{ id: 'tmptMhlMngNo', title: '시점맨홀관리번호' },
|
||||
{ id: 'trflnCnt', title: '차선수' },
|
||||
// { id: 'usgCd', title: '용도코드' },
|
||||
{ id: 'vrtcLen', title: '세로길이' },
|
||||
{ id: 'wdthLen', title: '가로길이' },
|
||||
// { id: 'lyrTypeNm', title: '레이어타입명' },
|
||||
]
|
||||
|
||||
// 하수처리시설
|
||||
export const SwtrmtFcltCol = [
|
||||
@@ -67,6 +95,44 @@ export const SwtrmtFcltCol = [
|
||||
{ id: 'bsn_nm', title: '유역명' },
|
||||
// { id: 'obsrvnSptCd', title: '관측지점코드' },
|
||||
];
|
||||
export const SwtrmtFcltCol2 = [
|
||||
{ id: 'swtrmtFcltNm', title: '하수처리시설명' },
|
||||
{ id: 'fcltCpct', title: '시설용량' },
|
||||
{ id: 'rgnExpln', title: '지역설명' },
|
||||
{ id: 'cmcnYmd', title: '준공일자' },
|
||||
{ id: 'oprtngStrtYmd', title: '가동개시일자' },
|
||||
{ id: 'clsgYmd', title: '폐쇄일자' },
|
||||
// { id: 'prcsMsrcCd', title: '처리공법코드' },
|
||||
// { id: 'laeCd', title: '지자체코드' },
|
||||
{ id: 'laeNm', title: '지자체명' },
|
||||
{ id: 'ctpvNm', title: '시도명' },
|
||||
{ id: 'sggNm', title: '시군구명' },
|
||||
// { id: 'sareaCd', title: '권역코드' },
|
||||
{ id: 'sareaNm', title: '권역명' },
|
||||
{ id: 'lrgeSareaNm', title: '대권역명' },
|
||||
{ id: 'rvrNm', title: '하천명' },
|
||||
{ id: 'addr', title: '주소' },
|
||||
{ id: 'dtlAddr', title: '상세주소' },
|
||||
{ id: 'rdnmAddr', title: '도로명주소' },
|
||||
{ id: 'dtlRdnmAddr', title: '상세도로명주소' },
|
||||
{ id: 'dschgWtstNm', title: '방류수계명' },
|
||||
{ id: 'pllnArea', title: '부지면적' },
|
||||
{ id: 'mngRprtvBzentyNm', title: '관리대행업제명' },
|
||||
{ id: 'swtrmtPpltnCnt', title: '하수처리인구수' },
|
||||
{ id: 'prcsZoneAreaSum', title: '처리구역면적합계' },
|
||||
{ id: 'xcrd', title: 'X좌표' },
|
||||
{ id: 'ycrd', title: 'Y좌표' },
|
||||
// { id: 'oprtngSttsCd', title: '가동상태코드' },
|
||||
{ id: 'rprsMsrcCn', title: '대표공법내용' },
|
||||
{ id: 'sttyCrtrBod', title: '법정기준생물화학적산소요구량' },
|
||||
{ id: 'sttyCrtrToc', title: '법정기준TOC' },
|
||||
{ id: 'sttyCrtrSs', title: '법정기준SS' },
|
||||
{ id: 'sttyCrtrTn', title: '법정기준총질소' },
|
||||
{ id: 'sttyCrtrTph', title: '법정기준총인' },
|
||||
{ id: 'sttyCrtrClbclCnt', title: '법정기준대장균수' },
|
||||
{ id: 'bsnNm', title: '유역명' },
|
||||
// { id: 'obsrvnSptCd', title: '관측지점코드' },
|
||||
];
|
||||
|
||||
// 하수처리구역
|
||||
export const SwtrmtPrcsZoneCol = [
|
||||
@@ -79,6 +145,16 @@ export const SwtrmtPrcsZoneCol = [
|
||||
{ id: 'sgg_nm', title: '시군구명' },
|
||||
{ id: 'swtrmt_fclt_nm', title: '하수처리시설명' },
|
||||
];
|
||||
export const SwtrmtPrcsZoneCol2 = [
|
||||
// { id: 'swtrmtZoneSn', title: '하수처리구역 일련번호' },
|
||||
{ id: 'swtrmtZoneNm', title: '하수처리구역명' },
|
||||
// { id: 'swtrmt_fclt_cd', title: '하수처리시설코드' },
|
||||
// { id: 'ctpv_cd', title: '시도코드' },
|
||||
{ id: 'ctpvNm', title: '시도명' },
|
||||
// { id: 'sgg_cd', title: '시군구코드' },
|
||||
{ id: 'sggNm', title: '시군구명' },
|
||||
{ id: 'swtrmtFcltNm', title: '하수처리시설명' },
|
||||
];
|
||||
|
||||
// 하수맨홀
|
||||
export const MsSwageMhlCol = [
|
||||
@@ -103,6 +179,28 @@ export const MsSwageMhlCol = [
|
||||
{ id: 'dpthlVl', title: '심도' },
|
||||
// { id: 'instMngNo', title: '기관관리번호' }
|
||||
];
|
||||
export const MsSwageMhlCol2 = [
|
||||
// { id: 'fid', title: 'FID' },
|
||||
// { id: 'geom', title: 'geometry' },
|
||||
// { id: 'ftreSmbolCd', title: '지형지물부호코드' },
|
||||
{ id: 'fcltMngNo', title: '시설관리번호' },
|
||||
// { id: 'pbadmsEmdCd', title: '행정읍면동코드' },
|
||||
{ id: 'mapshtNo', title: '도엽번호' },
|
||||
// { id: 'mngInstCd', title: '관리기관코드' },
|
||||
{ id: 'instlYmd', title: '설치일자' },
|
||||
// { id: 'lastDrdgnYmd', title: '최종준설일자' },
|
||||
// { id: 'usgCd', title: '용도코드' },
|
||||
// { id: 'fcltyShpCd', title: '시설물형태코드' },
|
||||
// { id: 'mhlKndCd', title: '맨홀종류코드' },
|
||||
{ id: 'swageMhDiam', title: '하수맨홀구경' },
|
||||
{ id: 'wdthLen', title: '가로길이' },
|
||||
{ id: 'vrtcLen', title: '세로길이' },
|
||||
// { id: 'mqltCd', title: '재질코드' },
|
||||
// { id: 'angDir', title: '표고' },
|
||||
{ id: 'altdVl', title: '표고' },
|
||||
{ id: 'dpthlVl', title: '심도' },
|
||||
// { id: 'instMngNo', title: '기관관리번호' }
|
||||
];
|
||||
|
||||
// 하수펌프장
|
||||
export const SewagePump = [
|
||||
@@ -125,6 +223,56 @@ export const SewagePump = [
|
||||
{ id: 'excln_wpmp_ablt', title: '우수양수능력' },
|
||||
// { id: 'instMngNo', title: '기관관리번호' },
|
||||
]
|
||||
export const SewagePump2 = [
|
||||
// { id: 'fid', title: 'FID' },
|
||||
// { id: 'geom', title: 'geometry' },
|
||||
// { id: 'ftreSmbolCd', title: '지형지물부호코드' },
|
||||
{ id: 'fcltMngNo', title: '시설관리번호' },
|
||||
// { id: 'pbadmsEmdCd', title: '행정읍면동코드' },
|
||||
{ id: 'mapshtNo', title: '도엽번호' },
|
||||
// { id: 'mngInstCd', title: '관리기관코드' },
|
||||
{ id: 'instlYmd', title: '설치일자' },
|
||||
{ id: 'swagePmstnNm', title: '하수펌프장명' },
|
||||
{ id: 'pllnArea', title: '부지면적' },
|
||||
// { id: 'opngSttsCd', title: '개통상태코드' },
|
||||
// { id: 'usgCd', title: '용도코드' },
|
||||
{ id: 'dailyPrcsCpct', title: '일일처리용량' },
|
||||
// { id: 'max_impndCpct', title: '최대저수용량' },
|
||||
{ id: 'altdVl', title: '표고' },
|
||||
{ id: 'wtlvVl', title: '수위' },
|
||||
{ id: 'exclnWpmpAblt', title: '우수양수능력' },
|
||||
// { id: 'instMngNo', title: '기관관리번호' },
|
||||
]
|
||||
|
||||
// 우수토실
|
||||
export const stofcbr = [
|
||||
// { id: 'ftre_smbol_cd', title: '지형지물부호코드' },
|
||||
{ id: 'pbadms_emd_cd', title: '시설관리번호' },
|
||||
// { id: 'pbadms_emd_cd', title: '행정읍면동코드' },
|
||||
{ id: 'mapsht_no', title: '도엽번호' },
|
||||
// { id: 'mng_inst_cd', title: '관리기관코드' },
|
||||
{ id: 'instl_ymd', title: '설치일자' },
|
||||
// { id: 'fclty_shp_cd', title: '시설물형태코드' },
|
||||
{ id: 'worflw_wall_hgt', title: '월류벽높이' },
|
||||
// { id: 'mhl_exst_yn_cd', title: '맨홀존재여부코드' },
|
||||
// { id: 'swage_mhl_ftre_smbol_cd', title: '하수맨홀지형지물부호코드' },
|
||||
{ id: 'swage_mhl_mng_no', title: '하수맨홀관리번호' },
|
||||
{ id: 'drtn_angl', title: '방향각도' },
|
||||
]
|
||||
export const stofcbr2 = [
|
||||
// { id: 'ftre_smbol_cd', title: '지형지물부호코드' },
|
||||
{ id: 'pbadmsEmdCd', title: '시설관리번호' },
|
||||
// { id: 'pbadms_emd_cd', title: '행정읍면동코드' },
|
||||
{ id: 'mapshtNo', title: '도엽번호' },
|
||||
// { id: 'mng_inst_cd', title: '관리기관코드' },
|
||||
{ id: 'instlYmd', title: '설치일자' },
|
||||
// { id: 'fclty_shp_cd', title: '시설물형태코드' },
|
||||
{ id: 'worflwWallHgt', title: '월류벽높이' },
|
||||
// { id: 'mhl_exst_yn_cd', title: '맨홀존재여부코드' },
|
||||
// { id: 'swage_mhl_ftre_smbol_cd', title: '하수맨홀지형지물부호코드' },
|
||||
{ id: 'swageMhlMngNo', title: '하수맨홀관리번호' },
|
||||
{ id: 'drtnAngl', title: '방향각도' },
|
||||
]
|
||||
|
||||
// 중점우수토실 측정지점
|
||||
export const untrtSwgRainCol1 = [
|
||||
|
||||
Reference in New Issue
Block a user