diff --git a/apps/wr/app/ruseFcltMng/fcltReg/pbnstReg/page.tsx b/apps/wr/app/ruseFcltMng/fcltReg/pbnstReg/page.tsx index 57f77dfff..7585e2c32 100644 --- a/apps/wr/app/ruseFcltMng/fcltReg/pbnstReg/page.tsx +++ b/apps/wr/app/ruseFcltMng/fcltReg/pbnstReg/page.tsx @@ -21,17 +21,14 @@ import { z } from "zod"; export default function PublicReuseFaciltyInsert() { const { code, pbnst, pubHasuInit,pbnstRegInit } = useWrStore((state) => state); - const { pubFacHeadList,pbnstHasuRes } = pbnst; - - - const {pbnstRes} = pbnst + const { pubFacHeadList,pbnstHasuRes, pbnstRes } = pbnst; const [currentTab, setCurrentTab] = useState("mng"); const [fcltMng, setFcltMng] = useState(); const [pbnstBiz, setPbnstBiz] = useState(); const [searchTxt, setSearchTxt] = useState(); const [bdstTable, setbdstTable] = useState(); - + const [selectBdst, setSelectBdst] = useState(); useEffect(() => { if (!pbnst.isInit ) { @@ -56,10 +53,9 @@ useEffect(() => { console.log(val); }; const cellClick = (val: number | undefined) => { - - - setPbnstBiz(pbnstRes?.fcBizs) - setFcltMng([]); + if (val === undefined) return; + console.log("pbnstRes", pbnstRes); + setSelectBdst(pbnstRes); }; const resetContents = () => { setFcltMng([]); // 빈 배열로 설정하여 신규 모드로 전환 @@ -135,7 +131,7 @@ useEffect(() => { 차수별정보 - + diff --git a/apps/wr/app/store/ruseFcltMng/fcltReg/pbnstReg/headList.tsx b/apps/wr/app/store/ruseFcltMng/fcltReg/pbnstReg/headList.tsx index d3a0e5f0e..fd1327a8b 100644 --- a/apps/wr/app/store/ruseFcltMng/fcltReg/pbnstReg/headList.tsx +++ b/apps/wr/app/store/ruseFcltMng/fcltReg/pbnstReg/headList.tsx @@ -17,11 +17,11 @@ export const pubFacHeadListExport: TableUpperProps[] = [ ]; export const pbnstMngUpHeadListExport: TableUpperProps[] = [ - { id: "mng", title: "운영방식" }, - { id: "subCo", title: "대행업체" }, - { id: "startDay", title: "시작일", upName: "upChangeRe", upSequnce: 1 }, - { id: "endDay", title: "종료일", upName: "upChangeRe", upSequnce: 2 }, -]; + { id: "operMthd", title: "운영방식" }, + { id: "rprtvBzenty", title: "대행업체" }, + { id: "bgngDt", title: "시작일", upName: "upChangeRe", upSequnce: 1 }, + { id: "endDt", title: "종료일", upName: "upChangeRe", upSequnce: 2 }, +]; export const pplInstlsHeadListExport: TableUpperProps[] = [ diff --git a/apps/wr/components/ui/form/fcltReg/pbnstReg/mngReg/mngRegForm.tsx b/apps/wr/components/ui/form/fcltReg/pbnstReg/mngReg/mngRegForm.tsx index 699a687e9..8d1ce82b8 100644 --- a/apps/wr/components/ui/form/fcltReg/pbnstReg/mngReg/mngRegForm.tsx +++ b/apps/wr/components/ui/form/fcltReg/pbnstReg/mngReg/mngRegForm.tsx @@ -6,7 +6,7 @@ import { Form, FormField } from "@common/business_components/ui/form"; import { Button, Input, TableHead, TableRow } from "@common/components"; import { zodResolver } from "@hookform/resolvers/zod"; import { useEffect, useState } from "react"; -import { set, useForm } from "react-hook-form"; +import { set, useFieldArray, useForm } from "react-hook-form"; import { nullable, z } from "zod"; import { useWrStore } from "@/app/store"; import { @@ -23,7 +23,7 @@ import { import RuseMngTable from "@/components/ui/table/pbnstReg/ruseMngTable/ruseMngTable"; import { TusClientUpload } from "@/components/lib/useTus_wr/useTusWr"; import type { Upload } from "tus-js-client"; -import type { fcltOperInfoType, ruseFcltType } from "@/app/store/ruseFcltMng/fcltReg/pbnstReg/type"; +import { pbnstRegZod, type customPbnst, type fcltOperInfoType, type operType, type ruseFcltType } from "@/app/store/ruseFcltMng/fcltReg/pbnstReg/type"; const formSchema = z.object({ fcltNm: z.string().min(2).max(50), @@ -35,10 +35,11 @@ const formSchema = z.object({ splyExtraCpct: z.number(), }); -export function PbnstMngForm({ data }: { data: ruseFcltType[] }) { +export function PbnstMngForm({ data }: { data: customPbnst }) { + console.log("data", data); const { pbnst } = useWrStore((state) => state); - const { pbnstMngUpHeadList, isInit } = pbnst; - const [ruseOperData, setRuseOperData] = useState(); + const { pbnstMngUpHeadList} = pbnst; + const [ruseOperData, setRuseOperData] = useState(); const [planFiles, setPlanFiles] = useState(null); const [relationfiles, setRelationFiles] = useState(null); @@ -53,35 +54,31 @@ export function PbnstMngForm({ data }: { data: ruseFcltType[] }) { setProgress(Number(percentage)); }; - const form = useForm>({ - resolver: zodResolver(formSchema), - defaultValues: { - fcltNm: "", - psysScdg: "", - designScdg: "", - fcltCpct: 0, - swtrmtCpct: 0, - ruseCpct: 0, - splyExtraCpct: 0, - }, + const form = useForm>({ + resolver: zodResolver(pbnstRegZod), + defaultValues: {...data}, + }); + + const { fields: fcOpersField } = useFieldArray({ + control: form.control, + name: "fcOpers", }); - const selectOptions = data?.map((item) => ({ - text: item.fcltNm, - val: item.pbnstRuseFcltPk, - })) || [{ text: "없음", val: "1" }]; + console.log("fcOpersField", fcOpersField); + // const selectOptions = data?.map((item) => ({ + // text: item.fcltNm, + // val: item.pbnstRuseFcltPk, + // })) || [{ text: "없음", val: "1" }]; const onSelectValue = (val: string) => {}; useEffect(() => { - if (isInit) { - form.reset(); - setRuseOperData([{}] as fcltOperInfoType[]); - } - }, [isInit]); + form.reset(data); + // setRuseOperData(data.fcOpers); + }, [data]); // 2. Define a submit handler. - function onSubmit(values: z.infer) { + function onSubmit(values: z.infer) { console.log(values); } @@ -126,22 +123,7 @@ export function PbnstMngForm({ data }: { data: ruseFcltType[] }) {

재이용 시설명

- ( - - {}} - {...field} - /> - - )} - /> + {form.getValues("ruseUtztnFcltNm") ? ": " + form.getValues("ruseUtztnFcltNm") : ""} @@ -159,7 +141,11 @@ export function PbnstMngForm({ data }: { data: ruseFcltType[] }) { ({ + ...item, + bgngDt: item.bgngDt.toLocaleDateString() || "", + endDt: item.endDt.toLocaleDateString() || "", + }))} headList={pbnst.pbnstMngUpHeadList} upHeadList={pbnst.pbnstMngNm} > @@ -174,7 +160,7 @@ export function PbnstMngForm({ data }: { data: ruseFcltType[] }) { name="fcltCpct" render={({ field }) => ( - + )} /> @@ -185,7 +171,7 @@ export function PbnstMngForm({ data }: { data: ruseFcltType[] }) { name="swtrmtCpct" render={({ field }) => ( - + )} /> @@ -196,7 +182,7 @@ export function PbnstMngForm({ data }: { data: ruseFcltType[] }) { name="ruseCpct" render={({ field }) => ( - + )} /> @@ -207,7 +193,7 @@ export function PbnstMngForm({ data }: { data: ruseFcltType[] }) { name="splyExtraCpct" render={({ field }) => ( - + )} /> diff --git a/apps/wr/components/ui/table/pbnstReg/ruseMngTable/ruseMngTable.tsx b/apps/wr/components/ui/table/pbnstReg/ruseMngTable/ruseMngTable.tsx index 0f5557821..121ad80f4 100644 --- a/apps/wr/components/ui/table/pbnstReg/ruseMngTable/ruseMngTable.tsx +++ b/apps/wr/components/ui/table/pbnstReg/ruseMngTable/ruseMngTable.tsx @@ -29,7 +29,7 @@ export default function RuseMngTable({ ) : ( {headList.map((head) => ( - + {head.title} ))}