From 80b9620794286b61718a84ec1c2447893189646a Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期四, 03 九月 2026 17:04:02 +0800
Subject: [PATCH] fix(report): 修复检测报告生成和数据同步问题 - 调整样品发送时间排序为降序显示最新数据 - 完善检验项目同步逻辑支持多层级节点配置管理

---
 inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderPlanServiceImpl.java |   14 +++++++++++---
 1 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderPlanServiceImpl.java b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderPlanServiceImpl.java
index 161afd1..f41d3d0 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderPlanServiceImpl.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderPlanServiceImpl.java
@@ -823,7 +823,8 @@
                 })
                 .ne(InsProduct::getIsBinding, 1));
         if (Objects.equals(reportType, INSPECTION_REPORT)) {
-            insProducts.addAll(insProductMapper.selectFiberInsProduct(InsSampleIds, laboratory));
+            List<InsProduct> insProducts1 = insProductMapper.selectFiberInsProduct(InsSampleIds, laboratory);
+            insProducts.addAll(insProducts1);
         }
         if (insProducts.size() > 0) {
             String str = "";
@@ -1954,7 +1955,8 @@
             // 淇敼鎹㈣鍜屽悎骞堕棶棰�
             updaeMerge(template.getXWPFDocument(), true);
             String name = insReport.getCode().replace("/", "") + (showResult ? "-J.docx" : "-C.docx");
-            template.writeAndClose(Files.newOutputStream(Paths.get(wordUrl + "/" + name)));
+            Files.createDirectories(Paths.get(wordUrl));
+            template.writeAndClose(Files.newOutputStream(Paths.get(wordUrl, name)));
             insReport.setUrl("/word/" + name);
             insReport.setIsPass(0);
             insReport.setWriteUserId(SecurityUtils.getUserId().intValue());//鎻愪氦浜�
@@ -2866,7 +2868,8 @@
             // 淇敼鎹㈣鍜屽悎骞堕棶棰�
             updaeMerge(template.getXWPFDocument(), false);
             String name = insReport.getCode().replace("/", "") + (showResult ? ".docx" : "-C.docx");
-            template.writeAndClose(Files.newOutputStream(Paths.get(wordUrl + "/" + name)));
+            Files.createDirectories(Paths.get(wordUrl));
+            template.writeAndClose(Files.newOutputStream(Paths.get(wordUrl, name)));
             insReport.setUrl("/word/" + name);
             insReport.setWriteUserId(SecurityUtils.getUserId().intValue());//鎻愪氦浜�
             insReport.setWriteTime(LocalDateTime.now());//鎻愪氦鏃堕棿
@@ -3246,6 +3249,11 @@
             }
 
         }
+        // 妫�娴嬫姤鍛婁笉灞曠ず鈥滅粨璁衡�濆垪锛岄琛屼篃瑕佸悓姝ュ噺灏戜竴涓崟鍏冩牸锛�
+        // 鍚﹀垯棣栬涓� max + 6 鍒椼�佸叾浣欒涓� max + 5 鍒楋紝poi-tl 鏃犳硶娓叉煋琛ㄦ牸銆�
+        if (!showResult && !text.isEmpty()) {
+            text.remove(text.size() - 1);
+        }
         TextRenderData[] text2 = text.toArray(new TextRenderData[0]);
         rowRenderData = Rows.of(text2).center().rowAtleastHeight(1).create();
         rows.add(rowRenderData);

--
Gitblit v1.9.3