|
@@ -136,6 +136,7 @@ import cn.start.tz.module.pressure2.service.boilerconnectrecordreport.BoilerConn
|
|
|
import cn.start.tz.module.pressure2.service.boilertaskorderissuereport.BoilerTaskOrderIssueReportService;
|
|
import cn.start.tz.module.pressure2.service.boilertaskorderissuereport.BoilerTaskOrderIssueReportService;
|
|
|
import cn.start.tz.module.pressure2.service.common.RedisService;
|
|
import cn.start.tz.module.pressure2.service.common.RedisService;
|
|
|
import cn.start.tz.module.pressure2.service.costfield.CostFieldService;
|
|
import cn.start.tz.module.pressure2.service.costfield.CostFieldService;
|
|
|
|
|
+import cn.start.tz.module.pressure2.service.dynamictb.DynamicTbService;
|
|
|
import cn.start.tz.module.pressure2.service.dynamictbcol.DynamicTbColService;
|
|
import cn.start.tz.module.pressure2.service.dynamictbcol.DynamicTbColService;
|
|
|
import cn.start.tz.module.pressure2.service.dynamictbins.DynamicTbInsService;
|
|
import cn.start.tz.module.pressure2.service.dynamictbins.DynamicTbInsService;
|
|
|
import cn.start.tz.module.pressure2.service.dynamictbval.DynamicTbValService;
|
|
import cn.start.tz.module.pressure2.service.dynamictbval.DynamicTbValService;
|
|
@@ -5175,6 +5176,26 @@ public class PipeTaskOrderServiceImpl extends ServiceImpl<PipeTaskOrderMapper, P
|
|
|
}
|
|
}
|
|
|
@Resource
|
|
@Resource
|
|
|
private PdfService pdfService;
|
|
private PdfService pdfService;
|
|
|
|
|
+
|
|
|
|
|
+ @Resource
|
|
|
|
|
+ private DynamicTbService dynamicTbService;
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 获取主报告模板的跳过页码数(读取 PRESSURE2_DYNAMIC_TB.skip_page_count)
|
|
|
|
|
+ */
|
|
|
|
|
+ private int getMainReportSkipPageCount(List<PipeTaskOrderItemReportDO> reportList) {
|
|
|
|
|
+ PipeTaskOrderItemReportDO mainReport = reportList.stream()
|
|
|
|
|
+ .filter(r -> r.getReportType() != null && r.getReportType() == 100)
|
|
|
|
|
+ .findFirst().orElse(null);
|
|
|
|
|
+ if (mainReport != null && StrUtil.isNotBlank(mainReport.getReportTemplateId())) {
|
|
|
|
|
+ DynamicTbDO template = dynamicTbService.getById(mainReport.getReportTemplateId());
|
|
|
|
|
+ if (template != null && template.getSkipPageCount() != null) {
|
|
|
|
|
+ return template.getSkipPageCount();
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ return 0;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
@Override
|
|
@Override
|
|
|
public byte[] getReportOutputStreamMerge(String orderId) {
|
|
public byte[] getReportOutputStreamMerge(String orderId) {
|
|
|
|
|
|
|
@@ -5256,9 +5277,10 @@ public class PipeTaskOrderServiceImpl extends ServiceImpl<PipeTaskOrderMapper, P
|
|
|
mergerUtility.setDestinationStream(mergeOutputStream);
|
|
mergerUtility.setDestinationStream(mergeOutputStream);
|
|
|
mergerUtility.mergeDocuments(null);
|
|
mergerUtility.mergeDocuments(null);
|
|
|
|
|
|
|
|
- // 重新生成页码
|
|
|
|
|
|
|
+ // 重新生成页码:读取主报告模板的跳过页码数
|
|
|
byte[] mergedPdfBytes = mergeOutputStream.toByteArray();
|
|
byte[] mergedPdfBytes = mergeOutputStream.toByteArray();
|
|
|
- byte[] pdfWithPageNumbers = pdfService.addPageNumbersToPdf(mergedPdfBytes, 2);
|
|
|
|
|
|
|
+ int skipPages = getMainReportSkipPageCount(taskOrderReportDOS);
|
|
|
|
|
+ byte[] pdfWithPageNumbers = pdfService.addPageNumbersToPdf(mergedPdfBytes, skipPages);
|
|
|
|
|
|
|
|
// 及时释放大对象引用
|
|
// 及时释放大对象引用
|
|
|
mergedPdfBytes = null;
|
|
mergedPdfBytes = null;
|