From 0556f73c769f11dea1d38d0fdf0c8303f2b3122f Mon Sep 17 00:00:00 2001 From: JIeunhuh Date: Fri, 25 Apr 2025 14:29:13 +0900 Subject: [PATCH] =?UTF-8?q?ii=EB=B6=84=EC=84=9D=20=ED=8E=98=EC=9D=B4?= =?UTF-8?q?=EC=A7=80=20=EC=84=A4=EA=B3=84=20=EB=B3=80=EA=B2=BD=ED=86=A0?= =?UTF-8?q?=EB=8C=80=EB=A1=9C=20=ED=99=94=EB=A9=B4=EC=9E=AC=EA=B5=AC?= =?UTF-8?q?=ED=98=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/sn/app/components/ui/formSection.tsx | 2 +- apps/sn/app/ii/BaseLayout.tsx | 68 ++++---- apps/sn/app/ii/baseinfo/observe/page.tsx | 101 ------------ apps/sn/app/ii/baseinfo/polygon/page.tsx | 96 ----------- apps/sn/app/ii/baseinfo/regist/page.tsx | 99 ------------ apps/sn/app/ii/ir/irsetting/page.tsx | 114 -------------- apps/sn/app/ii/ir/measureDataUpload/page.tsx | 98 ------------ apps/sn/app/ii/irsetting/page.tsx | 61 +++++++ .../app/ii/{baseinfo/mock => rdii}/page.tsx | 101 +++++------- apps/sn/app/ii/rdii/rain/page.tsx | 54 ------- apps/sn/app/ii/rdii/rdiisetting/page.tsx | 149 ------------------ apps/sn/app/ii/result/page.tsx | 64 ++++++++ apps/sn/app/map/page.tsx | 1 + apps/sn/app/page.tsx | 21 +-- 14 files changed, 200 insertions(+), 829 deletions(-) delete mode 100644 apps/sn/app/ii/baseinfo/observe/page.tsx delete mode 100644 apps/sn/app/ii/baseinfo/polygon/page.tsx delete mode 100644 apps/sn/app/ii/baseinfo/regist/page.tsx delete mode 100644 apps/sn/app/ii/ir/irsetting/page.tsx delete mode 100644 apps/sn/app/ii/ir/measureDataUpload/page.tsx create mode 100644 apps/sn/app/ii/irsetting/page.tsx rename apps/sn/app/ii/{baseinfo/mock => rdii}/page.tsx (57%) delete mode 100644 apps/sn/app/ii/rdii/rain/page.tsx delete mode 100644 apps/sn/app/ii/rdii/rdiisetting/page.tsx create mode 100644 apps/sn/app/ii/result/page.tsx diff --git a/apps/sn/app/components/ui/formSection.tsx b/apps/sn/app/components/ui/formSection.tsx index b4e578aae..28e4618f7 100644 --- a/apps/sn/app/components/ui/formSection.tsx +++ b/apps/sn/app/components/ui/formSection.tsx @@ -10,7 +10,7 @@ interface FormSectionProps { const FormSection = ({ children, titleNm, form, name }: FormSectionProps) => { return ( -
+
{titleNm}
{ +const BaseLayout = ({ children,titleName, form, onSubmitEvent, graphBtn=false, searchBox }: BaseLayout) => { return ( - { }} selectClass={undefined} /> - { }} selectClass='' /> - { }} selectClass='' /> - { }} selectClass='' /> + { }} selectClass={undefined} /> + { }} selectClass='' /> + { }} selectClass='' /> + { }} selectClass='' /> - - - + {searchBox?.searchChk ? : null}

{titleName.firstCardTitle}

+
+ {graphBtn ? : null} + {/* 그래프 있을 시 */} + {graphBtn ? : null} +
{/* 폼 정보 입력 칸 */} - {children} -
- -
+ {children?.[0]}
- + {children?.[1] != null ?

{titleName.secondCardTitle}

-
- - {/* 그래프 있을 시 */} - {graphBtn ? : null} -
- { tableInfoData.cellClickFunc(e) }} - onPageChange={(e) => { tableInfoData.onPageChangeFunc(e) }} - /> -
+
{children?.[1]}
+
: null}
) } diff --git a/apps/sn/app/ii/baseinfo/observe/page.tsx b/apps/sn/app/ii/baseinfo/observe/page.tsx deleted file mode 100644 index 16bd24fb2..000000000 --- a/apps/sn/app/ii/baseinfo/observe/page.tsx +++ /dev/null @@ -1,101 +0,0 @@ -"use client" - -import { z } from "zod" -import { useForm, useFieldArray } from "react-hook-form" -import { zodResolver } from "@hookform/resolvers/zod" -import { FormField, SelectBox } from "@common/business_components/ui" -import { Select, SelectTrigger, SelectValue, SelectContent, SelectItem, Input, DatePicker } from "@common/components/ui" -import React, { useState } from "react" -import BaseLayout from "@/ii/BaseLayout" - -// zod 스키마 정의 -const formSchema = z.object({ - region: z.string(), - inputdate: z.coerce.date(), - rtkSource: z.string(), -}) -const region:{text:string,val:number}[] = [{text:'양평', val:1},{text:'강남',val:2},{text:'test',val:3}] -export default function RTKForm() { - const form = useForm>({ - resolver: zodResolver(formSchema), - defaultValues: { - region: "", - inputdate: new Date(), - rtkSource: "", - } - }) - const [selectedDate, setSelectedDate] = useState(new Date()) - // TODO: 임시 데이터 - const rtxNmHeadlist = [ - { id: 'no', title: '번호' }, - { id: 'hasu', title: '하수처리장' }, - { id: 'guyeok', title: '처리구역' }, - { id: 'fileNm', title: '파일명' }, - { id: 'time', title: '입력시간' } - ] - const rtxNmDataList = [ - { "no": '1', 'hasu': '하수처리장', 'guyeok': '처리구역', 'fileNm': '파일', 'time': '2025-04-18' } - ] - const handlePageChange = (page: number) => { - console.log('Page changed:', page) - } - - return ( - {}} graphBtn={false} tableInfoData={{headList: rtxNmHeadlist, tableData: rtxNmDataList, cellClickFunc: ()=>{}, onPageChangeFunc: ()=>{}}} > - {/* 기본 정보 입력 폼 */} -
-
-
○ 처리구역
- ( - {}} selectClass="" className="w-[150px]"/> - )} - /> -
- -
-
○ 입력일
- ( - { if (date) setSelectedDate(date) }} - mode={"single"} - /> - )} - /> -
-
-
○ 파일위치
- ( -
- -
- )} - /> -
-
-
○ 비고
- ( - - )} - /> -
-
-
- ) -} diff --git a/apps/sn/app/ii/baseinfo/polygon/page.tsx b/apps/sn/app/ii/baseinfo/polygon/page.tsx deleted file mode 100644 index ca252fcc4..000000000 --- a/apps/sn/app/ii/baseinfo/polygon/page.tsx +++ /dev/null @@ -1,96 +0,0 @@ -'use client' -import React, { useState } from 'react' -import { z } from 'zod' -import { zodResolver } from '@hookform/resolvers/zod' -import { useForm } from 'react-hook-form' -import { FormField, SelectBox } from '@common/business_components/ui' -import { Select, SelectTrigger, SelectValue, SelectContent, SelectItem, DatePicker, Input } from '@common/components/ui' -import BaseLayout from '@/ii/BaseLayout' -// zod 스키마 정의 -const formSchema = z.object({ - region: z.string(), - inputdate: z.coerce.date(), - rtkSource: z.string(), -}) -const region:{text:string,val:number}[] = [{text:'양평', val:1},{text:'강남',val:2},{text:'test',val:3}] -const Page = () => { - const form = useForm>({ - resolver: zodResolver(formSchema), - defaultValues: { - region: "", - inputdate: new Date(), - rtkSource: "", - } - }) - // TODO: 임시 데이터 - const rtxNmHeadlist = [ - { id: 'no', title: '번호' }, - { id: 'hasu', title: '하수처리장' }, - { id: 'guyeok', title: '처리구역' }, - { id: 'fileNm', title: '파일명' }, - { id: 'time', title: '입력시간' } - ] - const rtxNmDataList = [ - { "no": '1', 'hasu': '하수처리장', 'guyeok': '처리구역', 'fileNm': '파일', 'time': '2025-04-18' } - ] - const [selectedDate, setSelectedDate] = useState(new Date()) - return ( - { }} graphBtn={false} tableInfoData={{ headList:rtxNmHeadlist, tableData:rtxNmDataList, cellClickFunc: () => { }, onPageChangeFunc: () => { } }}> -
-
-
○ 처리구역
- ( - { } } selectClass={undefined} className='w-[150px]'/> - )} - /> -
- -
-
○ 입력일
- ( - { if (date) setSelectedDate(date) }} - mode={"single"} - /> - )} - /> -
-
-
○ 파일위치
- ( -
- -
- )} - /> -
-
-
○ 비고
- ( - - )} - /> -
-
-
- ) -} - -export default Page \ No newline at end of file diff --git a/apps/sn/app/ii/baseinfo/regist/page.tsx b/apps/sn/app/ii/baseinfo/regist/page.tsx deleted file mode 100644 index b8dbf6205..000000000 --- a/apps/sn/app/ii/baseinfo/regist/page.tsx +++ /dev/null @@ -1,99 +0,0 @@ -"use client" -import { z } from "zod" -import { FormField} from '@common/business_components/ui' -import { Select, SelectTrigger, SelectValue, SelectContent, SelectItem, DatePicker, Input } from '@common/components/ui' -import React, { useState } from 'react' -import { zodResolver } from "@hookform/resolvers/zod" -import { useForm } from "react-hook-form" -import BaseLayout from "@/ii/BaseLayout" - -// zod 스키마 정의 -const formSchema = z.object({ - region: z.string(), - inputdate: z.coerce.date(), - rtkSource: z.string(), -}) - -function RegistForm() { - const form = useForm>({ - resolver: zodResolver(formSchema), - defaultValues: { - region: "", - inputdate: new Date(), - rtkSource: "", - } - }) - const [selectedDate, setSelectedDate] = useState(new Date()) - const onSubmit = (data: z.infer) => { - console.log("✅ 제출 데이터:", data) - } - // TODO: 임시 데이터 - const rtxNmHeadlist = [ - { id: 'no', title: '번호' }, - { id: 'hasu', title: '하수처리장' }, - { id: 'guyeok', title: '처리구역' }, - { id: 'fileNm', title: '파일명' }, - { id: 'time', title: '입력시간' } - ] - const rtxNmDataList = [ - { "no": '1', 'hasu': '하수처리장', 'guyeok': '처리구역', 'fileNm': '파일', 'time': '2025-04-18' } - ] - - return ( - { }, onPageChangeFunc: () => { } - }}> - {/* 기본 정보 입력 폼 */} -
-
-
○ 처리구역
- ( - - )} - /> -
- -
-
○ 입력일
- ( - { if (date) setSelectedDate(date) }} - mode={"single"} - /> - )} - /> -
-
-
○ 파일위치
- ( -
- -
- )} - /> -
-
-
- ) -} - -export default RegistForm \ No newline at end of file diff --git a/apps/sn/app/ii/ir/irsetting/page.tsx b/apps/sn/app/ii/ir/irsetting/page.tsx deleted file mode 100644 index 95d99943c..000000000 --- a/apps/sn/app/ii/ir/irsetting/page.tsx +++ /dev/null @@ -1,114 +0,0 @@ -'use client' -import React, { useState } from 'react' -import BaseLayout from '../../BaseLayout' -import { FormField, SelectBox } from '@common/business_components/ui' -import { DatePicker, Input } from '@common/components/ui' -import { z } from 'zod' -import { zodResolver } from '@hookform/resolvers/zod' -import { useForm } from 'react-hook-form' -import FormSection from '@/components/ui/formSection' -const formSchema = z.object({ - region: z.string(), - suyeonga: z.number(), - inputdate: z.coerce.date(), - rtkSource: z.string(), -}) -const region: { text: string, val: number }[] = [{ text: '양평', val: 1 }, { text: '강남', val: 2 }, { text: 'test', val: 3 }] -const IrSetting = () => { - const form = useForm>({ - resolver: zodResolver(formSchema), - defaultValues: { - region: "", - suyeonga: 0, - inputdate: new Date(), - rtkSource: "", - } - }) - console.log('test') - // TODO: 임시 데이터 - const rtxNmHeadlist = [ - { id: 'nm', title: '분석번호' }, - { id: 'hasu', title: '하수처리장' }, - { id: 'region', title: '처리구역' }, - { id: 'sangsu', title: '상수사용량' }, - { id: 'wjsghks', title: '오수 전환율' }, - { id: 'tnsdhtn', title: '순오수량' }, - { id: 'rkddn', title: '강우 유출량' }, - { id: 'rdii', title: 'RDII' } - ] - const rtxNmDataList = [ - { "nm": '1', 'hasu': '', 'region': '처리', 'sangsu': '파일', 'wjsghks': '', 'tnsdhtn': '', 'rkddn': '', 'rdii': '' } - ] - const [selectedDate, setSelectedDate] = useState(new Date()) - return ( - { }} graphBtn={true} tableInfoData={{ headList: rtxNmHeadlist, tableData: rtxNmDataList, cellClickFunc: () => { }, onPageChangeFunc: () => { } }}> -
- { }} selectClass={undefined} className='w-[150px]' /> -
-
○ 오수 전환율
- ( - - )} - /> -
-
-
○ 수용가 수
- ( - { }} selectClass={undefined} className='w-[150px]' /> - )} - /> -
-
-
○ 수용가-맨홀 매칭
- ( -
- -
- )} - /> -
-
-
○ 상수사용량 정보
- ( - { if (date) setSelectedDate(date) }} - mode={"single"} className='w-[150px]' - /> - )} - /> -
-
-
○ 관망도 자료
- ( -
- -
- )} - /> -
-
-
- ) -} - -export default IrSetting \ No newline at end of file diff --git a/apps/sn/app/ii/ir/measureDataUpload/page.tsx b/apps/sn/app/ii/ir/measureDataUpload/page.tsx deleted file mode 100644 index a7a461437..000000000 --- a/apps/sn/app/ii/ir/measureDataUpload/page.tsx +++ /dev/null @@ -1,98 +0,0 @@ -'use client' -import React, { useState } from 'react' -import BaseLayout from '../../BaseLayout' -import { FormField, SelectBox } from '@common/business_components/ui' -import { DatePicker, Input } from '@common/components/ui' -import { z } from 'zod' -import { zodResolver } from '@hookform/resolvers/zod' -import { useForm } from 'react-hook-form' -const formSchema = z.object({ - region: z.string(), - inputdate: z.coerce.date(), - rtkSource: z.string(), -}) -const region: { text: string, val: number }[] = [{ text: '양평', val: 1 }, { text: '강남', val: 2 }, { text: 'test', val: 3 }] -const MeasureDataUpload = () => { - const form = useForm>({ - resolver: zodResolver(formSchema), - defaultValues: { - region: "", - inputdate: new Date(), - rtkSource: "", - } - }) - // TODO: 임시 데이터 - const rtxNmHeadlist = [ - { id: 'fileNm', title: '파일명' }, - { id: 'status', title: '상태' }, - { id: 'code', title: '지정코드' }, - { id: 'cjfl', title: '처리' }, - { id: 'add', title: '추가' }, - { id: 'update', title: '변경' }, - { id: 'error', title: '오류' }, - { id: 'skip', title: 'Skip' } - ] - const rtxNmDataList = [ - { "status": '상태', 'code': '123824', 'cjfl': '처리', 'fileNm': '파일', 'add': '', 'update': '', 'error': '', 'skip': '' } - ] - const [selectedDate, setSelectedDate] = useState(new Date()) - return ( - { }} graphBtn={true} tableInfoData={{ headList: rtxNmHeadlist, tableData: rtxNmDataList, cellClickFunc: () => { }, onPageChangeFunc: () => { } }}> -
-
-
○ 처리구역
- ( - { }} selectClass={undefined} className='w-[150px]' /> - )} - /> -
- -
-
○ 입력일
- ( - { if (date) setSelectedDate(date) }} - mode={"single"} className='w-[150px]' - /> - )} - /> -
-
-
○ 관로 관리번호
- ( - - )} - /> -
-
-
○ 파일위치
- ( -
- -
- )} - /> -
-
-
- ) -} - -export default MeasureDataUpload \ No newline at end of file diff --git a/apps/sn/app/ii/irsetting/page.tsx b/apps/sn/app/ii/irsetting/page.tsx new file mode 100644 index 000000000..1a9d1d70c --- /dev/null +++ b/apps/sn/app/ii/irsetting/page.tsx @@ -0,0 +1,61 @@ +'use client' +import React, { useState } from 'react' +import { FormField, SelectBox } from '@common/business_components/ui' +import { Button, DatePicker, Input } from '@common/components/ui' +import { z } from 'zod' +import { zodResolver } from '@hookform/resolvers/zod' +import { useForm } from 'react-hook-form' +import FormSection from '@/components/ui/formSection' +import BaseLayout from '../BaseLayout' +const formSchema = z.object({ + managenm: z.string(), + region: z.string(), + suyeonga: z.number(), + inputdate: z.coerce.date(), + rtkSource: z.string(), + suyeongaPlace: z.string() +}) +const region: { text: string, val: number }[] = [{ text: '양평', val: 1 }, { text: '강남', val: 2 }, { text: 'test', val: 3 }] +const IrSetting = () => { + const form = useForm>({ + resolver: zodResolver(formSchema), + defaultValues: { + managenm: "", + region: "", + suyeonga: 0, + inputdate: new Date(), + rtkSource: "", + suyeongaPlace: "" + } + }) + const [selectedDate, setSelectedDate] = useState(new Date()) + return ( + { } } graphBtn={false}> +
+ + +
+ +
+
+
+
+
+ +
+
+ +
+ + { if (date) setSelectedDate(date) }} mode={"single"} /> + + +
+ +
+
+
+ ) +} + +export default IrSetting \ No newline at end of file diff --git a/apps/sn/app/ii/baseinfo/mock/page.tsx b/apps/sn/app/ii/rdii/page.tsx similarity index 57% rename from apps/sn/app/ii/baseinfo/mock/page.tsx rename to apps/sn/app/ii/rdii/page.tsx index 0d9b4f46c..9a04102e7 100644 --- a/apps/sn/app/ii/baseinfo/mock/page.tsx +++ b/apps/sn/app/ii/rdii/page.tsx @@ -1,15 +1,14 @@ "use client" -import { z } from "zod" +import { date, z } from "zod" import { useForm, useFieldArray } from "react-hook-form" import { zodResolver } from "@hookform/resolvers/zod" -import { Form, FormControl, FormField, FormItem, FormLabel, FormMessage, FormUi, SearchDiv, SearchFormLeft, SearchFormRight, SelectBox } from "@common/business_components/ui" -import { Select, SelectTrigger, SelectValue, SelectContent, SelectItem, Input, Button } from "@common/components/ui" +import { Select, SelectTrigger, SelectValue, SelectContent, SelectItem, Input, Button, DatePicker } from "@common/components/ui" import { UiTable } from "@common/business_components/ui" -import React from "react" -import ContentLayout from "@/components/ui/contentLayout" -import ListDiv from "@common/business_components/ui/list_div" +import React, { useState } from "react" import BaseLayout from "@/ii/BaseLayout" +import FormSection from "@/components/ui/formSection" + // TODO: 컴포넌트 호출 ~ 필요 코드 수정해야댐 // zod 스키마 정의 const formSchema = z.object({ @@ -27,7 +26,11 @@ const formSchema = z.object({ Dmax: z.string(), Drec: z.string(), Do: z.string(), - })) + })), + suyeonga: z.string(), + rate: z.string(), + date: z.coerce.date(), + rain: z.string(), }) export default function RTKForm() { @@ -79,64 +82,23 @@ export default function RTKForm() { { id: 'Drec', title: 'Drec' }, { id: 'Do', title: 'Do' } ] - const rtxNmHeadlist = [ - { id: 'no', title: '번호' }, - { id: 'hasu', title: '하수처리장' }, - { id: 'guyeok', title: '처리구역' }, - { id: 'cnfcj', title: '출처' }, - { id: 'time', title: '입력시간' } - ] // 테이블 페이지 변경 핸들러 const handlePageChange = (page: number) => { console.log('Page changed:', page) } - + const [selectedDate, setSelectedDate] = useState(new Date()) return ( - { }} graphBtn={false} tableInfoData={{ headList: rtxNmHeadlist, tableData: [{}], cellClickFunc: () => { }, onPageChangeFunc: () => { } }}> -
-
-
○ 처리구역
- ( - { }} selectClass="" className="w-[150px]" /> - )} - /> -
-
-
○ RDII 기여면적(ha)
- ( - - )} - /> -
-
-
○ RTK계수 출처
- ( - - )} - /> -
-
- - {/* 테이블 컨테이너 */} -
+ { }} graphBtn={false}> + {[
+
+ +
○ 단위도 계수
@@ -169,7 +131,26 @@ export default function RTKForm() {
+
+
+ +
+
+ +
+ + { if (date) setSelectedDate(date) }} mode={"single"} /> + + +
+ +
+
+
+ +
+ ]}
) } diff --git a/apps/sn/app/ii/rdii/rain/page.tsx b/apps/sn/app/ii/rdii/rain/page.tsx deleted file mode 100644 index e74560b66..000000000 --- a/apps/sn/app/ii/rdii/rain/page.tsx +++ /dev/null @@ -1,54 +0,0 @@ -'use client' -import React, { useState } from 'react' -import BaseLayout from '../../BaseLayout' -import { FormField, SelectBox } from '@common/business_components/ui' -import { DatePicker, Input } from '@common/components/ui' -import { z } from 'zod' -import { zodResolver } from '@hookform/resolvers/zod' -import { useForm } from 'react-hook-form' -const formSchema = z.object({ - region: z.string(), -}) -const region: { text: string, val: number }[] = [{ text: '양평', val: 1 }, { text: '강남', val: 2 }, { text: 'test', val: 3 }] -const RainDataUpload = () => { - const form = useForm>({ - resolver: zodResolver(formSchema), - defaultValues: { - region: "", - } - }) - // TODO: 임시 데이터 - const rtxNmHeadlist = [ - { id: 'fileNm', title: '파일명' }, - { id: 'status', title: '상태' }, - { id: 'code', title: '지정코드' }, - { id: 'cjfl', title: '처리' }, - { id: 'add', title: '추가' }, - { id: 'update', title: '변경' }, - { id: 'error', title: '오류' }, - { id: 'skip', title: 'Skip' } - ] - const rtxNmDataList = [ - { "status": '상태', 'code': '123824', 'cjfl': '처리', 'fileNm': '파일', 'add': '', 'update': '', 'error': '', 'skip': '' } - ] - return ( - { }} graphBtn={true} tableInfoData={{ headList: rtxNmHeadlist, tableData: rtxNmDataList, cellClickFunc: () => { }, onPageChangeFunc: () => { } }}> -
-
-
○ 파일위치
- ( -
- -
- )} - /> -
-
-
- ) -} - -export default RainDataUpload \ No newline at end of file diff --git a/apps/sn/app/ii/rdii/rdiisetting/page.tsx b/apps/sn/app/ii/rdii/rdiisetting/page.tsx deleted file mode 100644 index dd4eb367c..000000000 --- a/apps/sn/app/ii/rdii/rdiisetting/page.tsx +++ /dev/null @@ -1,149 +0,0 @@ -'use client' -import BaseLayout from '@/ii/BaseLayout' -import { FormField, SelectBox } from '@common/business_components/ui' -import { DatePicker, Input } from '@common/components/ui' -import { zodResolver } from '@hookform/resolvers/zod' -import React, { useState } from 'react' -import { useForm } from 'react-hook-form' -import { z } from 'zod' -const formSchema = z.object({ - region: z.string(), - suyeonga:z.number(), - meter:z.string(), - inputdate: z.coerce.date(), - inpSource:z.string(), - rtkSource: z.string(), -}) -const region: { text: string, val: number }[] = [{ text: '양평', val: 1 }, { text: '강남', val: 2 }, { text: 'test', val: 3 }] -const RdiiSetting = () => { - const form = useForm>({ - resolver: zodResolver(formSchema), - defaultValues: { - region: "", - meter:"", - suyeonga:0, - inputdate: new Date(), - inpSource:"", - rtkSource: "", - } - }) - // TODO: 임시 데이터 - const rtxNmHeadlist = [ - { id: 'nm', title: '분석번호' }, - { id: 'hasu', title: '하수처리장' }, - { id: 'region', title: '처리구역' }, - { id: 'sangsu', title: '상수사용량' }, - { id: 'wjsghks', title: '오수 전환율' }, - { id: 'tnsdhtn', title: '순오수량' }, - { id: 'rkddn', title: '강우 유출량' }, - { id: 'rdii', title: 'RDII' } - ] - const rtxNmDataList = [ - { "nm": '1', 'hasu': '', 'region': '처리', 'sangsu': '파일', 'wjsghks': '', 'tnsdhtn': '', 'rkddn': '', 'rdii': '' } - ] - const [selectedDate, setSelectedDate] = useState(new Date()) - return ( - { }} graphBtn={true} tableInfoData={{ headList: rtxNmHeadlist, tableData: rtxNmDataList, cellClickFunc: () => { }, onPageChangeFunc: () => { } }}> -
-
-
○ 처리구역
- ( - { }} selectClass={undefined} className='w-[150px]' /> - )} - /> -
-
-
○ 상수사용량 정보
- ( - { if (date) setSelectedDate(date) }} - mode={"single"} className='w-[150px]' - /> - )} - /> -
-
-
○ 관망도자료
- ( -
- -
- )} - /> -
-
-
○ RDII 기여면적(ha)
- ( - - )} - /> -
-
-
○ 오수 전환율
- ( - - )} - /> -
-
-
○ 강우자료
- ( -
- -
- )} - /> -
-
-
○ 수용가 수
- ( - { }} selectClass={undefined} className='w-[150px] h-[3.2rem]' /> - )} - /> -
-
-
○ 수용가-맨홀 매칭
- ( - { }} selectClass={undefined} className='h-[3.2rem] w-[150px]' /> - )} - /> -
-
-
- ) -} - -export default RdiiSetting \ No newline at end of file diff --git a/apps/sn/app/ii/result/page.tsx b/apps/sn/app/ii/result/page.tsx new file mode 100644 index 000000000..f42f2ab29 --- /dev/null +++ b/apps/sn/app/ii/result/page.tsx @@ -0,0 +1,64 @@ +'use client' +import React, { useState } from 'react' +import { FormField, SelectBox, UiTable } from '@common/business_components/ui' +import { Button, DatePicker, Input } from '@common/components/ui' +import { z } from 'zod' +import { zodResolver } from '@hookform/resolvers/zod' +import { useForm } from 'react-hook-form' +import FormSection from '@/components/ui/formSection' +import BaseLayout from '../BaseLayout' +import { title } from 'process' +const formSchema = z.object({ + managenm: z.string(), + region: z.string(), + suyeonga: z.number(), + inputdate: z.coerce.date(), + rtkSource: z.string(), + suyeongaPlace: z.string() +}) +// TODO: 분석구분에 따라서 테이블 컬럼 변경필요 +const tableColumn = [ + { id: 'no', title: '번호' }, + { id: 'hasu', title: '하수처리장' }, + { id: 'guyeok', title: '처리구역' }, + { id: 'sangsu', title: '상수 사용량' }, + { id: 'rate', title: '오수 전환율' }, + { id: 'water', title: '순오수량' }, + { id: 'measureWater', title: '측정하수량' }, + { id: 'ii', title: '침입수량' }, + { id: 'date', title: '분석일자' }, + { id: 'usr', title: '분석자' } +] +const tableInfoData = [{ 'no': '1', 'hasu': '양평하수처리장', 'guyeok': '양평', 'sangsu': '1000', 'rate': '0.5', 'water': '500', 'measureWater': '1000', 'ii': '500', 'date': '2023-10-01', 'usr': '홍길동' }] +const Result = () => { + const form = useForm>({ + resolver: zodResolver(formSchema), + defaultValues: { + managenm: "", + region: "", + suyeonga: 0, + inputdate: new Date(), + rtkSource: "", + suyeongaPlace: "" + } + }) + return ( + { }} graphBtn={true}> + {[
+
○ 침입수 산정결과 현황
+ { }} + onPageChange={(e) => { }} + /> +
]} +
+ ) +} + +export default Result \ No newline at end of file diff --git a/apps/sn/app/map/page.tsx b/apps/sn/app/map/page.tsx index 4dbb90c49..7339d0ac0 100644 --- a/apps/sn/app/map/page.tsx +++ b/apps/sn/app/map/page.tsx @@ -10,6 +10,7 @@ import { mapService } from "@service"; const Map = () => { const [treeData, setTreeData] = useState([]); // 초기값을 객체 또는 null로 설정 + const [selectedFeature,setSelectedFeature] = useState(null); // 선택된 피처 상태 const fetchData = async () => { try { diff --git a/apps/sn/app/page.tsx b/apps/sn/app/page.tsx index 0ae1eb678..db70f7dfa 100644 --- a/apps/sn/app/page.tsx +++ b/apps/sn/app/page.tsx @@ -14,24 +14,9 @@ export default function Home() {

I/I 분석(기초정보 설정)

- - - - -
-
-
-

I/I 분석(침입수 분석)

-
- - -
-
-
-

I/I 분석(RDII 분석)

-
- - + + +