From 5101e344b4ac9de94d0f18d8a501158be49221ff Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期四, 20 二月 2025 10:27:00 +0800
Subject: [PATCH] Merge branch 'dev' into dev_zj

---
 inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsOrderFileMapper.java                |    3 
 inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsProductResultMapper.java            |    2 
 inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsOrderDeviceRecordMapper.java        |    5 
 ruoyi-common/src/main/java/com/ruoyi/common/handler/MybatisHandler.java                      |    1 
 inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsOrderMapper.java                    |   40 ++--
 basic-server/src/main/java/com/ruoyi/basic/controller/StandardTemplateController.java        |    2 
 inspect-server/src/main/java/com/ruoyi/inspect/service/impl/RawMaterialOrderServiceImpl.java |   20 ++
 inspect-server/src/main/java/com/ruoyi/inspect/pojo/InsSampleUser.java                       |    2 
 inspect-server/src/main/java/com/ruoyi/inspect/controller/InsOrderController.java            |   25 ---
 basic-server/src/main/java/com/ruoyi/basic/mapper/StandardTreeMapper.java                    |    7 +
 inspect-server/src/main/java/com/ruoyi/inspect/dto/InsPlaceOrderDto.java                     |   27 +++
 inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderServiceImpl.java         |    4 
 inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsUnqualifiedHandlerMapper.java       |    2 
 ruoyi-system/src/main/java/com/ruoyi/system/service/UserService.java                         |    6 
 inspect-server/pom.xml                                                                       |    1 
 inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsUnqualifiedRetestProductMapper.java |    9 
 basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java  |   37 ++---
 basic-server/src/main/resources/mapper/StandardTreeMapper.xml                                |   19 +-
 inspect-server/src/main/java/com/ruoyi/inspect/service/InsOrderService.java                  |    2 
 inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsProductMapper.java                  |   16 +-
 inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsUnPassMapper.java                   |    3 
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/UserController.java                |   16 ++
 inspect-server/src/main/java/com/ruoyi/inspect/controller/RawMaterialOrderController.java    |   31 ++--
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserServiceImpl.java                |   10 +
 inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsSampleMapper.java                   |   24 +-
 ruoyi-system/src/main/resources/mapper/system/UserMapper.xml                                 |   13 +
 inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsReportMapper.java                   |    2 
 ruoyi-system/src/main/java/com/ruoyi/system/mapper/UserMapper.java                           |    7 +
 basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTreeServiceImpl.java         |   39 ++--
 29 files changed, 229 insertions(+), 146 deletions(-)

diff --git a/basic-server/src/main/java/com/ruoyi/basic/controller/StandardTemplateController.java b/basic-server/src/main/java/com/ruoyi/basic/controller/StandardTemplateController.java
index f4414ee..07be416 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/controller/StandardTemplateController.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/controller/StandardTemplateController.java
@@ -19,7 +19,7 @@
 
     @ApiOperation(value = "鑾峰彇鍘熷璁板綍妯℃澘鍒楄〃")
     @GetMapping("/selectStandardTemplatePageList")
-    public Result selectStandardTemplatePageList(Page page,StandardTemplate standardTemplate) throws Exception {
+    public Result selectStandardTemplatePageList(Page page,StandardTemplate standardTemplate){
         return Result.success(standardTemplateService.selectStandardTemplatePageList(page, standardTemplate));
     }
 
diff --git a/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardTreeMapper.java b/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardTreeMapper.java
index daad498..fc0aa9f 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardTreeMapper.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardTreeMapper.java
@@ -12,6 +12,7 @@
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
+import java.util.Set;
 
 /**
  * @author Administrator
@@ -85,6 +86,12 @@
      */
     IPage<IfsInventoryQuantitySupplierDto> getIfsByQuarter(Page<IfsInventoryQuantitySupplierDto> page, @Param("ew") QueryWrapper<IfsInventoryQuantitySupplierDto> ew, @Param("beginDeclareDate") String beginDeclareDate, @Param("endDeclareDate")String endDeclareDate);
 
+    /**
+     * 鎵归噺鏌ヨ鏍�
+     * @param sampleTypeValues
+     * @return
+     */
+    List<SampleDto> getStandardTree3Batch(@Param("sampleTypeValues") Set<String> sampleTypeValues);
 }
 
 
diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java
index c5695ec..b50d427 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java
@@ -432,30 +432,21 @@
                         .like(StandardProductList::getTree, tree));
             }
 
-            boolean success = false;
-            int retryCount = 0;
-            while (!success && retryCount < 100) {
-                try {
-                    standardProductListService2.saveBatch(list.stream().map(a -> {
-                        a.setFactory(trees[0]);
-                        a.setLaboratory(trees[1]);
-                        a.setSampleType(trees[2]);
-                        a.setCreateUser(userId);
-                        a.setUpdateUser(userId);
-                        a.setStandardMethodListId(id);
-                        return a;
-                    }).collect(Collectors.toList()));
-                    ;
-                    success = true;
-                } catch (Exception e) {
-                    // 澶勭悊閲嶅 ID 鐨勮褰曪紝閲嶆柊鐢熸垚 ID 骞剁户缁皾璇曟彃鍏�
-                    for (StandardProductList productList : list) {
-                        productList.setId(IdWorker.getId());
-                    }
+            try {
+                standardProductListService2.saveBatch(list.stream().map(a -> {
+                    a.setFactory(trees[0]);
+                    a.setLaboratory(trees[1]);
+                    a.setSampleType(trees[2]);
+                    a.setCreateUser(userId);
+                    a.setUpdateUser(userId);
+                    a.setStandardMethodListId(id);
+                    return a;
+                }).collect(Collectors.toList()));
+            } catch (Exception e) {
+                // 澶勭悊閲嶅 ID 鐨勮褰曪紝閲嶆柊鐢熸垚 ID 骞剁户缁皾璇曟彃鍏�
+                for (StandardProductList productList : list) {
+                    productList.setId(IdWorker.getId());
                 }
-            }
-            if (!success) {
-                throw new RuntimeException("鎻掑叆澶辫触");
             }
 
         }
diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTreeServiceImpl.java b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTreeServiceImpl.java
index b64ab41..3fe74d1 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTreeServiceImpl.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTreeServiceImpl.java
@@ -10,6 +10,7 @@
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.basic.dto.SampleDto;
 import com.ruoyi.common.exception.base.BaseException;
 import com.ruoyi.basic.dto.FactoryDto;
 import com.ruoyi.basic.dto.LaboratoryDto;
@@ -29,10 +30,9 @@
 
 import java.io.IOException;
 import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.concurrent.atomic.AtomicReference;
+import java.util.stream.Collectors;
 
 /**
  * @author Administrator
@@ -61,20 +61,33 @@
     @Override
     public List<FactoryDto> selectStandardTreeList() {
         List<FactoryDto> factoryDtos = standardTreeMapper.selectStandardTreeList();
+        // 鏀堕泦鎵�鏈� sampleTypeDto 鐨� value
+        Set<String> sampleTypeValues = new HashSet<>();
         for (FactoryDto factoryDto : factoryDtos) {
             for (LaboratoryDto laboratoryDto : factoryDto.getChildren()) {
                 laboratoryDto.getChildren().sort((o1, o2) -> (o1.getSort() == null ? 0 : o1.getSort())
                         - (o2.getSort() == null ? 0 : o2.getSort()));
                 for (SampleTypeDto sampleTypeDto : laboratoryDto.getChildren()) {
-//                    if (sampleTypeDto.getChildren().size() == 0) {
-                        sampleTypeDto.getChildren().addAll(standardTreeMapper.getStandardTree3(sampleTypeDto.getValue()));
-//                    }
+                    sampleTypeValues.add(sampleTypeDto.getValue());
+                }
+            }
+        }
+        // 鎵归噺鏌ヨ鎵�鏈� sampleTypeDto 鐨勬暟鎹�
+        List<SampleDto> standardList = standardTreeMapper.getStandardTree3Batch(sampleTypeValues);
+        Map<String, List<SampleDto>> standardTreeMap = standardList.stream().collect(Collectors.groupingBy(SampleDto::getValue));
+        // 灏嗘煡璇㈢粨鏋滃垎閰嶅埌瀵瑰簲鐨� sampleTypeDto
+        for (FactoryDto factoryDto : factoryDtos) {
+            for (LaboratoryDto laboratoryDto : factoryDto.getChildren()) {
+                for (SampleTypeDto sampleTypeDto : laboratoryDto.getChildren()) {
+                    List<SampleDto> standardTreeList = standardTreeMap.get(sampleTypeDto.getValue());
+                    if (standardTreeList != null) {
+                        sampleTypeDto.getChildren().addAll(standardTreeList);
+                    }
                 }
             }
         }
         return factoryDtos;
     }
-
 
 
     @Override
@@ -109,18 +122,6 @@
                     standardTreeMapper.delete(Wrappers.<StandardTree>lambdaUpdate().eq(StandardTree::getFactory, trees[0]).eq(StandardTree::getLaboratory, trees[1]).eq(StandardTree::getSampleType, trees[2]).eq(StandardTree::getSample, trees[3]).eq(StandardTree::getModel, trees[4]));
                 }
                 break;
-            /*case 4:
-                standardTreeMapper.delete(Wrappers.<StandardTree>lambdaUpdate().eq(StandardTree::getFactory, trees[0]).eq(StandardTree::getLaboratory, trees[1]).eq(StandardTree::getSampleType, trees[2]).eq(StandardTree::getSample, trees[3]));
-                break;
-            case 3:
-                standardTreeMapper.delete(Wrappers.<StandardTree>lambdaUpdate().eq(StandardTree::getFactory, trees[0]).eq(StandardTree::getLaboratory, trees[1]).eq(StandardTree::getSampleType, trees[2]));
-                break;
-            case 2:
-                standardTreeMapper.delete(Wrappers.<StandardTree>lambdaUpdate().eq(StandardTree::getFactory, trees[0]).eq(StandardTree::getLaboratory, trees[1]));
-                break;
-            case 1:
-                standardTreeMapper.delete(Wrappers.<StandardTree>lambdaUpdate().eq(StandardTree::getFactory, trees[0]));
-                break;*/
         }
         return 1;
     }
diff --git a/basic-server/src/main/resources/mapper/StandardTreeMapper.xml b/basic-server/src/main/resources/mapper/StandardTreeMapper.xml
index 74ded82..e97a9cd 100644
--- a/basic-server/src/main/resources/mapper/StandardTreeMapper.xml
+++ b/basic-server/src/main/resources/mapper/StandardTreeMapper.xml
@@ -212,14 +212,6 @@
             and st.sample = p.name
     </select>
 
-    <select id="getStandardTree3" resultType="com.ruoyi.basic.dto.SampleDto">
-        select model label,
-               model value
-        from standard_tree
-        where sample_type = #{sampleType}
-          and sample is null
-    </select>
-
     <select id="getLaboratory" resultType="java.lang.String">
         select l.laboratory_name
         from structure_test_object sto
@@ -381,4 +373,15 @@
             ${ew.customSqlSegment}
         </if>
     </select>
+
+    <select id="getStandardTree3Batch" resultType="com.ruoyi.basic.dto.SampleDto">
+        select model label,
+               model value
+        from standard_tree
+        where sample_type in
+        <foreach item="item" collection="sampleTypeValues" open="(" separator="," close=")">
+            #{item}
+        </foreach>
+          and sample is null
+    </select>
 </mapper>
diff --git a/inspect-server/pom.xml b/inspect-server/pom.xml
index 981e319..d3d0bd6 100644
--- a/inspect-server/pom.xml
+++ b/inspect-server/pom.xml
@@ -49,7 +49,6 @@
         </dependency>
 
         <!--word杞琾df-->
-        <!--D:\JavaWork\center-lims-after\inspect-server\src\main\resources\lib-->
         <!--mvn install:install-file -Dfile=aspose-words-15.12.0-jdk16.jar -DgroupId=com.aspose -DartifactId=aspose-words -Dversion=15.12.0 -Dpackaging=jar-->
         <dependency>
             <groupId>com.aspose</groupId>
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/controller/InsOrderController.java b/inspect-server/src/main/java/com/ruoyi/inspect/controller/InsOrderController.java
index e65b4ea..b3a36ef 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/controller/InsOrderController.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/controller/InsOrderController.java
@@ -75,16 +75,10 @@
         return Result.success(insOrderService.upInsOrder(orderId, sampleId, appointed, userId,sonLaboratory));
     }
 
-    //todo: 涓嬪崟闇�瑕佷慨鏀�
     @ApiOperation(value = "娣诲姞妫�楠屼笅鍗曟暟鎹�")
     @PostMapping("/addInsOrder")
-    public Result<?> addInsOrder(String str) {
-        Map<String, Object> map = JSON.parseObject(str, Map.class);
-        JSONArray jsonArray = JSON.parseArray(map.get("list")+"");
-        List<SampleProductDto> list = jsonArray.toJavaList(SampleProductDto.class);
-        InsOrder insOrder = JSON.parseObject(JSON.toJSONString(map.get("insOrder")), InsOrder.class);
-        List<List<Integer>> pairing = JSON.parseArray(map.get("pairing")+"");
-        return Result.success(insOrderService.addInsOrder(list, insOrder, pairing));
+    public Result<?> addInsOrder(@RequestBody InsPlaceOrderDto insPlaceOrderDto) {
+        return Result.success(insOrderService.addInsOrder(insPlaceOrderDto.getSampleList(), insPlaceOrderDto.getInsOrder()));
     }
 
     @ApiOperation(value = "鏌ヨ璁㈠崟鏈�闀块璁℃椂闂�")
@@ -236,19 +230,6 @@
         return Result.success(insOrderService.getRetestResult(insProductId));
     }
 
-
-
-    @ApiOperation(value = "閾滃崟涓濅笅鍗�")
-    @PostMapping("/addRawCopperOrder")
-    public Result<?> addRawCopperOrder(String str) {
-        Map<String, Object> map = JSON.parseObject(str, Map.class);
-        JSONArray jsonArray = JSON.parseArray(map.get("list")+"");
-        List<SampleProductDto> list = jsonArray.toJavaList(SampleProductDto.class);
-        CopperInsOrderDto CopperInsOrder = JSON.parseObject(JSON.toJSONString(map.get("insOrder")), CopperInsOrderDto.class);
-        return Result.success(insOrderService.addRawCopperOrder(list, CopperInsOrder));
-    }
-
-
     @ApiOperation(value = "淇敼濮旀墭缂栧彿")
     @PostMapping("/updateOrderEntrustCode")
     public Result<?> updateOrderEntrustCode(@RequestBody InsOrder insOrder) {
@@ -263,7 +244,7 @@
     }
 
     @ApiOperation(value = "鍒犻櫎閫�鍥炶鍗�")
-    @GetMapping("/delInsOrder")
+    @DeleteMapping("/delInsOrder")
     public Result<?> delInsOrder(Integer insOrderId) {
         // 鏌ヨ璁㈠崟
         InsOrder order = insOrderService.getById(insOrderId);
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/controller/RawMaterialOrderController.java b/inspect-server/src/main/java/com/ruoyi/inspect/controller/RawMaterialOrderController.java
index 5ec41ee..abc3b2a 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/controller/RawMaterialOrderController.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/controller/RawMaterialOrderController.java
@@ -5,9 +5,11 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.basic.dto.*;
 import com.ruoyi.basic.pojo.IfsInventoryQuantity;
+import com.ruoyi.inspect.dto.InsPlaceOrderDto;
 import com.ruoyi.inspect.dto.SampleProductDto;
 import com.ruoyi.inspect.pojo.InsOrder;
 import com.ruoyi.inspect.pojo.RawMaterialOrderTemplate;
+import com.ruoyi.inspect.service.InsOrderService;
 import com.ruoyi.inspect.service.RawMaterialOrderService;
 import com.ruoyi.inspect.service.RawMaterialOrderTemplateService;
 import com.ruoyi.common.core.domain.Result;
@@ -34,6 +36,7 @@
 @Api(tags = "鍘熸潗鏂欎笅鍗�")
 public class RawMaterialOrderController {
 
+    private InsOrderService insOrderService;
     private RawMaterialOrderService rawMaterialOrderService;
     private RawMaterialOrderTemplateService rawMaterialOrderTemplateService;
 
@@ -99,7 +102,7 @@
 
     /**
      * 鍙栨秷鎶ユ
-     * @param param 鍘熸潗鏂欎笅鍗�
+     * @param param
      * @return
      */
     @ApiOperation(value = "鎾ら攢鎶ユ")
@@ -159,12 +162,8 @@
 
     @ApiOperation(value = "鍘熸潗鏂欎笅鍗曞厤妫�")
     @PostMapping("/addExemptionOrder")
-    public Result<?> addExemptionOrder(String str) {
-        Map<String, Object> map = JSON.parseObject(str, Map.class);
-        JSONArray jsonArray = JSON.parseArray(map.get("list")+"");
-        List<SampleProductDto> list = jsonArray.toJavaList(SampleProductDto.class);
-        InsOrder insOrder = JSON.parseObject(JSON.toJSONString(map.get("insOrder")), InsOrder.class);
-        return Result.success(rawMaterialOrderService.addExemptionOrder(list, insOrder));
+    public Result<?> addExemptionOrder(@RequestBody InsPlaceOrderDto insPlaceOrderDto) {
+        return Result.success(rawMaterialOrderService.addExemptionOrder(insPlaceOrderDto.getSampleList(), insPlaceOrderDto.getInsOrder()));
     }
 
 
@@ -176,7 +175,7 @@
 
     /**
      * 鍙栨秷鎶ユ
-     * @param id 鍘熸潗鏂欎笅鍗�
+     * @param id
      * @return
      */
     @ApiOperation(value = "鍒犻櫎鍘熸潗鏂欐姤妫�淇℃伅")
@@ -238,14 +237,18 @@
         return Result.success();
     }
 
+
+
+    @ApiOperation(value = "閾滃崟涓濅笅鍗�")
+    @PostMapping("/addRawCopperOrder")
+    public Result<?> addRawCopperOrder(@RequestBody InsPlaceOrderDto insPlaceOrderDto) {
+        return Result.success(insOrderService.addRawCopperOrder(insPlaceOrderDto.getSampleList(), insPlaceOrderDto.getCopperInsOrder()));
+    }
+
     @ApiOperation(value = "閾滃崟涓濅笅鍗曞厤妫�")
     @PostMapping("/addRawCopperOrderExemptionOrder")
-    public Result<?> addRawCopperOrderExemptionOrder(String str) {
-        Map<String, Object> map = JSON.parseObject(str, Map.class);
-        JSONArray jsonArray = JSON.parseArray(map.get("list")+"");
-        List<SampleProductDto> list = jsonArray.toJavaList(SampleProductDto.class);
-        CopperInsOrderDto CopperInsOrder = JSON.parseObject(JSON.toJSONString(map.get("insOrder")), CopperInsOrderDto.class);
-        return Result.success(rawMaterialOrderService.addRawCopperOrderExemptionOrder(list, CopperInsOrder));
+    public Result<?> addRawCopperOrderExemptionOrder(@RequestBody InsPlaceOrderDto insPlaceOrderDto) {
+        return Result.success(rawMaterialOrderService.addRawCopperOrderExemptionOrder(insPlaceOrderDto.getSampleList(), insPlaceOrderDto.getCopperInsOrder()));
     }
 
     /**
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/dto/InsPlaceOrderDto.java b/inspect-server/src/main/java/com/ruoyi/inspect/dto/InsPlaceOrderDto.java
new file mode 100644
index 0000000..03c0cc6
--- /dev/null
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/dto/InsPlaceOrderDto.java
@@ -0,0 +1,27 @@
+package com.ruoyi.inspect.dto;
+
+import com.ruoyi.inspect.pojo.InsOrder;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * 涓嬪崟瀵硅薄
+ *
+ * @Author zhuo
+ * @Date 2025/2/19
+ */
+@Data
+public class InsPlaceOrderDto{
+
+    @ApiModelProperty("鏍峰搧")
+    private List<SampleProductDto> sampleList;
+
+    @ApiModelProperty("璁㈠崟淇℃伅")
+    private InsOrder insOrder;
+
+    @ApiModelProperty("閾滃崟涓濊鍗�")
+    private CopperInsOrderDto copperInsOrder;
+
+}
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsOrderDeviceRecordMapper.java b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsOrderDeviceRecordMapper.java
index 258dd57..ea79796 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsOrderDeviceRecordMapper.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsOrderDeviceRecordMapper.java
@@ -3,6 +3,7 @@
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.ruoyi.inspect.dto.InsOrderDeviceRecordDto;
 import com.ruoyi.inspect.pojo.InsOrderDeviceRecord;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 import java.util.Set;
@@ -20,13 +21,13 @@
      * @param insOrderId
      * @return
      */
-    List<InsOrderDeviceRecordDto> selectDeviceNumber(Integer insOrderId);
+    List<InsOrderDeviceRecordDto> selectDeviceNumber(@Param("insOrderId") Integer insOrderId);
 
     /**
      * 鏍规嵁缂栧彿鏌ヨ璁惧id
      * @param deviceNumbers
      * @return
      */
-    List<Integer> selectDeviceIdsByNumbers(Set<String> deviceNumbers);
+    List<Integer> selectDeviceIdsByNumbers(@Param("deviceNumbers") Set<String> deviceNumbers);
 }
 
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsOrderFileMapper.java b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsOrderFileMapper.java
index 8bd5432..f4f3c4a 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsOrderFileMapper.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsOrderFileMapper.java
@@ -5,6 +5,7 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.inspect.pojo.InsOrderFile;
+import org.apache.ibatis.annotations.Param;
 
 /**
  * <p>
@@ -16,5 +17,5 @@
  */
 public interface InsOrderFileMapper extends BaseMapper<InsOrderFile> {
 
-    IPage<InsOrderFile> getFileList(Page page, QueryWrapper<InsOrderFile> ew, Integer insOrderId);
+    IPage<InsOrderFile> getFileList(@Param("page") Page page, @Param("ew") QueryWrapper<InsOrderFile> ew, @Param("insOrderId") Integer insOrderId);
 }
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsOrderMapper.java b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsOrderMapper.java
index 33b9e4c..36ff9d0 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsOrderMapper.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsOrderMapper.java
@@ -27,31 +27,31 @@
 public interface InsOrderMapper extends BaseMapper<InsOrder> {
 
     //鑾峰彇妫�楠屼笅鍗曟暟鎹�
-    IPage<SampleOrderDto> selectInsOrderPage(IPage<InsOrder> page, QueryWrapper<SampleOrderDto> ew, String laboratory, String isOrderAll);
+    IPage<SampleOrderDto> selectInsOrderPage(@Param("page") IPage<InsOrder> page, @Param("ew") QueryWrapper<SampleOrderDto> ew, @Param("laboratory") String laboratory, @Param("isOrderAll") String isOrderAll);
 
 
-    String getLaboratoryCode(String name);
+    String getLaboratoryCode(@Param("name") String name);
 
-    IPage<SampleProductDto2> selectSampleAndProductByOrderId(IPage<SampleProductDto2> page, QueryWrapper<SampleProductDto2> ew, Integer id);
+    IPage<SampleProductDto2> selectSampleAndProductByOrderId(@Param("page") IPage<SampleProductDto2> page, @Param("ew") QueryWrapper<SampleProductDto2> ew, @Param("id") Integer id);
 
-    IPage<CostStatisticsDto> selectCostStatistics(IPage<CostStatisticsDto> page, QueryWrapper<CostStatisticsDto> ew);
+    IPage<CostStatisticsDto> selectCostStatistics(@Param("page") IPage<CostStatisticsDto> page, @Param("ew") QueryWrapper<CostStatisticsDto> ew);
 
     List<CostStatisticsDto> selectCostStatistics2(@Param("ew") QueryWrapper<CostStatisticsDto> ew);
 
-    List<Map<String, String>> selectDeviceList(Set<String> names);
+    List<Map<String, String>> selectDeviceList(@Param("names") Set<String> names);
     List<SampleDefectsFatherVo> selectSampleDefects(Page page, @Param("inspectionItems") String inspectionItems, @Param("orderNumber") String orderNumber);
 
     Long getCount(@Param("inspectionItems") String inspectionItems, @Param("orderNumber") String orderNumber);
 
-    String getStandardMethodCode(Integer id);
+    String getStandardMethodCode(@Param("id") Integer id);
 
-    int updateStatus( Integer id);
+    int updateStatus(@Param("id") Integer id);
 
-    String selLaboratoryCode(String laboratory);
+    String selLaboratoryCode(@Param("laboratory") String laboratory);
 
     List<Map<Integer, Object>> selectReportModelByOrderId(@Param("id") Integer id, @Param("laboratory") String laboratory);
 
-    String seldepLimsId(int depLimsId);
+    String seldepLimsId(@Param("depLimsId") Integer depLimsId);
 
     /**
      * 鏌ヨ妫�楠岀粨鏋�
@@ -65,65 +65,65 @@
      * @param id
      * @return
      */
-    int selectSampleMax(Integer id);
+    int selectSampleMax(@Param("id") Integer id);
 
     /**
      * 鑾峰彇绾胯姱棰滆壊
      * @param id
      * @return
      */
-    List<String> selectSampleCableTag(Integer id);
+    List<String> selectSampleCableTag(@Param("id") Integer id);
 
     /**
      *
      * @param orderId
      * @return
      */
-    int selectSampleItemS(Integer orderId);
+    int selectSampleItemS(@Param("orderId") Integer orderId);
 
     /**
      * 鍙煡璇㈤粯璁ょ涓�涓殑浜у搧
      * @param id
      * @return
      */
-    List<SampleProductExportDto> selectSampleBySampleIdOne(Integer id);
+    List<SampleProductExportDto> selectSampleBySampleIdOne(@Param("id") Integer id);
 
     /**
      * 鏌ヨ鏃ュ巻鍥�
      * @param
      * @return
      */
-    List<Map<String, Object>> selectCalendarWorkByWeek(int day);
+    List<Map<String, Object>> selectCalendarWorkByWeek(@Param("day") Integer day);
 
     /**
      *
      * @param partNo
      * @return
      */
-    StructureTestObject selectProductByPartNo(String partNo);
+    StructureTestObject selectProductByPartNo(@Param("partNo") String partNo);
 
     /**
      *
      * @param partNo
      * @return
      */
-    StructureTestObject selectByPartNo(String partNo);
+    StructureTestObject selectByPartNo(@Param("partNo") String partNo);
 
     /**
      * 鎴愬搧鏍囩鎵撳嵃
      * @param ids
      * @return
      */
-    List<InsOrderPrintingVo> labelOrderPrinting(List<Integer> ids);
+    List<InsOrderPrintingVo> labelOrderPrinting(@Param("ids") List<Integer> ids);
 
-    List<SampleOrderDto> rawAllInsOrderExport(QueryWrapper<SampleOrderDto> ew,  String laboratory, String isOrderAll);
+    List<SampleOrderDto> rawAllInsOrderExport(@Param("ew") QueryWrapper<SampleOrderDto> ew, @Param("laboratory") String laboratory, @Param("isOrderAll") String isOrderAll);
 
     /**
      * 鏍规嵁璁㈠崟鏌ヨ璇曢獙瀹�
      * @param insOrderId
      * @return
      */
-    String selectLaboratoryByOrderId(Integer insOrderId);
+    String selectLaboratoryByOrderId(@Param("insOrderId") Integer insOrderId);
 
-    InsOrder selectFirstSubmit(Integer insSampleId);
+    InsOrder selectFirstSubmit(@Param("insSampleId") Integer insSampleId);
 }
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsProductMapper.java b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsProductMapper.java
index 52a8ef0..bfb7115 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsProductMapper.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsProductMapper.java
@@ -19,19 +19,19 @@
 */
 public interface InsProductMapper extends BaseMapper<InsProduct> {
 
-    int selectOrderManDay(Integer orderId);
+    int selectOrderManDay(@Param("orderId") Integer orderId);
 
-    Map<String, String> selectUserById(Integer userId);
+    Map<String, String> selectUserById(@Param("userId") Integer userId);
 
-    List<ProductResultDto2> getProductAndResult(Integer sampleId);
+    List<ProductResultDto2> getProductAndResult(@Param("sampleId") Integer sampleId);
 
     int updateInspected(@Param("id") Integer id);
 
-    List<InsProduct> selectFiberInsProduct(List<Integer> ids, String laboratory);
+    List<InsProduct> selectFiberInsProduct(@Param("ids") List<Integer> ids, @Param("laboratory") String laboratory);
 
-    IPage<InsProduct> selectNoProducts(Page page, Integer orderId, List<Integer> noIds);
+    IPage<InsProduct> selectNoProducts(@Param("page") Page page, @Param("orderId") Integer orderId, @Param("noIds") List<Integer> noIds);
 
-    int selectInsProductCountByOrderId(Integer orderId);
+    int selectInsProductCountByOrderId(@Param("orderId") Integer orderId);
 
     /**
      * 鏍规嵁鏍峰搧id鏌ヨ妫�楠岄」鐩�
@@ -52,14 +52,14 @@
      * @param orderId
      * @return
      */
-    List<String> selectUnqualifiedList(Integer orderId);
+    List<String> selectUnqualifiedList(@Param("orderId") Integer orderId);
 
     /**
      * 鏌ヨ鍒ゆ柇鏄惁鏈変笉鍒ゅ畾椤圭洰,鍜屽叏閮芥槸鍒ゅ畾椤�
      * @param orderId
      * @return
      */
-    int selectNoJudge(Integer orderId);
+    int selectNoJudge(@Param("orderId") Integer orderId);
 }
 
 
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsProductResultMapper.java b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsProductResultMapper.java
index 6ce0f27..57e640d 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsProductResultMapper.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsProductResultMapper.java
@@ -21,7 +21,7 @@
      * @param orderId
      * @return
      */
-    List<InsProductResult> selectResultByOrderId(Integer orderId);
+    List<InsProductResult> selectResultByOrderId(@Param("orderId") Integer orderId);
 }
 
 
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsReportMapper.java b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsReportMapper.java
index f9be2da..3f6176e 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsReportMapper.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsReportMapper.java
@@ -29,7 +29,7 @@
                                        @Param("queryStatus") String queryStatus,
                                        @Param("createOrderUser") Integer createOrderUser);
 
-    String getLaboratoryByName(String name, String type);
+    String getLaboratoryByName(@Param("name") String name, @Param("type") String type);
 
 }
 
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsSampleMapper.java b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsSampleMapper.java
index b074da0..633ebc1 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsSampleMapper.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsSampleMapper.java
@@ -34,22 +34,22 @@
 
     IPage<InsOrderPlanTaskSwitchVo> inspectionOrderDetailsTaskSwitching(Page page, @Param("ew") QueryWrapper<InsOrderPlanDTO> ew, @Param("userId") Integer userId, @Param("sonLaboratory") String sonLaboratory, @Param("laboratory") String laboratory);
 
-    List<SampleProductDto> selectSampleProductListByOrderId(Integer id);
+    List<SampleProductDto> selectSampleProductListByOrderId(@Param("id") Integer id);
 
-    List<SampleProductDto> selectSampleProductListByOrderId2(Integer id);
+    List<SampleProductDto> selectSampleProductListByOrderId2(@Param("id") Integer id);
 
-    Map<String,Object> selectInsOrder(Integer id);
+    Map<String,Object> selectInsOrder(@Param("id") Integer id);
 
-    List<SampleProductDto> getInsOrderAndSample(Integer id, String laboratory);
+    List<SampleProductDto> getInsOrderAndSample(@Param("id") Integer id, @Param("laboratory") String laboratory);
 
-    String getSampleEn(String sample);
+    String getSampleEn(@Param("sample") String sample);
 
     /**
      * 鍙兘娌℃湁浜у搧鐩存帴灏辨槸瀵硅薄
      * @param sample
      * @return
      */
-    String getSampleEnByObject(String sample);
+    String getSampleEnByObject(@Param("sample") String sample);
 
     /**
      * 鏍峰搧
@@ -57,7 +57,7 @@
      * @param laboratory
      * @return
      */
-    List<InsProduct> getInsProduct1(Integer id, String laboratory, String cableTag, String repetitionTag, String isDisqualification);
+    List<InsProduct> getInsProduct1(@Param("id") Integer id, @Param("laboratory") String laboratory, @Param("cableTag") String cableTag, @Param("repetitionTag") String repetitionTag, @Param("isDisqualification") String isDisqualification);
 
 
     /**
@@ -67,11 +67,11 @@
      * @param rawMaterialTag
      * @return
      */
-    List<InsProduct> getInsProduct6(Integer id, String laboratory, String rawMaterialTag, String isDisqualification);
+    List<InsProduct> getInsProduct6(@Param("id") Integer id, @Param("laboratory") String laboratory, @Param("rawMaterialTag") String rawMaterialTag, @Param("isDisqualification") String isDisqualification);
 
-    SampleVo getDetailById(Integer sampleId);
+    SampleVo getDetailById(@Param("sampleId") Integer sampleId);
 
-    String selMethodById(Integer sampleId);
+    String selMethodById(@Param("sampleId") Integer sampleId);
 
     /**
      * 鐢电紗閰嶇疆鏌ョ湅閰嶇疆鏍囪瘑
@@ -98,7 +98,7 @@
     List<Map<String, Object>> getRepetitionTag(@Param("id") Integer id, @Param("laboratory") String laboratory, @Param("cableTag") String cableTag);
 
 
-    List<SampleProductDto> selectExemptionByOrderId(Integer id);
+    List<SampleProductDto> selectExemptionByOrderId(@Param("id") Integer id);
 
     /**
      * 鏌ヨ鍘傚瀵嗗害(鏈夊瀷鍙�)
@@ -122,7 +122,7 @@
      * @param itemIds
      * @return
      */
-    List<InsProduct> selectProductResult(List<Integer> itemIds);
+    List<InsProduct> selectProductResult(@Param("itemIds") List<Integer> itemIds);
 }
 
 
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsUnPassMapper.java b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsUnPassMapper.java
index d818dd2..2e55796 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsUnPassMapper.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsUnPassMapper.java
@@ -5,11 +5,12 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.ruoyi.inspect.dto.UnPassPageDto;
 import com.ruoyi.inspect.pojo.InsUnPass;
+import org.apache.ibatis.annotations.Param;
 
 /**
  * @author 鏈变匠鍚�
  * @date 2024/5/8 13:05
  */
 public interface InsUnPassMapper extends BaseMapper<InsUnPass> {
-    IPage<UnPassPageDto> pageInsUnPass(IPage<UnPassPageDto> page, QueryWrapper<UnPassPageDto> ew);
+    IPage<UnPassPageDto> pageInsUnPass(@Param("page") IPage<UnPassPageDto> page, @Param("ew") QueryWrapper<UnPassPageDto> ew);
 }
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsUnqualifiedHandlerMapper.java b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsUnqualifiedHandlerMapper.java
index ad27c5c..171980b 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsUnqualifiedHandlerMapper.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsUnqualifiedHandlerMapper.java
@@ -23,7 +23,7 @@
 
     IPage<UnqualifiedHandlerVO> selectPageList(IPage<UnqualifiedHandlerVO> page, @Param("ew")QueryWrapper<UnqualifiedHandlerDto> ew);
 
-    UnqualifiedHandlerVO findById(Long id);
+    UnqualifiedHandlerVO findById(@Param("id") Long id);
 
     /**
      * 鏌ョ湅oa娴佺▼
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsUnqualifiedRetestProductMapper.java b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsUnqualifiedRetestProductMapper.java
index 440ca63..6ff1a4c 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsUnqualifiedRetestProductMapper.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsUnqualifiedRetestProductMapper.java
@@ -4,6 +4,7 @@
 import com.ruoyi.inspect.pojo.InsProduct;
 import com.ruoyi.inspect.pojo.InsUnqualifiedRetestProduct;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
@@ -20,15 +21,15 @@
      * @param ids
      * @return
      */
-    List<InsUnqualifiedRetestProduct> selectRetestProduct(List<Integer> ids);
+    List<InsUnqualifiedRetestProduct> selectRetestProduct(@Param("ids") List<Integer> ids);
 
     // 鏍峰搧
-    List<InsProduct> getInsProductUnqualifiedRetest1(Integer id, String laboratory, String retestTag);
+    List<InsProduct> getInsProductUnqualifiedRetest1(@Param("id") Integer id, @Param("laboratory") String laboratory, @Param("retestTag") String retestTag);
 
     // 鐢电紗閰嶇疆
-    List<InsProduct> getInsProductUnqualifiedRetest5(Integer id, String laboratory, String cableTag, String retestTag);
+    List<InsProduct> getInsProductUnqualifiedRetest5(@Param("id") Integer id, @Param("laboratory") String laboratory, @Param("cableTag") String cableTag, @Param("retestTag") String retestTag);
 
     // 鍘熸潗鏂欎笅鍗�
-    List<InsProduct> getInsProductUnqualifiedRetest6(Integer id, String laboratory, String rawMaterialTag, String retestTag);
+    List<InsProduct> getInsProductUnqualifiedRetest6(@Param("id") Integer id, @Param("laboratory") String laboratory, @Param("rawMaterialTag") String rawMaterialTag, @Param("retestTag") String retestTag);
 }
 
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/pojo/InsSampleUser.java b/inspect-server/src/main/java/com/ruoyi/inspect/pojo/InsSampleUser.java
index 52807bb..6acf39b 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/pojo/InsSampleUser.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/pojo/InsSampleUser.java
@@ -24,7 +24,7 @@
     private Integer id;
 
     /**
-     * 澶栭敭锛氭楠屾牱鍝乮ns_sample琛╥d
+     * 澶栭敭锛氭槸璁㈠崟insOrder琛╥d (????)
      */
     private Integer insSampleId;
 
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/service/InsOrderService.java b/inspect-server/src/main/java/com/ruoyi/inspect/service/InsOrderService.java
index ea5ac0a..e845236 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/service/InsOrderService.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/service/InsOrderService.java
@@ -29,7 +29,7 @@
     //淇敼妫�楠屼笅鍗曟暟鎹�
     int upInsOrder(Integer orderId,Integer sampleId, String appointed, Integer userId,String sonLaboratory);
 
-    int addInsOrder(List<SampleProductDto> list, InsOrder insOrder, List<List<Integer>> pairing);
+    int addInsOrder(List<SampleProductDto> list, InsOrder insOrder);
 
     Map<String, Object> getInsOrder(Integer id);
 
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderServiceImpl.java b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderServiceImpl.java
index abb2686..87188f4 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderServiceImpl.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderServiceImpl.java
@@ -96,7 +96,6 @@
             isOrderAll = "1";
             sampleOrderDto.setState(null);
         }
-        IPage<SampleOrderDto> sampleOrderDtoIPage = insOrderMapper.selectInsOrderPage(page, QueryWrappers.queryWrappers(sampleOrderDto), laboratory, isOrderAll);
         return insOrderMapper.selectInsOrderPage(page, QueryWrappers.queryWrappers(sampleOrderDto), laboratory, isOrderAll);
     }
 
@@ -150,7 +149,7 @@
 
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public int addInsOrder(List<SampleProductDto> list, InsOrder insOrder, List<List<Integer>> pairing) {
+    public int addInsOrder(List<SampleProductDto> list, InsOrder insOrder) {
         // todo: 涓嬪崟鍒ゆ柇鎶芥牱璁″垝鐨勫敮涓�鎬�
         if (insOrder.getQuarterItemId() != null) {
             Long quarterItemCount = insOrderMapper.selectCount(Wrappers.<InsOrder>lambdaQuery()
@@ -160,7 +159,6 @@
                 throw new ErrorException("璇ユ娊鏍疯鍒掑凡琚粦瀹氳繃");
             }
         }
-
         insOrder.setState(0);
 
         LocalDate appointed = insOrder.getAppointed();
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/RawMaterialOrderServiceImpl.java b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/RawMaterialOrderServiceImpl.java
index 9bce1e1..43fcea6 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/RawMaterialOrderServiceImpl.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/RawMaterialOrderServiceImpl.java
@@ -57,6 +57,7 @@
 import java.time.format.DateTimeFormatter;
 import java.util.*;
 import java.util.concurrent.atomic.AtomicInteger;
+import java.util.stream.Collectors;
 
 /**
  * @Author zhuo
@@ -90,11 +91,26 @@
             throw new ErrorException("闆朵欢鍙蜂负" + partNo + "鐨勫師鏉愭枡娌℃湁瀵瑰簲鐨勬爣鍑嗗簱閰嶇疆");
         }
         RawMaterialStandardTreeDto rawMaterialStandardTreeDto = new RawMaterialStandardTreeDto();
+        Set<String> sampleTypeValues = new HashSet<>();
         for (FactoryDto factoryDto : factoryDtos) {
             for (LaboratoryDto laboratoryDto : factoryDto.getChildren()) {
                 for (SampleTypeDto sampleTypeDto : laboratoryDto.getChildren()) {
                     if (sampleTypeDto.getChildren().size() == 0) {
-                        sampleTypeDto.setChildren(standardTreeMapper.getStandardTree3(sampleTypeDto.getValue()));
+                        sampleTypeValues.add(sampleTypeDto.getValue());
+                    }
+                }
+            }
+        }
+        // 鎵归噺鏌ヨ鎵�鏈� sampleTypeDto 鐨勬暟鎹�
+        List<SampleDto> standardList = standardTreeMapper.getStandardTree3Batch(sampleTypeValues);
+        Map<String, List<SampleDto>> standardTreeMap = standardList.stream().collect(Collectors.groupingBy(SampleDto::getValue));
+
+        for (FactoryDto factoryDto : factoryDtos) {
+            for (LaboratoryDto laboratoryDto : factoryDto.getChildren()) {
+                for (SampleTypeDto sampleTypeDto : laboratoryDto.getChildren()) {
+                    List<SampleDto> standardTreeList = standardTreeMap.get(sampleTypeDto.getValue());
+                    if (sampleTypeDto.getChildren().size() == 0) {
+                        sampleTypeDto.getChildren().addAll(standardTreeList);
                     }
                     // 鍒ゆ柇缁戝畾鐨勬槸鍚︽槸褰撳墠闆朵欢鍙�
                     if (sampleTypeDto.getPartNo() != null && sampleTypeDto.getPartNo().equals(partNo)) {
@@ -491,6 +507,8 @@
     }
 
 
+
+
     /**
      * 閾滃崟涓濅笅鍗曞厤妫�
      * @param list
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/UserController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/UserController.java
index 8a25b60..c5fb7e2 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/UserController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/UserController.java
@@ -25,11 +25,27 @@
     @Resource
     private UserService userService;
 
+    /**
+     * type : 1: 鑾峰彇妫�娴嬩汉鍛樹俊鎭�
+     * @param user
+     * @param type
+     * @return
+     */
     @ApiOperation(value = "鏍规嵁鏉′欢鑾峰彇鐢ㄦ埛鍒楄〃")
     @GetMapping("/selectUserCondition")
     public Result selectUserCondition(User user, String type){
         return Result.success(userService.selectUserCondition(user, type));
     }
 
+    /**
+     * 鑾峰彇褰撳墠鐧诲綍鐨勫鎴蜂俊鎭�
+     * @return
+     */
+    @GetMapping("/getUserNow")
+    @ApiOperation(value = "鑾峰彇褰撳墠鐧诲綍鐨勫鎴蜂俊鎭�")
+    public Result<?> getUserNow(){
+        return Result.success(userService.getUserNow());
+    }
+
 }
 
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/handler/MybatisHandler.java b/ruoyi-common/src/main/java/com/ruoyi/common/handler/MybatisHandler.java
index 3f0d883..f9a5932 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/handler/MybatisHandler.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/handler/MybatisHandler.java
@@ -18,7 +18,6 @@
             userId = SecurityUtils.getUserId().intValue();
         } catch (Exception ignored) {
         }
-        System.out.println("鎵ц鎻掑叆濉厖...");
         this.strictInsertFill(metaObject, "createTime", LocalDateTime.class, LocalDateTime.now());
         this.strictInsertFill(metaObject, "updateTime",  LocalDateTime.class, LocalDateTime.now());
         this.strictInsertFill(metaObject, "createUser", Integer.class, userId);
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/UserMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/UserMapper.java
index 5ab7b77..f0dc2b3 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/UserMapper.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/UserMapper.java
@@ -37,5 +37,12 @@
      * @return
      */
     List<Map<String, String>> selectNameAnddepartment(@Param("participant") String participant);
+
+    /**
+     * 鑾峰彇褰撳墠鐧诲綍鐨勫鎴蜂俊鎭�
+     * @param userId
+     * @return
+     */
+    User getUserNow(@Param("userId") int userId);
 }
 
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/UserService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/UserService.java
index 615f700..9c0a6d3 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/UserService.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/UserService.java
@@ -21,5 +21,11 @@
      * @return
      */
     List<User> selectUserCondition(User user, String type);
+
+    /**
+     * 鑾峰彇褰撳墠鐧诲綍鐨勫鎴蜂俊鎭�
+     * @return
+     */
+    User getUserNow();
 }
 
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserServiceImpl.java
index 7251c0c..3241365 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserServiceImpl.java
@@ -3,6 +3,7 @@
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.core.domain.entity.User;
 import com.ruoyi.common.utils.QueryWrappers;
+import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.system.mapper.UserMapper;
 import com.ruoyi.system.service.UserService;
 import org.springframework.stereotype.Service;
@@ -28,5 +29,14 @@
     public List<User> selectUserCondition(User user, String type) {
         return baseMapper.selectUserCondition(QueryWrappers.queryWrappers(user), type);
     }
+
+    /**
+     * 鑾峰彇褰撳墠鐧诲綍鐨勫鎴蜂俊鎭�
+     * @return
+     */
+    @Override
+    public User getUserNow() {
+        return baseMapper.getUserNow(SecurityUtils.getUserId().intValue());
+    }
 }
 
diff --git a/ruoyi-system/src/main/resources/mapper/system/UserMapper.xml b/ruoyi-system/src/main/resources/mapper/system/UserMapper.xml
index 24a4f85..6487371 100644
--- a/ruoyi-system/src/main/resources/mapper/system/UserMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/UserMapper.xml
@@ -47,4 +47,17 @@
                  left join department_lims dl on find_in_set(dl.id, u.depart_lims_id) and dl.id != 1
         where find_in_set(u.id, #{participant})
     </select>
+
+    <!-- 鑾峰彇褰撳墠鐧诲綍鐢ㄦ埛淇℃伅 -->
+    <select id="getUserNow" resultType="com.ruoyi.common.core.domain.entity.User">
+        select u.id,
+               c.company,
+               u.name,
+               c.code,
+               u.phone,
+               c.id departId
+        from user u
+                 left join custom c on u.company = c.id
+        where u.id = #{userId}
+    </select>
 </mapper>

--
Gitblit v1.9.3