Files
frontend/apps/st/src/components/util/column/input/sewagePipe/ManholeStatusInpColumn.ts
T

107 lines
3.4 KiB
TypeScript

import { ValueType } from "realgrid";
import type { ColumnConfig, ColumnLayoutItem } from "@/components/type/DataGrid.type";
import { footerInt } from "@/components/util/grid/footerSummary";
// 하수도 통계 관리 > 02.하수관로 > tab 5. 맨홀 현황
// SeweragePipeInputManholeStatusItem + commonInfo.ctpvNm (그리드 행에 병합)
const intCol = (name: string, headerText: string, editable = true): ColumnConfig => ({
name,
fieldName: name,
header: { text: headerText },
footer: footerInt,
editable,
valueType: ValueType.NUMBER,
dataFormat: "#,##0",
...(editable ? {} : { styleName: "rg-cell-total" }),
});
export const ManholeStatusInpColumn = {
columns: [
{
name: "ctpvNm",
fieldName: "ctpvNm",
header: { text: "시도" },
footer: { text: "합계" },
editable: false,
styleName: "rg-cell-readonly",
},
{
name: "sggNm",
fieldName: "sggNm",
header: { text: "시군구" },
editable: false,
styleName: "rg-cell-readonly",
},
{
name: "admdstNm",
fieldName: "admdstNm",
header: { text: "행정구역명" },
editable: false,
styleName: "rg-cell-readonly",
},
{
name: "emphsMngSeNm",
fieldName: "emphsMngSeNm",
header: { text: "집중강우중점관리구역구분" },
editable: false,
styleName: "rg-cell-readonly",
footer: { text: "합계" },
},
{
...intCol("wholMnhlCnt", "계", false),
computed: {
fields: ["frlvlMnhlCnt", "sclvlMnhlCnt", "thlvlMnhlCnt", "folvlMnhlCnt"],
type: "sum" as const,
},
},
intCol("frlvlMnhlCnt", "주철"),
intCol("sclvlMnhlCnt", "주철(조화)"),
intCol("thlvlMnhlCnt", "콘크리트"),
intCol("folvlMnhlCnt", "기타"),
intCol("filvlMnhlCnt", "추락방지시설설치맨홀(개)"),
{ name: "rmrk", fieldName: "rmrk", header: { text: "비고" } },
{
name: "admdstCd",
fieldName: "admdstCd",
header: { text: "행정구역코드" },
visible: false,
editable: false,
styleName: "rg-cell-readonly",
},
{
name: "emphsMngSeCd",
fieldName: "emphsMngSeCd",
header: { text: "집중강우중점관리구역코드" },
visible: false,
editable: false,
styleName: "rg-cell-readonly",
},
] as ColumnConfig[],
columnLayout: [
{
name: "adminArea",
hideChildHeaders: false,
header: { text: "행정구역" },
items: [{ column: "ctpvNm", footerUserSpans: [{ colspan: 2 }] }, "sggNm"],
},
"admdstNm",
"emphsMngSeNm",
{
name: "mtrlGroup",
hideChildHeaders: false,
header: { text: "맨홀뚜껑 재질(개)" },
items: ["wholMnhlCnt", "frlvlMnhlCnt", "sclvlMnhlCnt", "thlvlMnhlCnt", "folvlMnhlCnt"],
},
"filvlMnhlCnt",
"rmrk",
"admdstCd",
"emphsMngSeCd",
] as ColumnLayoutItem[],
rowStartNum: 2,
fixedColumns: 2,
tabKey: "ST00020005",
tabLabel: "맨홀 현황",
};