From 0203ada8ef4df7897ae8eb148fda972401c1ce5c Mon Sep 17 00:00:00 2001 From: ysCha Date: Mon, 9 Feb 2026 13:46:12 +0900 Subject: [PATCH] =?UTF-8?q?[1460]=20text->=EC=88=AB=EC=9E=90=20[1471]=20?= =?UTF-8?q?=EC=85=80=EC=95=88=EC=97=90=20=EB=8B=A4=20=EB=82=98=ED=83=80?= =?UTF-8?q?=EB=82=B4=EA=B8=B0=20=EA=B2=AC=EC=A0=81=EC=84=9C=20=EC=9D=B4?= =?UTF-8?q?=EB=AF=B8=EC=A7=80=20=EC=97=86=EC=96=B4=EB=8F=84=20=EB=8B=A4?= =?UTF-8?q?=EC=9A=B4=EB=A1=9C=EB=93=9C=20=EA=B0=80=EB=8A=A5=20-=201606?= =?UTF-8?q?=EB=9D=BC=EC=9D=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../qcast/biz/estimate/EstimateService.java | 244 +++++++++++++++--- ...el_download_quotation_detail_template.xlsx | Bin 162641 -> 162953 bytes 2 files changed, 210 insertions(+), 34 deletions(-) diff --git a/src/main/java/com/interplug/qcast/biz/estimate/EstimateService.java b/src/main/java/com/interplug/qcast/biz/estimate/EstimateService.java index b616d094..897b999f 100644 --- a/src/main/java/com/interplug/qcast/biz/estimate/EstimateService.java +++ b/src/main/java/com/interplug/qcast/biz/estimate/EstimateService.java @@ -20,6 +20,12 @@ import com.interplug.qcast.biz.canvaspopupstatus.dto.CanvasPopupStatus; import com.interplug.qcast.biz.pwrGnrSimulation.dto.PwrGnrSimRoofResponse; import org.apache.commons.lang3.StringEscapeUtils; import org.apache.commons.lang3.StringUtils; +import org.apache.poi.ss.usermodel.Cell; +import org.apache.poi.ss.usermodel.CellStyle; +import org.apache.poi.ss.usermodel.CellType; +import org.apache.poi.ss.usermodel.DataFormat; +import org.apache.poi.ss.usermodel.Row; +import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.usermodel.WorkbookFactory; import org.jsoup.nodes.Document; @@ -1470,6 +1476,7 @@ public class EstimateService { this.selectTotalPriceInfo(estimateResponse, estimateItemList, estimateRequest.getSchUnitPriceFlg()); + boolean isPdfDownload = "PDF".equals(estimateRequest.getSchDownload()); int j = 1; for (ItemResponse itemResponse : estimateItemList) { itemResponse.setNo(String.valueOf(j++)); @@ -1499,13 +1506,15 @@ public class EstimateService { } } - // 문자열 통화로 변환 처리 - itemResponse.setSalePrice( - String.format("%1$,.0f", Double.parseDouble(itemResponse.getSalePrice()))); - itemResponse - .setAmount(String.format("%1$,.0f", Double.parseDouble(itemResponse.getAmount()))); - itemResponse.setSaleTotPrice( - String.format("%1$,.0f", Double.parseDouble(itemResponse.getSaleTotPrice()))); + // 문자열 통화로 변환 처리 (PDF 전용) + if (isPdfDownload) { + itemResponse.setSalePrice( + String.format("%1$,.0f", Double.parseDouble(itemResponse.getSalePrice()))); + itemResponse.setAmount( + String.format("%1$,.0f", Double.parseDouble(itemResponse.getAmount()))); + itemResponse.setSaleTotPrice( + String.format("%1$,.0f", Double.parseDouble(itemResponse.getSaleTotPrice()))); + } if ("YJSS".equals(estimateResponse.getEstimateType()) && (!StringUtils.isEmpty(itemResponse.getPaDispOrder()) @@ -1533,20 +1542,22 @@ public class EstimateService { estimateResponse.setPkgYn("YJSS".equals(estimateResponse.getEstimateType()) ? "Y" : "N"); estimateResponse .setPkgNo("YJSS".equals(estimateResponse.getEstimateType()) ? String.valueOf(j++) : ""); - if ("YJSS".equals(estimateResponse.getEstimateType())) { - estimateResponse - .setPkgAsp(String.format("%1$,.0f", Double.parseDouble(estimateResponse.getPkgAsp()))); + if (isPdfDownload) { + if ("YJSS".equals(estimateResponse.getEstimateType())) { + estimateResponse.setPkgAsp( + String.format("%1$,.0f", Double.parseDouble(estimateResponse.getPkgAsp()))); + } + estimateResponse.setTotVol( + String.format("%1$,.0f", Double.parseDouble(estimateResponse.getTotVol()))); + estimateResponse.setPkgTotPrice( + String.format("%1$,.0f", Double.parseDouble(estimateResponse.getPkgTotPrice()))); + estimateResponse.setSupplyPrice( + String.format("%1$,.0f", Double.parseDouble(estimateResponse.getSupplyPrice()))); + estimateResponse.setVatPrice( + String.format("%1$,.0f", Double.parseDouble(estimateResponse.getVatPrice()))); + estimateResponse.setTotPrice( + String.format("%1$,.0f", Double.parseDouble(estimateResponse.getTotPrice()))); } - estimateResponse - .setTotVol(String.format("%1$,.0f", Double.parseDouble(estimateResponse.getTotVol()))); - estimateResponse.setPkgTotPrice( - String.format("%1$,.0f", Double.parseDouble(estimateResponse.getPkgTotPrice()))); - estimateResponse.setSupplyPrice( - String.format("%1$,.0f", Double.parseDouble(estimateResponse.getSupplyPrice()))); - estimateResponse.setVatPrice( - String.format("%1$,.0f", Double.parseDouble(estimateResponse.getVatPrice()))); - estimateResponse.setTotPrice( - String.format("%1$,.0f", Double.parseDouble(estimateResponse.getTotPrice()))); // 발전시뮬레이션 계산 PwrGnrSimRequest pwrGnrSimRequest = new PwrGnrSimRequest(); @@ -1592,24 +1603,16 @@ public class EstimateService { String baseDrawingImgName = estimateRequest.getObjectNo() + "_" + estimateRequest.getPlanNo(); URL url = new URL(drawingDirPath + File.separator + baseDrawingImgName + "_1.png"); - URLConnection con = url.openConnection(); - HttpURLConnection exitCode = (HttpURLConnection)con; - if (exitCode.getResponseCode() == 200) { - InputStream imageInputStream = - new URL(drawingDirPath + File.separator + baseDrawingImgName + "_1.png").openStream(); - byte[] drawingImg1 = Util.toByteArray(imageInputStream); + byte[] drawingImg1 = loadDrawingImage(url); + if (drawingImg1 != null) { estimateResponse.setDrawingImg1(drawingImg1); } log.debug("url1 ::: {}", url); String baseDrawingImgName2 = estimateRequest.getObjectNo() + "_" + estimateRequest.getPlanNo(); URL url2 = new URL(drawingDirPath + File.separator + baseDrawingImgName2 + "_2.png"); - URLConnection con2 = url2.openConnection(); - HttpURLConnection exitCode2 = (HttpURLConnection)con2; - if (exitCode2.getResponseCode() == 200) { - InputStream imageInputStream2 = - new URL(drawingDirPath + File.separator + baseDrawingImgName2 + "_2.png").openStream(); - byte[] drawingImg2 = Util.toByteArray(imageInputStream2); + byte[] drawingImg2 = loadDrawingImage(url2); + if (drawingImg2 != null) { estimateResponse.setDrawingImg2(drawingImg2); } log.debug("url2 ::: {}", url2); @@ -1807,9 +1810,18 @@ public class EstimateService { estimateResponse.setPcsList3(pcsList3); excelUtil = new ExcelUtil(); + Map excelData = excelUtil.convertVoToMap(estimateResponse); + List> excelList = excelUtil.convertListToMap(estimateItemList); + coerceExcelDataNumberFields(excelData); + coerceExcelItemNumberFields(excelList); + putExcelItemList(excelData, "itemList", estimateResponse.getItemList()); + putExcelItemList(excelData, "estimateItemList15", estimateResponse.getEstimateItemList15()); + putExcelItemList(excelData, "estimateItemListS15", estimateResponse.getEstimateItemListS15()); + putExcelItemList(excelData, "circuitItemList11", estimateResponse.getCircuitItemList11()); + putExcelRoofList(excelData, "roofModuleList8", estimateResponse.getRoofModuleList8()); + putExcelRoofList(excelData, "pcsList3", estimateResponse.getPcsList3()); byte[] excelBytes = - excelUtil.download(request, response, excelUtil.convertVoToMap(estimateResponse), - excelUtil.convertListToMap(estimateItemList), excelTemplateNam); + excelUtil.download(request, response, excelData, excelList, excelTemplateNam); InputStream in = new ByteArrayInputStream(excelBytes); workbook = WorkbookFactory.create(in); // JXLS POI 엑셀로 재변환 @@ -1856,6 +1868,8 @@ public class EstimateService { safeRemoveSheet(workbook, "特異事項"); } + applyExcelNumberFormat(workbook); + ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); workbook.write(byteArrayOutputStream); excelBytes = byteArrayOutputStream.toByteArray(); @@ -1964,6 +1978,150 @@ public class EstimateService { estimateResponse.setTotPrice(String.valueOf(totPrice.setScale(0, BigDecimal.ROUND_HALF_UP))); } + private static final Set EXCEL_ITEM_NUMBER_FIELDS = new HashSet<>( + Arrays.asList("amount", "bomAmount", "salePrice", "unitPrice", "saleTotPrice", "grossWt", "pnowW")); + + private static final Set EXCEL_DATA_NUMBER_FIELDS = new HashSet<>( + Arrays.asList("pkgAsp", "totAmount", "totVol", "totVolKw", "pkgTotPrice", + "supplyPrice", "vatPrice", "totPrice")); + + private static final Set EXCEL_ROOF_NUMBER_FIELDS = new HashSet<>( + Arrays.asList("amount", "totSpecification", "specification", "cnvEff", + "amp", "tempLoss", "tempCoeff")); + + private static void coerceExcelItemNumberFields(List> list) { + if (list == null) { + return; + } + for (Map row : list) { + coerceExcelNumberFields(row, EXCEL_ITEM_NUMBER_FIELDS); + } + } + + private static void coerceExcelDataNumberFields(Map map) { + coerceExcelNumberFields(map, EXCEL_DATA_NUMBER_FIELDS); + } + + private static void coerceExcelRoofNumberFields(List> list) { + if (list == null) { + return; + } + for (Map row : list) { + coerceExcelNumberFields(row, EXCEL_ROOF_NUMBER_FIELDS); + } + } + + private static void coerceExcelNumberFields(Map map, Set fields) { + if (map == null || fields == null) { + return; + } + for (String key : fields) { + if (!map.containsKey(key)) { + continue; + } + Object value = map.get(key); + Object parsed = parseExcelNumber(value); + map.put(key, parsed); + } + } + + private static Object parseExcelNumber(Object value) { + if (value == null) { + return null; + } + if (value instanceof Number) { + return value; + } + if (!(value instanceof String)) { + return value; + } + String raw = ((String) value).trim(); + if (raw.isEmpty()) { + return value; + } + String normalized = raw.replace(",", ""); + if (!normalized.matches("[-+]?\\d+(\\.\\d+)?")) { + return value; + } + try { + return new BigDecimal(normalized); + } catch (NumberFormatException e) { + return value; + } + } + + private static void putExcelItemList(Map excelData, String key, + List items) { + if (excelData == null || items == null) { + return; + } + List> list = ExcelUtil.convertListToMap(items); + coerceExcelItemNumberFields(list); + excelData.put(key, list); + } + + private static void putExcelRoofList(Map excelData, String key, + List items) { + if (excelData == null || items == null) { + return; + } + List> list = ExcelUtil.convertListToMap(items); + coerceExcelRoofNumberFields(list); + excelData.put(key, list); + } + + private static void applyExcelNumberFormat(Workbook workbook) { + if (workbook == null) { + return; + } + DataFormat dataFormat = workbook.createDataFormat(); + short numberFormat = dataFormat.getFormat("#,##0.###"); + Map styleCache = new HashMap<>(); + + for (int s = 0; s < workbook.getNumberOfSheets(); s++) { + Sheet sheet = workbook.getSheetAt(s); + if (sheet == null) { + continue; + } + for (Row row : sheet) { + for (Cell cell : row) { + CellType cellType = cell.getCellType(); + CellStyle style = cell.getCellStyle(); + boolean isTextFormat = style != null && "@".equals(style.getDataFormatString()); + + if (cellType == CellType.STRING) { + Object parsed = parseExcelNumber(cell.getStringCellValue()); + if (parsed instanceof Number) { + cell.setCellValue(((Number) parsed).doubleValue()); + cellType = CellType.NUMERIC; + } else { + continue; + } + } + + if (cellType != CellType.NUMERIC) { + continue; + } + + if (!isTextFormat) { + continue; + } + + short styleIdx = style.getIndex(); + CellStyle cached = styleCache.get(styleIdx); + if (cached == null) { + CellStyle newStyle = workbook.createCellStyle(); + newStyle.cloneStyleFrom(style); + newStyle.setDataFormat(numberFormat); + styleCache.put(styleIdx, newStyle); + cached = newStyle; + } + cell.setCellStyle(cached); + } + } + } + } + /** * QSP Q.CAST 견적서 전송 API * @@ -2692,4 +2850,22 @@ public class EstimateService { workbook.removeSheetAt(sheetIndex); } } + + private byte[] loadDrawingImage(URL url) { + try { + URLConnection connection = url.openConnection(); + if (connection instanceof HttpURLConnection) { + HttpURLConnection httpConnection = (HttpURLConnection) connection; + if (httpConnection.getResponseCode() != HttpURLConnection.HTTP_OK) { + return null; + } + } + try (InputStream imageInputStream = connection.getInputStream()) { + return Util.toByteArray(imageInputStream); + } + } catch (Exception e) { + log.warn("Failed to load drawing image. url={}", url, e); + return null; + } + } } diff --git a/src/main/resources/template/excel/excel_download_quotation_detail_template.xlsx b/src/main/resources/template/excel/excel_download_quotation_detail_template.xlsx index ba435c89aefc5566e2977ecccc28cdf4d3f56c7e..44c1ae1702cf06fdba8994e125d6d0b9250dc99e 100644 GIT binary patch delta 27384 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