From 39e2734a49bbb9b3180b589c3b46e14916e2ee87 Mon Sep 17 00:00:00 2001 From: swcho Date: Mon, 22 Sep 2025 09:54:35 +0900 Subject: [PATCH 1/2] =?UTF-8?q?fix:=20searchBar.tsx=20=ED=95=98=EC=88=98?= =?UTF-8?q?=EC=B2=98=EB=A6=AC=EC=8B=9C=EC=84=A4=20=EA=B2=80=EC=83=89=20?= =?UTF-8?q?=EC=97=90=EB=9F=AC=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../business_components/src/ui/map/searchBar/searchBar.tsx | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/common/business_components/src/ui/map/searchBar/searchBar.tsx b/packages/common/business_components/src/ui/map/searchBar/searchBar.tsx index 919b3c4a9..1fe3f799a 100644 --- a/packages/common/business_components/src/ui/map/searchBar/searchBar.tsx +++ b/packages/common/business_components/src/ui/map/searchBar/searchBar.tsx @@ -165,7 +165,10 @@ export const SearchBar = ({ let list: SelectDataType[] = []; if (type === "tb_il_swage_prcs_fclt") { - const cqlFilter = `ctpv_nm='${sidoNm}' and sgg_nm='${sggNm}' and swtrmt_fclt_nm like '%${fcltyNm}%'`; + // 하수처리시설 + let cqlFilter = `swtrmt_fclt_nm like '%${fcltyNm}%'`; + if (sggNm !== "시군구" && sggNm) cqlFilter = `sgg_nm='${sggNm}' and ` + cqlFilter; + if (sidoNm !== "시도" && sidoNm) cqlFilter = `ctpv_nm='${sidoNm}' and ` + cqlFilter; url += encodeURIComponent(cqlFilter); const res = await fetch(url); const json = await res.json(); From 400d6cf7320c654fde469630961256be9af268c7 Mon Sep 17 00:00:00 2001 From: jsyang Date: Tue, 23 Sep 2025 11:07:23 +0900 Subject: [PATCH 2/2] =?UTF-8?q?=EC=97=91=EC=85=80=20=EC=88=AB=EC=9E=90?= =?UTF-8?q?=ED=98=95=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 --- .../src/ui/excel/index.tsx | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/packages/common/business_components/src/ui/excel/index.tsx b/packages/common/business_components/src/ui/excel/index.tsx index cbe77293b..1e4626440 100644 --- a/packages/common/business_components/src/ui/excel/index.tsx +++ b/packages/common/business_components/src/ui/excel/index.tsx @@ -6,6 +6,9 @@ type ExcelDownloadProps = { fileName: string; sheetNameArray: string[]; headerRange?: string; + decimalArray1? : number[]; + decimalArray2? : number[]; + decimalArray3? : number[]; } export const downloadExcel = ({ data, fileName = new Date().getTime().toString() + '.xlsx', sheetNameArray = ["Sheet1"], headerRange='A1:V3'}: ExcelDownloadProps) => { @@ -15,6 +18,43 @@ export const downloadExcel = ({ data, fileName = new Date().getTime().toString() excelStyle(XLSX.write(workbook, { bookType: "xlsx", type: "buffer" }), headerRange, fileName); }; +export const downloadExcelFormat = ({ data, fileName = new Date().getTime().toString() + '.xlsx', sheetNameArray = ["Sheet1"], headerRange='A1:V3', decimalArray1=[], decimalArray2=[], decimalArray3=[]}: ExcelDownloadProps) => { + const worksheet = XLSX.utils.json_to_sheet(Array.isArray(data) ? data : [data]); + const workbook = XLSX.utils.book_new(); + XLSX.utils.book_append_sheet(workbook, worksheet, sheetNameArray[0]); + + const headerEnd = XLSX.utils.decode_range(headerRange).e.r; // 0-based index + const startRow = headerEnd + 1; + + // 🔹 전체 범위 + const range = XLSX.utils.decode_range(worksheet["!ref"] as string); + + const chaneValue = (array: number[], decimal: number) => { + for (let row = startRow; row <= range.e.r; row++) { + if(array.length>0){ + for(let idx=0; idx