From 675a16a29476cb136593ed5c114167741ae8fa22 Mon Sep 17 00:00:00 2001 From: ljpark Date: Mon, 11 May 2026 14:02:05 +0900 Subject: [PATCH] =?UTF-8?q?wr:=20=EC=A3=BC=EC=84=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../matMng/coMat/coMatRvw/page.tsx | 4 +- apps/wr/app/store/matDmd/coMatRvw/index.tsx | 5 +- apps/wr/app/store/matDmd/coMatRvw/type.tsx | 72 +++++++++---------- .../ui/form/coMat/conCostForm/conCostForm.tsx | 44 ++++++------ 4 files changed, 64 insertions(+), 61 deletions(-) diff --git a/apps/wr/app/(with-layout)/matMng/coMat/coMatRvw/page.tsx b/apps/wr/app/(with-layout)/matMng/coMat/coMatRvw/page.tsx index d74d74a1f..d88906641 100644 --- a/apps/wr/app/(with-layout)/matMng/coMat/coMatRvw/page.tsx +++ b/apps/wr/app/(with-layout)/matMng/coMat/coMatRvw/page.tsx @@ -52,7 +52,7 @@ export default function CoMatRvw() { const { auth, code, coRvw, coMatRvwInit, coMatRvwSearch, coMatRvwInqua } = useWrStore((state) => state); const { coMatRvwRes, coMatRvwCount } = coRvw; - const [mounted, setMounted] = useState(false); + // const [mounted, setMounted] = useState(false); const { regAuthrtYn } = auth; const alert = useAlertStore((state) => state.setMessage); @@ -186,7 +186,7 @@ export default function CoMatRvw() { useEffect(() => { if (!initRef.current) { coMatRvwInit(1, 13, fromDate, toDate); - setMounted(true); + //setMounted(true); initRef.current = true; } }, [coMatRvwInit, initRef, fromDate, toDate]); diff --git a/apps/wr/app/store/matDmd/coMatRvw/index.tsx b/apps/wr/app/store/matDmd/coMatRvw/index.tsx index 39d1eaa28..db4b47370 100644 --- a/apps/wr/app/store/matDmd/coMatRvw/index.tsx +++ b/apps/wr/app/store/matDmd/coMatRvw/index.tsx @@ -99,9 +99,10 @@ export const coRvwActionsExport: (set: any) => coRvwActions = (set: any) => { }, })); }, + // 수요처 매칭 검토 저장 coMatRvwUpdate: async ( - splyCd: string, - dmdCd: string, + splyCd: string, // 공공기관재사용시설아이디 - 하수재이용시설id : pbnst_ruse_fclt_id + dmdCd: string, // 수요정보id dmd_info_id data: DedMatUpdateType ): Promise => { try { diff --git a/apps/wr/app/store/matDmd/coMatRvw/type.tsx b/apps/wr/app/store/matDmd/coMatRvw/type.tsx index ec0f0e09c..771fc03c4 100644 --- a/apps/wr/app/store/matDmd/coMatRvw/type.tsx +++ b/apps/wr/app/store/matDmd/coMatRvw/type.tsx @@ -60,47 +60,47 @@ const DemandCoSchema = z.object({ }); const DemandCstSchema = z.object({ - dmdInfoSn: z.number().nullish(), - usgPrcsProcs: z.string().nullish(), - cstrnCst: z.number().default(0), - fcltSbsdCstrnCst: z.number().default(0), - prcsFcltCpctCstrnCst: z.number().default(0), + dmdInfoSn: z.number().nullish(), // 수요정보 일련번호 + usgPrcsProcs: z.string().nullish(), // 용도에 따른 처리공정 + cstrnCst: z.number().default(0), // 공급관로 표준공사비(백만원) + fcltSbsdCstrnCst: z.number().default(0), // 시설부대경비 + prcsFcltCpctCstrnCst: z.number().default(0), // 처리시설용량에 따른 공사비(백만원) - 처리시설용량공사비용 }); export const DmdCoReqSchema = z.object({ - cityText: z.string().nullish(), - sggText: z.string().nullish(), - dmdInfoSn: z.number().default(0), - dmdInfoId: z.string().default(''), - dmndTmng: z.coerce.date().nullish(), - dmndQty: z.number().nullish(), // null 또는 undefined 허용 - blgcOxygDmndQnt: z.number().nullish(), - wntUntprc: z.number().nullish(), - grssClfg: z.number().nullish(), - combResdch: z.number().nullish(), - trbt: z.number().nullish(), - smll: z.string().nullish(), - crmty: z.number().nullish(), - tn: z.number().nullish(), - tph: z.number().nullish(), - ph: z.string().nullish(), - clIonQnt: z.number().nullish(), - cdtnv: z.number().nullish(), - rmrk: z.string().nullish(), - useUsgCd: z.string().nullish(), - mtchnCmptnYmd: z.string().nullish(), - rvwCmptnYmd: z.string().nullish(), - demandCo: DemandCoSchema.nullish(), - demandMatching: DemandMatchingSchema.nullish(), - demandCst: DemandCstSchema.nullish(), - ruseUtztnFcltNm: z.string().nullish(), + cityText: z.string().nullish(), // 시도 + sggText: z.string().nullish(), // 시군구 + dmdInfoSn: z.number().default(0), // 수요정보 일련번호 + dmdInfoId: z.string().default(''), // 수요정보 ID + dmndTmng: z.coerce.date().nullish(), // 요구시기 + dmndQty: z.number().nullish(), // 요구수량(m³/일) + blgcOxygDmndQnt: z.number().nullish(), // 생물학적 산소요구량(BOD)(mg/L) + wntUntprc: z.number().nullish(), // 희망단가(원/m3) + grssClfg: z.number().nullish(), // 총대장균군수(개/mg) + combResdch: z.number().nullish(), // 결합잔류염소(mg/L) + trbt: z.number().nullish(), // 탁도(NTU) + smll: z.string().nullish(), // 냄새 + crmty: z.number().nullish(), // 색도(도) + tn: z.number().nullish(), // 총질소(T-N)(mg/L) + tph: z.number().nullish(), // 총인(T-P)(mg/L) + ph: z.string().nullish(), // 수소이온농도(pH) + clIonQnt: z.number().nullish(), // 염화물(mgCL/L) + cdtnv: z.number().nullish(), // 전기전도도(㎲/cm) + rmrk: z.string().nullish(), // 비고 + useUsgCd: z.string().nullish(), // 사용용도 + mtchnCmptnYmd: z.string().nullish(), // 매칭완료일 + rvwCmptnYmd: z.string().nullish(), // 검토완료일 + demandCo: DemandCoSchema.nullish(), // 수요처 정보 + demandMatching: DemandMatchingSchema.nullish(), // 매칭 정보 + demandCst: DemandCstSchema.nullish(), // 공사비 정보 + ruseUtztnFcltNm: z.string().nullish(), // 공급처 선정 splyCndtList: z.array( z.object({ - ruseUtztnFcltNm: z.string(), - ruseUtztnFcltCd: z.string(), + ruseUtztnFcltNm: z.string(), // 공급처명 + ruseUtztnFcltCd: z.string(), // 공급처 코드 }).nullish() - ).nullish(), - totalConstCost: z.number().nullish(), + ).nullish(), // 공급처 후보지 목록 + totalConstCost: z.number().nullish(), // 처리시설 총사업비(백만원) }); export type DmdCoReqType = z.infer; @@ -159,4 +159,4 @@ export type rateFeeType = { export type SupplyCandidate = { ruseUtztnFcltNm: string; ruseUtztnFcltCd: string; -}; \ No newline at end of file +}; diff --git a/apps/wr/components/ui/form/coMat/conCostForm/conCostForm.tsx b/apps/wr/components/ui/form/coMat/conCostForm/conCostForm.tsx index 9d18fe213..8dd87dfb4 100644 --- a/apps/wr/components/ui/form/coMat/conCostForm/conCostForm.tsx +++ b/apps/wr/components/ui/form/coMat/conCostForm/conCostForm.tsx @@ -249,12 +249,12 @@ export default function ConCostForm({ if (type === "mat") { if (value.demandCst) { const data: DedMatUpdateType = { - dmdInfoSn: value.dmdInfoSn, - usgPrcsProcs: value.demandCst.usgPrcsProcs || "", - cstrnCst: value.demandCst.cstrnCst || 0, - fcltSbsdCstrnCst: value.demandCst.fcltSbsdCstrnCst || 0, - prcsFcltCpctCstrnCst: value.demandCst.prcsFcltCpctCstrnCst || 0, - flg: checkFinish ? "Checked" : "Sub", + dmdInfoSn: value.dmdInfoSn, // 수요정보 일련번호 + usgPrcsProcs: value.demandCst.usgPrcsProcs || "", // 용도에 따른 처리공정 + cstrnCst: value.demandCst.cstrnCst || 0, // 공급관로 표준공사비(백만원) + fcltSbsdCstrnCst: value.demandCst.fcltSbsdCstrnCst || 0, // 시설부대경비 + prcsFcltCpctCstrnCst: value.demandCst.prcsFcltCpctCstrnCst || 0, // 처리시설용량에 따른 공사비(백만원) + flg: checkFinish ? "Checked" : "Sub", // "Sub": 검토중, "Checked": 검토완료(재이용검토이력 화면에 나타남) rgtr: TEST_UUID, }; @@ -394,10 +394,11 @@ export default function ConCostForm({ )} -
-

기본사항

-
+
+
+

기본사항

+
공사비 입력사항
-
+
)} @@ -590,7 +591,7 @@ export default function ConCostForm({ }} value={field.value ?? 0} readOnly - className={readOnlyInputClass} + className={`mt-2 ${readOnlyInputClass}`} /> )} @@ -645,22 +646,23 @@ export default function ConCostForm({
-
- + +
)} -
+