From c72fa450bc4122312281d21890fc139e62ab8d2e Mon Sep 17 00:00:00 2001 From: jsyang Date: Tue, 23 Sep 2025 14:06:45 +0900 Subject: [PATCH] =?UTF-8?q?=EC=97=91=EC=85=80=EB=8B=A4=EC=9A=B4=EB=A1=9C?= =?UTF-8?q?=EB=93=9C=20=EC=9E=90=EC=97=B0=EC=88=98=EA=B9=8C=EC=A7=80=20?= =?UTF-8?q?=EB=82=98=EC=98=A4=EB=8F=84=EB=A1=9D=20array=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../business_components/src/ui/excel/index.tsx | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/packages/common/business_components/src/ui/excel/index.tsx b/packages/common/business_components/src/ui/excel/index.tsx index 1e4626440..aedb32256 100644 --- a/packages/common/business_components/src/ui/excel/index.tsx +++ b/packages/common/business_components/src/ui/excel/index.tsx @@ -6,6 +6,7 @@ type ExcelDownloadProps = { fileName: string; sheetNameArray: string[]; headerRange?: string; + decimalArray0? : number[]; decimalArray1? : number[]; decimalArray2? : number[]; decimalArray3? : number[]; @@ -18,11 +19,11 @@ 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) => { +export const downloadExcelFormat = ({ data, fileName = new Date().getTime().toString() + '.xlsx', sheetNameArray = ["Sheet1"], headerRange='A1:V3', decimalArray0=[], 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]); - + console.log('decimalArray0 : ', decimalArray0); const headerEnd = XLSX.utils.decode_range(headerRange).e.r; // 0-based index const startRow = headerEnd + 1; @@ -37,18 +38,20 @@ export const downloadExcelFormat = ({ data, fileName = new Date().getTime().toSt const cell = worksheet[cellAddr]; if (cell && typeof cell.v === "number") { if(decimal===1){ - cell.z = "0.0"; // 소수점 3자리 + cell.z = "#,##0.0"; // 소수점 3자리 }else if(decimal===2){ - cell.z = "0.00"; + cell.z = "#,##0.00"; }else if(decimal===3){ - cell.z = "0.000"; + cell.z = "#,##0.000"; + }else{ + cell.z = "#,##0"; // 기본 천단위 콤마 } } } } } }; - + chaneValue(decimalArray0, 0); chaneValue(decimalArray1, 1); chaneValue(decimalArray2, 2); chaneValue(decimalArray3, 3);