From 401b68fe24ad83c0ef2adc94c7f81f19e4a8b2bf Mon Sep 17 00:00:00 2001 From: YangJinSoo94 Date: Fri, 27 Jun 2025 11:21:03 +0900 Subject: [PATCH] =?UTF-8?q?=EB=AC=BC=EC=9E=AC=EC=9D=B4=EC=9A=A9=EC=82=AC?= =?UTF-8?q?=EB=A1=80=EA=B4=80=EB=A6=AC=20=EC=A1=B0=ED=9A=8C=EA=B8=B0?= =?UTF-8?q?=EB=8A=A5=20=ED=99=95=EC=9D=B8=EC=A4=91,=20=EC=83=98=ED=94=8C?= =?UTF-8?q?=EC=96=91=EC=8B=9D=20=EB=8B=A4=EC=9A=B4=EB=A1=9C=EB=93=9C=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/wr/app/matMng/coMat/ruseCaseMng/page.tsx | 69 ++++++++++++------ .../wr/app/store/matDmd/ruseCaseMng/index.tsx | 9 ++- apps/wr/public/sample_ruseCaseMng.xlsx | Bin 0 -> 19429 bytes 3 files changed, 53 insertions(+), 25 deletions(-) create mode 100644 apps/wr/public/sample_ruseCaseMng.xlsx diff --git a/apps/wr/app/matMng/coMat/ruseCaseMng/page.tsx b/apps/wr/app/matMng/coMat/ruseCaseMng/page.tsx index ac68c4a66..5e4bddaad 100644 --- a/apps/wr/app/matMng/coMat/ruseCaseMng/page.tsx +++ b/apps/wr/app/matMng/coMat/ruseCaseMng/page.tsx @@ -2,7 +2,7 @@ import { useWrStore } from "@/app/store"; import { ruseUtzType } from "@/app/store/matDmd/ruseCaseMng/headList"; -import { getCity } from "@/components/lib/func/commom"; +import { excelDownload, getCity } from "@/components/lib/func/commom"; import RuseCaseMngExcel from "@/components/ui/modal/coMat/ruseCaseMng/ruseCaseMngExcelModal"; import type { objSearchType } from "@/components/ui/modal/fcltReg/bdstRegModal/bdstRegModal"; import { @@ -23,36 +23,61 @@ import { useState } from "react"; export default function RuseCaseMng() { const { code, ruseCaseMng, selectRuseCaseMng } = useWrStore((state) => state); - const [selectSgg, setSelectSgg] = useState(); + const [selectSgg, setSelectSgg] = useState([{val: "0", text: "전체"}]); const [objSearch, setObjSearch] = useState({ sgg: "", city: "" }); - const [selectUtz, setSelectUtz] = useState(); - const [searchTxt, setSearchTxt] = useState(); - + const [sidoCd, setSidoCd] = useState(""); const [sigunguCd, setSigunguCd] = useState(""); - const [usageCd, setUsageCd] = useState(""); + const [selectUtz, setSelectUtz] = useState(["조경용수"]); const [name, setName] = useState(""); + // 물재이용사례 조회 const searchRuseCaseMng = async () => { - const res = await selectRuseCaseMng(sidoCd, sigunguCd, usageCd, name); + console.log(selectUtz); + const res = await selectRuseCaseMng(sidoCd, sigunguCd, selectUtz, name); console.log('res : ', res); } + // 시도 선택 const getSelCity = (val: string | number) => { const cityValue = String(val); + const cityText = code.cityCd.find((item: any) => item.cityCd === cityValue)?.text; + setSidoCd(cityText || ""); + const data = getCity(cityValue, code.sggCd); setSelectSgg(data); setObjSearch({ city: cityValue, sgg: "" }); }; + // 시군구 선택 const getSgg = (val: string | number) => { + const sggValue = String(val); + const sggText = selectSgg?.find((item: any) => item.sggCd === sggValue)?.sggNm; + setSigunguCd(sggText || ""); setObjSearch({ ...objSearch, sgg: String(val) }); }; + // 엑셀 등록 모달 const [isExcelOpen, setIsExcelOpen] = useState<{ isModal: boolean; }>({ isModal: false }); + // 다운로드 + const download = () => { + console.log("다운로드"); + } + + // 양식받기 + const sampleDownLoad = () => { + excelDownload( + [[]], + "물재이용사례 관리", + "sample_ruseCaseMng.xlsx", + "A1:AX1", + 2 + ); + } + return ( <> @@ -88,9 +113,9 @@ export default function RuseCaseMng() { { - setSearchTxt(e); + setName(e); }} /> @@ -98,7 +123,7 @@ export default function RuseCaseMng() {
- -
@@ -119,16 +144,18 @@ export default function RuseCaseMng() {
- {}} - onPageChange={() => {}} - /> +
+ {}} + onPageChange={() => {}} + /> +
diff --git a/apps/wr/app/store/matDmd/ruseCaseMng/index.tsx b/apps/wr/app/store/matDmd/ruseCaseMng/index.tsx index 274af07af..0b40c1826 100644 --- a/apps/wr/app/store/matDmd/ruseCaseMng/index.tsx +++ b/apps/wr/app/store/matDmd/ruseCaseMng/index.tsx @@ -1,4 +1,4 @@ -import { fetchType, postFectch } from "@/components/lib/api"; +import { fetchType, getFetch, postFectch } from "@/components/lib/api"; import type { TableUpperProps } from "../../common/type/header"; import { ruseCaseHeadListExport } from "./headList"; import { ToastFormUi } from "@/components/ui/toast/toastFromUi"; @@ -71,8 +71,9 @@ type ruseCaseActions = { export const fetchSearchRuseCaseMng = async (sidoCd: string, sigunguCd: string, usageCd : string, name: string) => { const tailUrl = (sidoCd && !sigunguCd ? `/${sigunguCd}` : sigunguCd ? `/${sigunguCd}` : '/0') + (usageCd ? `/${usageCd}` : '') + (name ? `/${name}` : ''); console.log('tailUrl : ', tailUrl); - const response = await postFectch(`/reuseFc/pubFcRuseCase${tailUrl}`, {usageCd, name}, fetchType.WR); - return []; + const resp = await getFetch(fetchType.WR,`/reuseFc/pubFcRuseCase${tailUrl}`); + console.log('resp : ', resp); + return resp; }; export const fetchInsertRuseCaseMng = async (data: any) => { @@ -96,7 +97,7 @@ export const ruseCaseActionsExport: (set: any) => ruseCaseActions = ( return { selectRuseCaseMng: async (sidoCd: string, sigunguCd: string, usageCd : string, name: string) => { const res = await fetchSearchRuseCaseMng(sidoCd, sigunguCd, usageCd, name); - + console.log('res : ', res); set((state: ruseCaseState) => ({ ruseCaseMng: { ...state.ruseCaseMng, diff --git a/apps/wr/public/sample_ruseCaseMng.xlsx b/apps/wr/public/sample_ruseCaseMng.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..3a88e0623e067d483927ce6dfdc452c2dbb2ee19 GIT binary patch literal 19429 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 VpMfz503d?DD8Mi-mUw#f{{gi`Sz7=A literal 0 HcmV?d00001