244 lines
12 KiB
TypeScript
244 lines
12 KiB
TypeScript
import { footerInt, footerDecimal1, footerDecimal3, footerAvgDecimal } from "@/components/util/grid/footerSummary";
|
|
import { ValueType } from "realgrid";
|
|
/**
|
|
* 하수도 통계 관리 > 01. 하수도 보급률
|
|
* 단일 Tab
|
|
*/
|
|
export const SeweragePenetrationRateInpColumn = {
|
|
columns: [
|
|
// 행정구역
|
|
{ name: 'sido', fieldName: 'sido', header: { text: '시도' }, footer: { text: '합계' }, editable: false },
|
|
{ name: 'gugun', fieldName: 'gugun', header: { text: '시군구' }, editable: false },
|
|
{ name: 'adstDong', fieldName: 'adstDong', header: { text: '행정구역명' }, editable: false },
|
|
|
|
// 수계 및 권역
|
|
{ name: 'rvbsn', fieldName: 'rvbsn', header: { text: '수계' }, editable: false },
|
|
{ name: 'bstrm', fieldName: 'bstrm', header: { text: '지류' } },
|
|
|
|
// 수계영향권별분류
|
|
{ name: 'mdbsn', fieldName: 'mdbsn', header: { text: '세부단위유역' }, editable: false },
|
|
{ name: 'lgbsn', fieldName: 'lgbsn', header: { text: '중권역' }, editable: false },
|
|
{ name: 'mdmbsn', fieldName: 'mdmbsn', header: { text: '소권역' }, editable: false },
|
|
|
|
// 특별대책지역
|
|
{ name: 'speclCntrplnAr', fieldName: 'speclCntrplnAr', header: { text: '특별대책지역' } },
|
|
|
|
// 행정참고자료인구
|
|
{ name: 'totalPopl', fieldName: 'totalPopl', header: { text: '총인구' }, footer: footerInt, editable: false, valueType: ValueType.NUMBER, dataFormat: '#,##0' },
|
|
{ name: 'poplSm', fieldName: 'poplSm', header: { text: '내국인' }, footer: footerInt, editable: false, valueType: ValueType.NUMBER, dataFormat: '#,##0' },
|
|
{ name: 'frgnrPoplSm', fieldName: 'frgnrPoplSm', header: { text: '외국인' }, footer: footerInt, editable: false, valueType: ValueType.NUMBER, dataFormat: '#,##0' },
|
|
|
|
// 행정참고자료면적
|
|
{ name: 'area', fieldName: 'area', header: { text: '행정참고자료면적(㎢)' }, footer: footerDecimal3, editable: false, valueType: ValueType.NUMBER, dataFormat: '#,##0.000' },
|
|
|
|
// 총인구
|
|
{ name: 'popltnSm', fieldName: 'popltnSm', header: { text: '총인구(명)' }, footer: footerInt, editable: false, valueType: ValueType.NUMBER, dataFormat: '#,##0' },
|
|
|
|
// 총면적
|
|
{
|
|
name: 'arSm',
|
|
fieldName: 'arSm',
|
|
header: { text: '총면적(㎢)' },
|
|
footer: footerDecimal3,
|
|
valueType: ValueType.NUMBER,
|
|
dataFormat: '#,##0.000',
|
|
computed: { fields: ['swgeProcZoneInnerAr', 'swgeProcZoneOuterAr'], type: 'sum' as const },
|
|
styleName: 'rg-cell-total',
|
|
},
|
|
|
|
// 하수처리구역 내 > 합계
|
|
{
|
|
name: 'swgeProcZoneInnerSm',
|
|
fieldName: 'swgeProcZoneInnerSm',
|
|
header: { text: '합계' },
|
|
footer: footerInt,
|
|
editable: false,
|
|
valueType: ValueType.NUMBER,
|
|
dataFormat: '#,##0',
|
|
computed: { fields: ['pblswrgPrmTrt', 'pblswrgScdTrt', 'pblswrgTertTrt', 'wstrPrmTrt', 'wstrScdTrt', 'wstrTertTrt'], type: 'sum' as const },
|
|
styleName: 'rg-cell-total',
|
|
},
|
|
|
|
// 하수처리구역 내 > 공공하수처리인구
|
|
{
|
|
name: 'pblswrgPopltnSm',
|
|
fieldName: 'pblswrgPopltnSm',
|
|
header: { text: '소계' },
|
|
footer: footerInt,
|
|
editable: false,
|
|
valueType: ValueType.NUMBER,
|
|
dataFormat: '#,##0',
|
|
computed: { fields: ['pblswrgPrmTrt', 'pblswrgScdTrt', 'pblswrgTertTrt'], type: 'sum' as const },
|
|
styleName: 'rg-cell-total',
|
|
},
|
|
{ name: 'pblswrgPrmTrt', fieldName: 'pblswrgPrmTrt', header: { text: '물리적처리' }, footer: footerInt, valueType: ValueType.NUMBER, dataFormat: '#,##0' },
|
|
{ name: 'pblswrgScdTrt', fieldName: 'pblswrgScdTrt', header: { text: '생물학적처리' }, footer: footerInt, valueType: ValueType.NUMBER, dataFormat: '#,##0' },
|
|
{ name: 'pblswrgTertTrt', fieldName: 'pblswrgTertTrt', header: { text: '고도처리' }, footer: footerInt, valueType: ValueType.NUMBER, dataFormat: '#,##0' },
|
|
|
|
// 하수처리구역 내 > 폐수처리인구
|
|
{
|
|
name: 'wstrPopltnSm',
|
|
fieldName: 'wstrPopltnSm',
|
|
header: { text: '소계' },
|
|
footer: footerInt,
|
|
editable: false,
|
|
valueType: ValueType.NUMBER,
|
|
dataFormat: '#,##0',
|
|
computed: { fields: ['wstrPrmTrt', 'wstrScdTrt', 'wstrTertTrt'], type: 'sum' as const },
|
|
styleName: 'rg-cell-total',
|
|
},
|
|
{ name: 'wstrPrmTrt', fieldName: 'wstrPrmTrt', header: { text: '물리적처리' }, footer: footerInt, valueType: ValueType.NUMBER, dataFormat: '#,##0' },
|
|
{ name: 'wstrScdTrt', fieldName: 'wstrScdTrt', header: { text: '생물학적처리' }, footer: footerInt, valueType: ValueType.NUMBER, dataFormat: '#,##0' },
|
|
{ name: 'wstrTertTrt', fieldName: 'wstrTertTrt', header: { text: '고도처리' }, footer: footerInt, valueType: ValueType.NUMBER, dataFormat: '#,##0' },
|
|
|
|
// 하수처리구역 내 > 미접속인구
|
|
{ name: 'notConectPopltn', fieldName: 'notConectPopltn', header: { text: '미접속인구' }, footer: footerInt, valueType: ValueType.NUMBER, dataFormat: '#,##0' },
|
|
|
|
// 하수처리구역 내 > 면적
|
|
{ name: 'swgeProcZoneInnerAr', fieldName: 'swgeProcZoneInnerAr', header: { text: '면적(㎢)' }, footer: footerDecimal3, valueType: ValueType.NUMBER, dataFormat: '#,##0.000' },
|
|
|
|
// 하수처리구역 외
|
|
{
|
|
name: 'swgeProcZoneOuterSm',
|
|
fieldName: 'swgeProcZoneOuterSm',
|
|
header: { text: '합계' },
|
|
footer: footerInt,
|
|
editable: false,
|
|
valueType: ValueType.NUMBER,
|
|
dataFormat: '#,##0',
|
|
computed: { fields: ['townUnprocPopltn', 'townSwttPopltn', 'townWrrtnPopltn'], type: 'sum' as const },
|
|
styleName: 'rg-cell-total',
|
|
},
|
|
{ name: 'townUnprocPopltn', fieldName: 'townUnprocPopltn', header: { text: '미처리인구' }, footer: footerInt, valueType: ValueType.NUMBER, dataFormat: '#,##0' },
|
|
{ name: 'townSwttPopltn', fieldName: 'townSwttPopltn', header: { text: '오수처리인구' }, footer: footerInt, valueType: ValueType.NUMBER, dataFormat: '#,##0' },
|
|
{ name: 'townWrrtnPopltn', fieldName: 'townWrrtnPopltn', header: { text: '정화조인구' }, footer: footerInt, valueType: ValueType.NUMBER, dataFormat: '#,##0' },
|
|
{ name: 'swgeProcZoneOuterAr', fieldName: 'swgeProcZoneOuterAr', header: { text: '면적(㎢)' }, footer: footerDecimal3, valueType: ValueType.NUMBER, dataFormat: '#,##0.000' },
|
|
|
|
// 공공하수처리구역 인구보급률 (하수처리구역 내 인구 / 전체 인구 * 100)
|
|
{
|
|
name: 'pblswrgPopltnSuprt',
|
|
fieldName: 'pblswrgPopltnSuprt',
|
|
header: { text: '공공하수처리구역인구보급률(%)' },
|
|
footer: footerAvgDecimal,
|
|
editable: false,
|
|
valueType: ValueType.NUMBER,
|
|
dataFormat: '#,##0.0',
|
|
computed: {
|
|
numeratorFields: ['pblswrgPrmTrt', 'pblswrgScdTrt', 'pblswrgTertTrt', 'wstrPrmTrt', 'wstrScdTrt', 'wstrTertTrt', 'notConectPopltn'],
|
|
denominatorFields: ['pblswrgPrmTrt', 'pblswrgScdTrt', 'pblswrgTertTrt', 'wstrPrmTrt', 'wstrScdTrt', 'wstrTertTrt', 'notConectPopltn', 'townUnprocPopltn', 'townSwttPopltn', 'townWrrtnPopltn'],
|
|
type: 'pblswrgPopltnSuprtRate' as const
|
|
},
|
|
styleName: 'rg-cell-total',
|
|
},
|
|
|
|
// 고도처리 인구보급률 (고도처리 인구 / 전체 인구 * 100)
|
|
{
|
|
name: 'adtrtPopltnSuprt',
|
|
fieldName: 'adtrtPopltnSuprt',
|
|
header: { text: '고도처리인구보급률(%)' },
|
|
footer: footerAvgDecimal,
|
|
editable: false,
|
|
valueType: ValueType.NUMBER,
|
|
dataFormat: '#,##0.0',
|
|
computed: {
|
|
numeratorFields: ['pblswrgTertTrt', 'wstrTertTrt'],
|
|
denominatorFields: ['pblswrgPrmTrt', 'pblswrgScdTrt', 'pblswrgTertTrt', 'wstrPrmTrt', 'wstrScdTrt', 'wstrTertTrt', 'notConectPopltn', 'townUnprocPopltn', 'townSwttPopltn', 'townWrrtnPopltn'],
|
|
type: 'adtrtPopltnSuprtRate' as const
|
|
},
|
|
styleName: 'rg-cell-total',
|
|
},
|
|
|
|
// 하수도 설치율
|
|
{
|
|
name: 'swrgInstlrt',
|
|
fieldName: 'swrgInstlrt',
|
|
header: { text: '하수도설치율(%)' },
|
|
footer: footerAvgDecimal,
|
|
editable: false,
|
|
valueType: ValueType.NUMBER,
|
|
dataFormat: '#,##0.0',
|
|
computed: {
|
|
numeratorFields: ['pblswrgPrmTrt', 'pblswrgScdTrt', 'pblswrgTertTrt', 'wstrPrmTrt', 'wstrScdTrt', 'wstrTertTrt', 'notConectPopltn', 'swgeProcZoneOuterSm'],
|
|
denominatorFields: ['pblswrgPrmTrt', 'pblswrgScdTrt', 'pblswrgTertTrt', 'wstrPrmTrt', 'wstrScdTrt', 'wstrTertTrt', 'notConectPopltn'],
|
|
thirdFields: ['piplSupprt'],
|
|
type: 'swrgInstlrtRate' as const
|
|
},
|
|
styleName: 'rg-cell-total',
|
|
},
|
|
|
|
// 비고
|
|
{ name: 'rmk', fieldName: 'rmk', header: { text: '비고' } },
|
|
|
|
{ name: 'piplSupprt', fieldName: 'piplSupprt', header: { text: '하수관로보급률(%)' }, visible: false },
|
|
],
|
|
|
|
columnLayout: [
|
|
{
|
|
name: 'groupA',
|
|
hideChildHeaders: false,
|
|
header: { text: '행정구역' },
|
|
items: [
|
|
{ column: 'sido', footerUserSpans: [{ colspan: 3 }] },
|
|
'gugun',
|
|
'adstDong',
|
|
],
|
|
},
|
|
'rvbsn',
|
|
'bstrm',
|
|
{
|
|
name: 'groupB',
|
|
hideChildHeaders: false,
|
|
header: { text: '수계영향권별분류' },
|
|
items: ['mdbsn', 'lgbsn', 'mdmbsn'],
|
|
},
|
|
'speclCntrplnAr',
|
|
{
|
|
name: 'groupC',
|
|
hideChildHeaders: false,
|
|
header: { text: '행정참고자료인구' },
|
|
items: ['totalPopl', 'poplSm', 'frgnrPoplSm'],
|
|
},
|
|
'area',
|
|
'popltnSm',
|
|
'arSm',
|
|
{
|
|
name: 'groupD',
|
|
hideChildHeaders: false,
|
|
header: { text: '하수처리구역내' },
|
|
items: [
|
|
'swgeProcZoneInnerSm',
|
|
{
|
|
name: 'pblswrgGroup',
|
|
hideChildHeaders: false,
|
|
header: { text: '공공하수처리인구(명)' },
|
|
items: ['pblswrgPopltnSm', 'pblswrgPrmTrt', 'pblswrgScdTrt', 'pblswrgTertTrt'],
|
|
},
|
|
{
|
|
name: 'wstrGroup',
|
|
hideChildHeaders: false,
|
|
header: { text: '폐수처리인구(명)' },
|
|
items: ['wstrPopltnSm', 'wstrPrmTrt', 'wstrScdTrt', 'wstrTertTrt'],
|
|
},
|
|
'notConectPopltn',
|
|
'swgeProcZoneInnerAr'
|
|
],
|
|
},
|
|
{
|
|
name: 'groupE',
|
|
hideChildHeaders: false,
|
|
header: { text: '하수처리구역외' },
|
|
items: [
|
|
'swgeProcZoneOuterSm',
|
|
'townUnprocPopltn',
|
|
'townSwttPopltn',
|
|
'townWrrtnPopltn',
|
|
'swgeProcZoneOuterAr'
|
|
],
|
|
},
|
|
'pblswrgPopltnSuprt',
|
|
'adtrtPopltnSuprt',
|
|
'swrgInstlrt',
|
|
'rmk',
|
|
'piplSupprt',
|
|
]
|
|
}; |