[1122] 견적서 추가 #203

Merged
ysCha merged 1 commits from dev into dev-deploy 2025-07-29 11:11:12 +09:00
2 changed files with 32 additions and 11 deletions

View File

@ -1747,32 +1747,39 @@ public class EstimateService {
// SchDrawingFlg (1 : 견적서,2 : 발전시뮬레이션, 3 : 도면, 4 : 가대) // SchDrawingFlg (1 : 견적서,2 : 발전시뮬레이션, 3 : 도면, 4 : 가대)
// ex) 1|2|3|4 // ex) 1|2|3|4
if (!StringUtils.isEmpty(estimateRequest.getSchDrawingFlg())) { if (!StringUtils.isEmpty(estimateRequest.getSchDrawingFlg())) {
if (estimateRequest.getSchDrawingFlg().indexOf("1") < 0) { if (estimateRequest.getSchDrawingFlg().indexOf("1") < 0) {
workbook.removeSheetAt(workbook.getSheetIndex("見積書")); safeRemoveSheet(workbook, "見積書");
workbook.removeSheetAt(workbook.getSheetIndex("特異事項")); safeRemoveSheet(workbook, "特異事項");
} }
if (estimateRequest.getSchDrawingFlg().indexOf("2") < 0) { if (estimateRequest.getSchDrawingFlg().indexOf("2") < 0) {
workbook.removeSheetAt(workbook.getSheetIndex("発電シミュレーション")); safeRemoveSheet(workbook, "発電シミュレーション");
} }
if (estimateRequest.getSchDrawingFlg().indexOf("3") < 0) { if (estimateRequest.getSchDrawingFlg().indexOf("3") < 0) {
workbook.removeSheetAt(workbook.getSheetIndex("割付図・系統図")); safeRemoveSheet(workbook, "割付図・系統図");
workbook.removeSheetAt(workbook.getSheetIndex("架台図")); safeRemoveSheet(workbook, "架台図");
} }
} }
// 추후 개발 (가대중량표) // 추후 개발 (가대중량표)
if (estimateRequest.getSchDrawingFlg().indexOf("4") < 0) { if (estimateRequest.getSchDrawingFlg().indexOf("4") < 0) {
workbook.removeSheetAt(workbook.getSheetIndex("重量算")); safeRemoveSheet(workbook, "重量算");
} }
if ("EXCEL2".equals(estimateRequest.getSchDownload())) { if ("EXCEL2".equals(estimateRequest.getSchDownload())) {
workbook.removeSheetAt(workbook.getSheetIndex("特異事項")); safeRemoveSheet(workbook, "見積書");
workbook.removeSheetAt(workbook.getSheetIndex("発電シミュレーション")); safeRemoveSheet(workbook, "特異事項");
workbook.removeSheetAt(workbook.getSheetIndex("割付図・系統図")); safeRemoveSheet(workbook, "発電シミュレーション");
workbook.removeSheetAt(workbook.getSheetIndex("架台図")); safeRemoveSheet(workbook, "割付図・系統図");
workbook.removeSheetAt(workbook.getSheetIndex("重量算")); safeRemoveSheet(workbook, "架台図");
safeRemoveSheet(workbook, "重量算");
}else{
safeRemoveSheet(workbook,"見積書.");
} }
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
@ -2573,4 +2580,18 @@ public class EstimateService {
} }
/**
* 워크북에서 시트를 안전하게 제거하는 헬퍼 메소드
* 시트가 존재하지 않으면 무시함
*
* @param workbook 워크북
* @param sheetName 제거할 시트명
*/
private void safeRemoveSheet(Workbook workbook, String sheetName) {
int sheetIndex = workbook.getSheetIndex(sheetName);
if (sheetIndex >= 0) {
workbook.removeSheetAt(sheetIndex);
}
}
} }