|
|
@ -1860,6 +1860,7 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService { |
|
|
@Override |
|
|
@Override |
|
|
public void downloadAllPdf(HttpServletResponse response, EcssDeclarationHeaderData data) { |
|
|
public void downloadAllPdf(HttpServletResponse response, EcssDeclarationHeaderData data) { |
|
|
EcssCoDelNotifyHeaderData notifyHeader = coDelMapper.getEcssCoDelNotifyHeader(data.getSite(), data.getDelNo()); |
|
|
EcssCoDelNotifyHeaderData notifyHeader = coDelMapper.getEcssCoDelNotifyHeader(data.getSite(), data.getDelNo()); |
|
|
|
|
|
boolean onlyInvoicePackingPdf = Boolean.TRUE.equals(data.getOnlyInvoicePackingPdf()); |
|
|
XSSFWorkbook excelWorkbook = null; |
|
|
XSSFWorkbook excelWorkbook = null; |
|
|
try { |
|
|
try { |
|
|
boolean isMhm = notifyHeader != null && "04-MHM".equalsIgnoreCase(notifyHeader.getBuNo()); |
|
|
boolean isMhm = notifyHeader != null && "04-MHM".equalsIgnoreCase(notifyHeader.getBuNo()); |
|
|
@ -1943,6 +1944,9 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService { |
|
|
template.render(3); |
|
|
template.render(3); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (onlyInvoicePackingPdf) { |
|
|
|
|
|
retainFirstSheets(excelWorkbook, 2); |
|
|
|
|
|
} |
|
|
compactLoadingNoRowIfNeeded(excelWorkbook); |
|
|
compactLoadingNoRowIfNeeded(excelWorkbook); |
|
|
// 将Excel转换为PDF |
|
|
// 将Excel转换为PDF |
|
|
byte[] pdfBytes = convertExcelToPdf(excelWorkbook); |
|
|
byte[] pdfBytes = convertExcelToPdf(excelWorkbook); |
|
|
@ -1968,6 +1972,18 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService { |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|
* 仅保留前N个sheet,其余sheet删除(用于PDF按需导出) |
|
|
|
|
|
*/ |
|
|
|
|
|
private void retainFirstSheets(XSSFWorkbook workbook, int keepSheetCount) { |
|
|
|
|
|
if (workbook == null || keepSheetCount < 0) { |
|
|
|
|
|
return; |
|
|
|
|
|
} |
|
|
|
|
|
for (int i = workbook.getNumberOfSheets() - 1; i >= keepSheetCount; i--) { |
|
|
|
|
|
workbook.removeSheetAt(i); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
* 将Excel工作簿转换为PDF字节数组 |
|
|
* 将Excel工作簿转换为PDF字节数组 |
|
|
*/ |
|
|
*/ |
|
|
|