From 3056ee733c1c00cc75c4cadd4aa35987732f756d Mon Sep 17 00:00:00 2001
From: 吴羡 <16976746+Xian-TT3@user.noreply.gitee.com>
Date: 星期三, 04 十一月 2026 14:52:34 +0800
Subject: [PATCH] 修复检验委托单导出问题

---
 cnas-process/src/main/java/com/ruoyi/process/service/impl/InspectionOrderServiceImpl.java |   37 +++++++++++++++++++++++--------------
 1 files changed, 23 insertions(+), 14 deletions(-)

diff --git a/cnas-process/src/main/java/com/ruoyi/process/service/impl/InspectionOrderServiceImpl.java b/cnas-process/src/main/java/com/ruoyi/process/service/impl/InspectionOrderServiceImpl.java
index e11c031..b8c2066 100644
--- a/cnas-process/src/main/java/com/ruoyi/process/service/impl/InspectionOrderServiceImpl.java
+++ b/cnas-process/src/main/java/com/ruoyi/process/service/impl/InspectionOrderServiceImpl.java
@@ -808,21 +808,30 @@
                 .orderByAsc(InspectionOrderDetail::getInspectionOrderDetailId));
         List<String> detailEntrustCodes = buildDetailEntrustCodes(inspectionOrder.getEntrustCode(), list);
         List<InspectionOrderDetailExportDto> detailList = new ArrayList<>();
-        for (int i = 0; i < list.size(); i++) {
-            InspectionOrderDetail inspectionOrderDetail = list.get(i);
+        if (list.isEmpty()) {
             InspectionOrderDetailExportDto row = new InspectionOrderDetailExportDto();
-            row.setSampleName(StrUtil.isNotBlank(inspectionOrderDetail.getSampleName())
-                    ? inspectionOrderDetail.getSampleName() : inspectionOrder.getSampleName());
-            row.setSampleNumber(inspectionOrderDetail.getSampleNumber());
-            row.setTestItem(inspectionOrderDetail.getTestItem());
-            row.setQuantity(StrUtil.isNotBlank(inspectionOrderDetail.getQuantity())
-                    ? inspectionOrderDetail.getQuantity() : inspectionOrder.getQuantity());
-            row.setSampleStatus(StrUtil.isNotBlank(inspectionOrderDetail.getSampleStatus())
-                    ? inspectionOrderDetail.getSampleStatus() : inspectionOrder.getSampleStatus());
-            row.setTestStandard(inspectionOrderDetail.getTestStandard());
-            row.setRemark(inspectionOrderDetail.getRemark());
-            row.setEntrustCode(detailEntrustCodes.get(i));
+            row.setSampleName(inspectionOrder.getSampleName());
+            row.setQuantity(inspectionOrder.getQuantity());
+            row.setSampleStatus(inspectionOrder.getSampleStatus());
+            row.setEntrustCode(inspectionOrder.getEntrustCode());
             detailList.add(row);
+        } else {
+            for (int i = 0; i < list.size(); i++) {
+                InspectionOrderDetail inspectionOrderDetail = list.get(i);
+                InspectionOrderDetailExportDto row = new InspectionOrderDetailExportDto();
+                row.setSampleName(StrUtil.isNotBlank(inspectionOrderDetail.getSampleName())
+                        ? inspectionOrderDetail.getSampleName() : inspectionOrder.getSampleName());
+                row.setSampleNumber(inspectionOrderDetail.getSampleNumber());
+                row.setTestItem(inspectionOrderDetail.getTestItem());
+                row.setQuantity(StrUtil.isNotBlank(inspectionOrderDetail.getQuantity())
+                        ? inspectionOrderDetail.getQuantity() : inspectionOrder.getQuantity());
+                row.setSampleStatus(StrUtil.isNotBlank(inspectionOrderDetail.getSampleStatus())
+                        ? inspectionOrderDetail.getSampleStatus() : inspectionOrder.getSampleStatus());
+                row.setTestStandard(inspectionOrderDetail.getTestStandard());
+                row.setRemark(inspectionOrderDetail.getRemark());
+                row.setEntrustCode(detailEntrustCodes.get(i));
+                detailList.add(row);
+            }
         }
         inspectionOrderExportDto.setProjectName(detailList.size() + "涓牱鍝�");
         writeInspectionOrderExport(inspectionOrderExportDto, detailList, response);
@@ -834,7 +843,7 @@
         // 鑾峰彇璺緞
         InputStream inputStream = this.getClass().getResourceAsStream("/static/inspection-order.docx");
         Configure configure = Configure.builder()
-                .bind("inspectionOrderDetailList", new HackLoopTableRenderPolicy())
+                .bind("inspectionOrderDetailList", new HackLoopTableRenderPolicy("[[", "]]"))
                 .build();
         XWPFTemplate template = XWPFTemplate.compile(inputStream, configure).render(
                 new HashMap<String, Object>() {{

--
Gitblit v1.9.3