From 99cf848f87e2e06954d1ca101c9ff1879cf801c7 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期一, 12 五月 2025 15:15:45 +0800
Subject: [PATCH] 远场上传的文件解析调整+检验任务样品编号筛选

---
 inspect-server/src/main/java/com/yuanchu/mom/mapper/InsSampleMapper.java               |    2 +-
 inspect-server/src/main/resources/mapper/InsSampleMapper.xml                           |    5 ++++-
 inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java |    6 ++++--
 inspect-server/src/main/java/com/yuanchu/mom/utils/FuSheUtils.java                     |   15 ++++++++-------
 4 files changed, 17 insertions(+), 11 deletions(-)

diff --git a/inspect-server/src/main/java/com/yuanchu/mom/mapper/InsSampleMapper.java b/inspect-server/src/main/java/com/yuanchu/mom/mapper/InsSampleMapper.java
index 4dd71b4..225494f 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/mapper/InsSampleMapper.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/mapper/InsSampleMapper.java
@@ -25,7 +25,7 @@
 */
 public interface InsSampleMapper extends BaseMapper<InsSample> {
 
-    IPage<InsOrderPlanVO> findInsSampleAndOrder(Page page, @Param("ew") QueryWrapper<InsOrderPlanDTO> ew, @Param("userName") String userName, @Param("sonLaboratory") String sonLaboratory, @Param("laboratory") String laboratory);
+    IPage<InsOrderPlanVO> findInsSampleAndOrder(@Param("page") Page page, @Param("ew") QueryWrapper<InsOrderPlanDTO> ew, @Param("userName") String userName, @Param("sonLaboratory") String sonLaboratory, @Param("laboratory") String laboratory, @Param("sampleCode") String sampleCode);
 
     IPage<InsOrderPlanTaskSwitchVo> inspectionOrderDetailsTaskSwitching(Page page, @Param("ew") QueryWrapper<InsOrderPlanDTO> ew, @Param("userId") Integer userId, @Param("sonLaboratory") String sonLaboratory, @Param("laboratory") String laboratory);
 
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
index cecfcbe..5731840 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
@@ -146,7 +146,9 @@
         }
         String sonLaboratory = insOrderPlanDTO.getSonLaboratory();//璇曢獙瀹�
         insOrderPlanDTO.setSonLaboratory(null);
-        IPage<InsOrderPlanVO> insOrderPage = insSampleMapper.findInsSampleAndOrder(page, QueryWrappers.queryWrappers(insOrderPlanDTO), userName, sonLaboratory, laboratory);
+        String sampleCode = insOrderPlanDTO.getSampleCode();
+        insOrderPlanDTO.setSampleCode(null);
+        IPage<InsOrderPlanVO> insOrderPage = insSampleMapper.findInsSampleAndOrder(page, QueryWrappers.queryWrappers(insOrderPlanDTO), userName, sonLaboratory, laboratory,sampleCode);
         map.put("body", insOrderPage);
         return map;
     }
@@ -350,7 +352,7 @@
             insOrderFile.setFileUrl(pathName);
             insOrderFileMapper.insert(insOrderFile);
             String[] split = filename.split("\\.");
-            if (ObjectUtils.isNotEmpty(sonLaboratory) && sonLaboratory.equals("杩戝満") && split[split.length - 1].equals("csv")) {
+            if (ObjectUtils.isNotEmpty(sonLaboratory) && sonLaboratory.equals("杩戝満") && (split[split.length - 1].equals("csv") || split[split.length - 1].equals("xlsx"))) {
                 fuSheUtils.getFuSheWord1(sonLaboratory, insOrderFile);
             } else if (ObjectUtils.isNotEmpty(sonLaboratory) && sonLaboratory.equals("杩滃満") && split[split.length - 1].equals("xlsx")) {
                 fuSheUtils.getFuSheWord2(sonLaboratory, insOrderFile);
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/utils/FuSheUtils.java b/inspect-server/src/main/java/com/yuanchu/mom/utils/FuSheUtils.java
index 0b00346..f52260a 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/utils/FuSheUtils.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/utils/FuSheUtils.java
@@ -206,8 +206,8 @@
             }
             System.out.println(map);
             createWord(sonLaboratory, document, exceldata, map, biaozhun, insOrderFile);
-        } catch (IOException e) {
-            e.printStackTrace();
+        } catch (Exception e) {
+//            e.printStackTrace();
         } finally {
             // 鍏抽棴璧勬簮
             try {
@@ -449,8 +449,8 @@
             orderFile.setSonLaboratory(sonLaboratory);
             insOrderFileMapper.insert(orderFile);
 
-        } catch (IOException e) {
-            e.printStackTrace();
+        } catch (Exception e) {
+//            e.printStackTrace();
         } finally {
             // 鍏抽棴璧勬簮
             try {
@@ -856,6 +856,7 @@
 
 
             List<String> collect = Arrays.stream(split).collect(Collectors.toList());
+            collect.remove(collect.size() - 1);
             collect.sort((o1, o21) -> Integer.parseInt(o1.substring((o1.length() - 1))) - Integer.parseInt(o21.substring(o21.length() - 1)));
 
             List<Map<String, Object>> list = new ArrayList<>();
@@ -866,7 +867,7 @@
 
             Map<String, List<Map<String, Object>>> o1 = (Map<String, List<Map<String, Object>>>) dataRow.get(result);
             for (String s2 : collect) {
-                if (s2.contains("绔彛") || s2.contains("P")) {
+                if (s2.contains("绔彛") || s2.contains("P") || s2.contains("骞挎挱") || s2.contains("涓氬姟")) {
                     List<Map<String, Object>> mapList = o1.get(s2);
                     list.addAll(mapList);
                 }
@@ -979,9 +980,9 @@
                 XWPFRun run9 = paragraph9.createRun();
                 run9.setText("");
 
-                for (int i = 0; i < collect.size() - 1; i++) {
+                for (int i = 0; i < collect.size(); i++) {
                     String s3 = collect.get(i);
-                    if (s3.contains("绔彛") || s3.contains("P")) {
+                    if (s3.contains("绔彛") || s3.contains("P") || s3.contains("骞挎挱") || s3.contains("涓氬姟")) {
                         XWPFParagraph paragraph10 = table1.getRow(rowNum+1).getCell(5 + i).getParagraphArray(0);
                         paragraph10.setAlignment(ParagraphAlignment.CENTER);
                         XWPFRun run10 = paragraph10.createRun();
diff --git a/inspect-server/src/main/resources/mapper/InsSampleMapper.xml b/inspect-server/src/main/resources/mapper/InsSampleMapper.xml
index f9bc603..d573263 100644
--- a/inspect-server/src/main/resources/mapper/InsSampleMapper.xml
+++ b/inspect-server/src/main/resources/mapper/InsSampleMapper.xml
@@ -54,7 +54,7 @@
         io.send_time,
         isa.id sampleId,
         isa.sample sample,
-        isa.sample_code sampleCode,
+        isa.sample_code ,
         userName,
         userNameId,
         checkName,
@@ -81,6 +81,9 @@
         ORDER BY ins_sample_id
         )isu2 ON isu2.ins_sample_id = isa.id
         WHERE io.state = 1 and send_time is not null
+        <if test="sampleCode !=null and sampleCode!=''">
+            and (isa.sample_code like CONCAT ('%', #{sampleCode},'%') )
+        </if>
         <if test="userName !=null and userName!=''">
             and ( (userName like CONCAT ('%', #{userName},'%') )
             or (checkName like CONCAT ('%', #{userName},'%') ) )

--
Gitblit v1.9.3