diff --git a/apps/st/src/components/statistics/review/PumpingStationRvw.tsx b/apps/st/src/components/statistics/review/PumpingStationRvw.tsx
index f33ef9396..c9438b174 100644
--- a/apps/st/src/components/statistics/review/PumpingStationRvw.tsx
+++ b/apps/st/src/components/statistics/review/PumpingStationRvw.tsx
@@ -1,149 +1,14 @@
import SearchForm from "@/components/module/SearchForm";
-import DataGrid from "@/components/module/DataGrid";
+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 { PumpingStationInfoList } from "@/components/util/column/review/PumpingStationColumnRvw";
+
const PumpingStationRvw = () => {
- const rawColumns = [
- // 행정구역
- { name: 'sido', fieldName: '시도', header: { text: '시도' } },
- { name: 'sgg', fieldName: '구군', header: { text: '구군' } },
-
- // 기본 정보
- { name: '펌프장명', fieldName: '펌프장명', header: { text: '펌프장명' } },
- { name: '구분', fieldName: '구분', header: { text: '구분' } },
- { name: '처리장명', fieldName: '처리장명', header: { text: '처리장명' } },
- { name: '구분(합류식분류식)', fieldName: '구분(합류식분류식)', header: { text: '구분(합류식분류식)' } },
- { name: '위치', fieldName: '위치', header: { text: '위치' } },
- { name: '가동년월일 yyyy-mm-dd', fieldName: '가동년월일 yyyy-mm-dd', header: { text: '가동년월일 yyyy-mm-dd' } },
- { name: '계획배수면적(km2)', fieldName: '계획배수면적(km2)', header: { text: '계획배수면적(km2)' } },
-
- // 계획배수량
- { name: '청천시(A)', fieldName: '청천시(A)', header: { text: '청천시(A)' } },
- { name: '우천시(B)', fieldName: '우천시(B)', header: { text: '우천시(B)' } },
- { name: '우수량(B-A)', fieldName: '우수량(B-A)', header: { text: '우수량(B-A)' } },
-
- // 총양수량
- { name: '오수펌프_총양수량(m3/min)', fieldName: '오수펌프_총양수량(m3/min)', header: { text: '총양수량(m3/min)' } },
- { name: '우수펌프_총양수량(m3/min)', fieldName: '우수펌프_총양수량(m3/min)', header: { text: '총양수량(m3/min)' } },
-
- // 오수펌프(1)
- { name: '오수펌프(1)구경(mm)', fieldName: '오수펌프(1)구경(mm)', header: { text: '구경(mm)' } },
- { name: '오수펌프(1)양수량(m3/min)', fieldName: '오수펌프(1)양수량(m3/min)', header: { text: '양수량(m3/min)' } },
- { name: '오수펌프(1)펌프대수', fieldName: '오수펌프(1)펌프대수', header: { text: '펌프대수' } },
- { name: '오수펌프(1)예비대수', fieldName: '오수펌프(1)예비대수', header: { text: '예비대수' } },
-
- // 오수펌프(2)
- { name: '오수펌프(2)구경(mm)', fieldName: '오수펌프(2)구경(mm)', header: { text: '구경(mm)' } },
- { name: '오수펌프(2)양수량(m3/min)', fieldName: '오수펌프(2)양수량(m3/min)', header: { text: '양수량(m3/min)' } },
- { name: '오수펌프(2)펌프대수', fieldName: '오수펌프(2)펌프대수', header: { text: '펌프대수' } },
- { name: '오수펌프(2)예비대수', fieldName: '오수펌프(2)예비대수', header: { text: '예비대수' } },
-
- // 오수펌프(3)
- { name: '오수펌프(3)구경(mm)', fieldName: '오수펌프(3)구경(mm)', header: { text: '구경(mm)' } },
- { name: '오수펌프(3)양수량(m3/min)', fieldName: '오수펌프(3)양수량(m3/min)', header: { text: '양수량(m3/min)' } },
- { name: '오수펌프(3)펌프대수', fieldName: '오수펌프(3)펌프대수', header: { text: '펌프대수' } },
- { name: '오수펌프(3)예비대수', fieldName: '오수펌프(3)예비대수', header: { text: '예비대수' } },
-
- // 우수펌프(1)
- { name: '우수펌프(1)구경(mm)', fieldName: '우수펌프(1)구경(mm)', header: { text: '구경(mm)' } },
- { name: '우수펌프(1)양수량(m3/min)', fieldName: '우수펌프(1)양수량(m3/min)', header: { text: '양수량(m3/min)' } },
- { name: '우수펌프(1)펌프대수', fieldName: '우수펌프(1)펌프대수', header: { text: '펌프대수' } },
- { name: '우수펌프(1)예비대수', fieldName: '우수펌프(1)예비대수', header: { text: '예비대수' } },
-
- // 우수펌프(2)
- { name: '우수펌프(2)구경(mm)', fieldName: '우수펌프(2)구경(mm)', header: { text: '구경(mm)' } },
- { name: '우수펌프(2)양수량(m3/min)', fieldName: '우수펌프(2)양수량(m3/min)', header: { text: '양수량(m3/min)' } },
- { name: '우수펌프(2)펌프대수', fieldName: '우수펌프(2)펌프대수', header: { text: '펌프대수' } },
- { name: '우수펌프(2)예비대수', fieldName: '우수펌프(2)예비대수', header: { text: '예비대수' } },
-
- // 우수펌프(3)
- { name: '우수펌프(3)구경(mm)', fieldName: '우수펌프(3)구경(mm)', header: { text: '구경(mm)' } },
- { name: '우수펌프(3)양수량(m3/min)', fieldName: '우수펌프(3)양수량(m3/min)', header: { text: '양수량(m3/min)' } },
- { name: '우수펌프(3)펌프대수', fieldName: '우수펌프(3)펌프대수', header: { text: '펌프대수' } },
- { name: '우수펌프(3)예비대수', fieldName: '우수펌프(3)예비대수', header: { text: '예비대수' } },
-
- // 운영 및 비고
- { name: '연간전력사용량(kWh/년)', fieldName: '연간전력사용량(kWh/년)', header: { text: '연간전력사용량(kWh/년)' } },
- { name: 'rmk', fieldName: '비고', header: { text: '비고' } },
- ];
-
-
- const columns = rawColumns.map(col => ({
- ...col,
- editable: false
- }));
-
- const columnLayout = [
- {
- name: 'groupA',
- hideChildHeaders: false,
- header: { text: '행정구역' },
- items: ['sido', 'sgg'],
- },
- '펌프장명',
- '구분',
- '처리장명',
- '구분(합류식분류식)',
- '위치',
- '가동년월일 yyyy-mm-dd',
- '계획배수면적(km2)',
- {
- name: 'groupB',
- hideChildHeaders: false,
- header: { text: '계획시간대최대배수량(m3/hr)' },
- items: ['청천시(A)', '우천시(B)', '우수량(B-A)'],
- },
- {
- name: 'groupC',
- hideChildHeaders: false,
- header: { text: '배수능력' },
- items: [
- '오수펌프_총양수량(m3/min)',
- {
- name: '오수펌프(1)',
- hideChildHeaders: false,
- header: { text: '오수펌프(1)' },
- items: ['오수펌프(1)구경(mm)', '오수펌프(1)양수량(m3/min)', '오수펌프(1)펌프대수', '오수펌프(1)예비대수'],
- },
- {
- name: '오수펌프(2)',
- hideChildHeaders: false,
- header: { text: '오수펌프(2)' },
- items: ['오수펌프(2)구경(mm)', '오수펌프(2)양수량(m3/min)', '오수펌프(2)펌프대수', '오수펌프(2)예비대수'],
- },
- {
- name: '오수펌프(3)',
- hideChildHeaders: false,
- header: { text: '오수펌프(3)' },
- items: ['오수펌프(3)구경(mm)', '오수펌프(3)양수량(m3/min)', '오수펌프(3)펌프대수', '오수펌프(3)예비대수'],
- },
- '우수펌프_총양수량(m3/min)',
- {
- name: '우수펌프(1)',
- hideChildHeaders: false,
- header: { text: '우수펌프(1)' },
- items: ['우수펌프(1)구경(mm)', '우수펌프(1)양수량(m3/min)', '우수펌프(1)펌프대수', '우수펌프(1)예비대수'],
- },
- {
- name: '우수펌프(2)',
- hideChildHeaders: false,
- header: { text: '우수펌프(2)' },
- items: ['우수펌프(2)구경(mm)', '우수펌프(2)양수량(m3/min)', '우수펌프(2)펌프대수', '우수펌프(2)예비대수'],
- },
- {
- name: '우수펌프(3)',
- hideChildHeaders: false,
- header: { text: '우수펌프(3)' },
- items: ['우수펌프(3)구경(mm)', '우수펌프(3)양수량(m3/min)', '우수펌프(3)펌프대수', '우수펌프(3)예비대수'],
- },
- ],
- },
- '연간전력사용량(kWh/년)',
- 'rmk',
- ];
+
const approveFunc = () => { console.log('approveFunc'); };
const saveFunc = () => { console.log('submit'); };
@@ -159,7 +24,7 @@ const PumpingStationRvw = () => {
-
+
>
);
};
diff --git a/apps/st/src/components/util/column/review/PumpingStationColumnRvw.ts b/apps/st/src/components/util/column/review/PumpingStationColumnRvw.ts
new file mode 100644
index 000000000..536d971aa
--- /dev/null
+++ b/apps/st/src/components/util/column/review/PumpingStationColumnRvw.ts
@@ -0,0 +1,101 @@
+export const PumpingStationInfoList = [
+ {
+ tabKey: 'a',
+ tabLabel: '펌프장 현황',
+ rowStartNum: 3,
+ fixedColumns: 3,
+ columns: [
+ /* 1. 행정구역 및 기본정보 */
+ { name: 'sido', fieldName: 'SIDO', header: { text: '시도' } },
+ { name: 'sgg', fieldName: 'GUGUN', header: { text: '구군' } },
+ { name: 'PUMP_NM', fieldName: 'PUMP_NM', header: { text: '펌프장명' } },
+ { name: 'GBN', fieldName: 'GBN', header: { text: '구분' } },
+ { name: 'TRT_FCT_NM', fieldName: 'TRT_FCT_NM', header: { text: '처리장명' } },
+ { name: 'TYPE_GBN', fieldName: 'TYPE_GBN', header: { text: '구분(합류식분류식)' } },
+ { name: 'ADDR', fieldName: 'ADDR', header: { text: '위치' } },
+ { name: 'RN_DT', fieldName: 'RN_DT', header: { text: '가동년월일\nyyyy-mm-dd' } },
+ { name: 'DSN_AR', fieldName: 'DSN_AR', header: { text: '계획배수면적\n(km2)' } },
+
+ /* 2. 계획배수량 (m3/hr) */
+ { name: 'DSN_QTY_A', fieldName: 'DSN_QTY_A', header: { text: '청천시(A)' } },
+ { name: 'DSN_QTY_B', fieldName: 'DSN_QTY_B', header: { text: '우천시(B)' } },
+ { name: 'DSN_QTY_DIFF', fieldName: 'DSN_QTY_DIFF', header: { text: '우수량(B-A)' } },
+
+ /* 3. 총 양수량 (m3/min) */
+ { name: 'TOT_PUMP_QTY_O', fieldName: 'TOT_PUMP_QTY_O', header: { text: '오수펌프\n총양수량' } },
+ { name: 'TOT_PUMP_QTY_W', fieldName: 'TOT_PUMP_QTY_W', header: { text: '우수펌프\n총양수량' } },
+
+ /* 4. 오수펌프 상세 (1, 2, 3) */
+ { name: 'PUMP_O1_D', fieldName: 'PUMP_O1_D', header: { text: '구경(mm)' } },
+ { name: 'PUMP_O1_Q', fieldName: 'PUMP_O1_Q', header: { text: '양수량\n(m3/min)' } },
+ { name: 'PUMP_O1_C', fieldName: 'PUMP_O1_C', header: { text: '펌프대수' } },
+ { name: 'PUMP_O1_S', fieldName: 'PUMP_O1_S', header: { text: '예비대수' } },
+
+ { name: 'PUMP_O2_D', fieldName: 'PUMP_O2_D', header: { text: '구경(mm)' } },
+ { name: 'PUMP_O2_Q', fieldName: 'PUMP_O2_Q', header: { text: '양수량\n(m3/min)' } },
+ { name: 'PUMP_O2_C', fieldName: 'PUMP_O2_C', header: { text: '펌프대수' } },
+ { name: 'PUMP_O2_S', fieldName: 'PUMP_O2_S', header: { text: '예비대수' } },
+
+ { name: 'PUMP_O3_D', fieldName: 'PUMP_O3_D', header: { text: '구경(mm)' } },
+ { name: 'PUMP_O3_Q', fieldName: 'PUMP_O3_Q', header: { text: '양수량\n(m3/min)' } },
+ { name: 'PUMP_O3_C', fieldName: 'PUMP_O3_C', header: { text: '펌프대수' } },
+ { name: 'PUMP_O3_S', fieldName: 'PUMP_O3_S', header: { text: '예비대수' } },
+
+ /* 5. 우수펌프 상세 (1, 2, 3) */
+ { name: 'PUMP_W1_D', fieldName: 'PUMP_W1_D', header: { text: '구경(mm)' } },
+ { name: 'PUMP_W1_Q', fieldName: 'PUMP_W1_Q', header: { text: '양수량\n(m3/min)' } },
+ { name: 'PUMP_W1_C', fieldName: 'PUMP_W1_C', header: { text: '펌프대수' } },
+ { name: 'PUMP_W1_S', fieldName: 'PUMP_W1_S', header: { text: '예비대수' } },
+
+ { name: 'PUMP_W2_D', fieldName: 'PUMP_W2_D', header: { text: '구경(mm)' } },
+ { name: 'PUMP_W2_Q', fieldName: 'PUMP_W2_Q', header: { text: '양수량\n(m3/min)' } },
+ { name: 'PUMP_W2_C', fieldName: 'PUMP_W2_C', header: { text: '펌프대수' } },
+ { name: 'PUMP_W2_S', fieldName: 'PUMP_W2_S', header: { text: '예비대수' } },
+
+ { name: 'PUMP_W3_D', fieldName: 'PUMP_W3_D', header: { text: '구경(mm)' } },
+ { name: 'PUMP_W3_Q', fieldName: 'PUMP_W3_Q', header: { text: '양수량\n(m3/min)' } },
+ { name: 'PUMP_W3_C', fieldName: 'PUMP_W3_C', header: { text: '펌프대수' } },
+ { name: 'PUMP_W3_S', fieldName: 'PUMP_W3_S', header: { text: '예비대수' } },
+
+ /* 6. 운영 정보 */
+ { name: 'PWR_USAGE', fieldName: 'PWR_USAGE', header: { text: '연간전력사용량\n(kWh/년)' } },
+ { name: 'RMK', fieldName: 'RMK', header: { text: '비고' } },
+ ],
+ columnLayout: [
+ { name: 'groupA', header: { text: '행정구역' }, items: ['sido', 'sgg'] },
+ 'PUMP_NM', 'GBN', 'TRT_FCT_NM', 'TYPE_GBN', 'ADDR', 'RN_DT', 'DSN_AR',
+ {
+ name: 'groupB',
+ header: { text: '계획시간대최대배수량(m3/hr)' },
+ items: ['DSN_QTY_A', 'DSN_QTY_B', 'DSN_QTY_DIFF'],
+ },
+ {
+ name: 'groupC',
+ header: { text: '배수능력' },
+ items: [
+ 'TOT_PUMP_QTY_O',
+ {
+ name: 'pumpO_Detail',
+ header: { text: '오수펌프 상세' },
+ items: [
+ { name: 'O1', header: { text: '오수펌프(1)' }, items: ['PUMP_O1_D', 'PUMP_O1_Q', 'PUMP_O1_C', 'PUMP_O1_S'] },
+ { name: 'O2', header: { text: '오수펌프(2)' }, items: ['PUMP_O2_D', 'PUMP_O2_Q', 'PUMP_O2_C', 'PUMP_O2_S'] },
+ { name: 'O3', header: { text: '오수펌프(3)' }, items: ['PUMP_O3_D', 'PUMP_O3_Q', 'PUMP_O3_C', 'PUMP_O3_S'] }
+ ]
+ },
+ 'TOT_PUMP_QTY_W',
+ {
+ name: 'pumpW_Detail',
+ header: { text: '우수펌프 상세' },
+ items: [
+ { name: 'W1', header: { text: '우수펌프(1)' }, items: ['PUMP_W1_D', 'PUMP_W1_Q', 'PUMP_W1_C', 'PUMP_W1_S'] },
+ { name: 'W2', header: { text: '우수펌프(2)' }, items: ['PUMP_W2_D', 'PUMP_W2_Q', 'PUMP_W2_C', 'PUMP_W2_S'] },
+ { name: 'W3', header: { text: '우수펌프(3)' }, items: ['PUMP_W3_D', 'PUMP_W3_Q', 'PUMP_W3_C', 'PUMP_W3_S'] }
+ ]
+ }
+ ],
+ },
+ 'PWR_USAGE', 'RMK',
+ ]
+ }
+];
\ No newline at end of file