[feat]하수도 서비스 수준 탭2개 추가
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
import SearchForm from "@/components/module/SearchForm";
|
||||
import TabDataGrid from "@/components/module/TabDataGrid";
|
||||
import SaveButton from "@/components/button/SaveButton";
|
||||
import ApproveButton from "@/components/button/ApproveButton";
|
||||
import ReviewOpinionButton from "@/components/button/ReviewOpinionButton";
|
||||
import ReturnButton from "@/components/button/ReturnButton";
|
||||
|
||||
import { SewerageServiceLevelInfoListRvw } from "@/components/util/column/SewerageServiceLevelColumnRvw";
|
||||
|
||||
|
||||
const SewerageServiceLevelRvw = () => {
|
||||
|
||||
const approveFunc = () => {
|
||||
console.log('approveFunc');
|
||||
// 승인 로직
|
||||
};
|
||||
|
||||
const saveFunc = () => {
|
||||
console.log('submit');
|
||||
// 저장 로직
|
||||
};
|
||||
|
||||
const reviewOpinionFunc = () => {
|
||||
console.log('reviewOpinionFunc');
|
||||
// 검토의견 작성
|
||||
};
|
||||
|
||||
const returnFunc = () => {
|
||||
console.log('returnFunc');
|
||||
// 반려
|
||||
};
|
||||
|
||||
|
||||
return (
|
||||
<>
|
||||
|
||||
<SearchForm userMenual={true} fctName={true} />
|
||||
<div className="flex justify-end items-center gap-[0.6rem] m-[0.6rem]">
|
||||
<ReviewOpinionButton reviewOpinionFunc={reviewOpinionFunc} />
|
||||
<ApproveButton approveFunc={approveFunc} />
|
||||
<ReturnButton returnFunc={returnFunc} />
|
||||
<SaveButton saveFunc={saveFunc} />
|
||||
</div>
|
||||
<TabDataGrid columnInfo={SewerageServiceLevelInfoListRvw} isExcelImport={false} />
|
||||
</>
|
||||
);
|
||||
};
|
||||
|
||||
|
||||
export default SewerageServiceLevelRvw;
|
||||
@@ -0,0 +1,105 @@
|
||||
export const SewerageServiceLevelInfoListRvw=[{
|
||||
tabKey: 'a',
|
||||
tabLabel: '민원',
|
||||
rowStartNum: 2, // 2단 헤더 구조 (순번 rowspan="2")
|
||||
fixedColumns: 2, // 순번, 시도, 시군구, 구분까지 고정
|
||||
columns: [
|
||||
/* 1. 기본 정보 (Band: Left) */
|
||||
{ name: 'SIDO', fieldName: 'SIDO', header: { text: '시도' } },
|
||||
{ name: 'GUGUN', fieldName: 'GUGUN', header: { text: '시군구' } },
|
||||
{ name: 'YR_GBN', fieldName: 'YR_GBN', header: { text: '구분' } },
|
||||
|
||||
/* 2. 하수처리 인구 */
|
||||
{ name: 'POPLTN_SM', fieldName: 'POPLTN_SM', header: { text: '하수처리인구\n(명)' } },
|
||||
|
||||
/* 3. 민원유형 (단위: 건) */
|
||||
{ name: 'CVPL_CM', fieldName: 'CVPL_CM', header: { text: '총계' } },
|
||||
{ name: 'CVPL_DCWTR_QLTWTR', fieldName: 'CVPL_DCWTR_QLTWTR', header: { text: '악취' } },
|
||||
{ name: 'CVPL_BSML', fieldName: 'CVPL_BSML', header: { text: '하수관로' } },
|
||||
{ name: 'CVPL_FIVW', fieldName: 'CVPL_FIVW', header: { text: '배수설비' } },
|
||||
{ name: 'CVPL_POLLUTN_ACDNT', fieldName: 'CVPL_POLLUTN_ACDNT', header: { text: '맨홀' } },
|
||||
{ name: 'CVPL_SSOS', fieldName: 'CVPL_SSOS', header: { text: '정화조' } },
|
||||
{ name: 'CVPL_CHRGE', fieldName: 'CVPL_CHRGE', header: { text: '하수도요금' } },
|
||||
{ name: 'CVPL_ETC', fieldName: 'CVPL_ETC', header: { text: '기타' } },
|
||||
|
||||
/* 4. 성과 지표 및 비고 */
|
||||
{ name: 'STDR_POPLTN_PER_CVPL', fieldName: 'STDR_POPLTN_PER_CVPL', header: { text: '기준인구당\n민원건수\n(건/10,000명)' } },
|
||||
{ name: 'RMK', fieldName: 'RMK', header: { text: '비고' } }
|
||||
],
|
||||
columnLayout: [
|
||||
{ name: 'addrGroup', header: { text: '행정구역' }, items: ['SIDO', 'GUGUN'] },
|
||||
'YR_GBN',
|
||||
'POPLTN_SM',
|
||||
{
|
||||
name: 'complaintTypeGroup',
|
||||
header: { text: '민원유형(건)' },
|
||||
items: [
|
||||
'CVPL_CM',
|
||||
'CVPL_DCWTR_QLTWTR',
|
||||
'CVPL_BSML',
|
||||
'CVPL_FIVW',
|
||||
'CVPL_POLLUTN_ACDNT',
|
||||
'CVPL_SSOS',
|
||||
'CVPL_CHRGE',
|
||||
'CVPL_ETC'
|
||||
]
|
||||
},
|
||||
'STDR_POPLTN_PER_CVPL',
|
||||
'RMK'
|
||||
]
|
||||
},
|
||||
{
|
||||
tabKey: 'b',
|
||||
tabLabel: '주민친화시설',
|
||||
rowStartNum: 2, // 2단 헤더 구조
|
||||
fixedColumns: 5, // 순번, 시도, 시군구, 처리장명, 시설용량, 구분까지 고정
|
||||
columns: [
|
||||
/* 1. 기본 및 시설 정보 (Band: Left) */
|
||||
{ name: 'SIDO', fieldName: 'SIDO', header: { text: '시도' } },
|
||||
{ name: 'GUGUN', fieldName: 'GUGUN', header: { text: '시군구' } },
|
||||
{ name: 'BSC_FCT_NM', fieldName: 'BSC_FCT_NM', header: { text: '처리장명' } },
|
||||
{ name: 'FCT_CPC', fieldName: 'FCT_CPC', header: { text: '시설용량\n(㎥/일)' } },
|
||||
{ name: 'YR_GBN', fieldName: 'YR_GBN', header: { text: '구분' } },
|
||||
|
||||
/* 2. 처리장 전체 면적 */
|
||||
{ name: 'PRCPLT_AR', fieldName: 'PRCPLT_AR', header: { text: '처리장\n면적(㎡)' } },
|
||||
|
||||
/* 3. 주민친화시설 면적 상세 (단위: ㎡) */
|
||||
{ name: 'TOTAL_AR', fieldName: 'TOTAL_AR', header: { text: '총계' } },
|
||||
{ name: 'RESTRM_AR', fieldName: 'RESTRM_AR', header: { text: '휴게시설' } },
|
||||
{ name: 'CHILDPLAY_AR', fieldName: 'CHILDPLAY_AR', header: { text: '어린이놀이공간' } },
|
||||
{ name: 'ALSFC_AR', fieldName: 'ALSFC_AR', header: { text: '체력단련시설' } },
|
||||
{ name: 'PLGRND_AR', fieldName: 'PLGRND_AR', header: { text: '운동시설' } },
|
||||
{ name: 'PRKPLCE_AR', fieldName: 'PRKPLCE_AR', header: { text: '주차장' } },
|
||||
{ name: 'CTLSTT_AR', fieldName: 'CTLSTT_AR', header: { text: '교육 및\n문화시설' } },
|
||||
{ name: 'NRPRK_AR', fieldName: 'NRPRK_AR', header: { text: '습지조성\n(생태공원)' } },
|
||||
{ name: 'ETC_AR', fieldName: 'ETC_AR', header: { text: '기타' } },
|
||||
|
||||
/* 4. 비고 */
|
||||
{ name: 'RMK', fieldName: 'RMK', header: { text: '비고' } }
|
||||
],
|
||||
columnLayout: [
|
||||
{ name: 'addrGroup', header: { text: '행정구역' }, items: ['SIDO', 'GUGUN'] },
|
||||
'BSC_FCT_NM',
|
||||
'FCT_CPC',
|
||||
'YR_GBN',
|
||||
'PRCPLT_AR',
|
||||
{
|
||||
name: 'friendlyFacilityGroup',
|
||||
header: { text: '주민친화시설 면적(㎡)' },
|
||||
items: [
|
||||
'TOTAL_AR',
|
||||
'RESTRM_AR',
|
||||
'CHILDPLAY_AR',
|
||||
'ALSFC_AR',
|
||||
'PLGRND_AR',
|
||||
'PRKPLCE_AR',
|
||||
'CTLSTT_AR',
|
||||
'NRPRK_AR',
|
||||
'ETC_AR'
|
||||
]
|
||||
},
|
||||
'RMK'
|
||||
]
|
||||
}
|
||||
];
|
||||
Reference in New Issue
Block a user