From 48ba72a6a0492254a5c4ef1c5ec96a38440a765b Mon Sep 17 00:00:00 2001
From: zhuo <2089219845@qq.com>
Date: 星期三, 19 二月 2025 17:44:10 +0800
Subject: [PATCH] 订单下单调整

---
 basic-server/src/main/resources/mapper/StandardTreeMapper.xml                                |   19 ++-
 inspect-server/src/main/java/com/ruoyi/inspect/service/InsOrderService.java                  |    2 
 ruoyi-common/src/main/java/com/ruoyi/common/handler/MybatisHandler.java                      |    1 
 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 
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/UserController.java                |   10 ++
 inspect-server/src/main/java/com/ruoyi/inspect/controller/InsOrderController.java            |   25 ----
 inspect-server/src/main/java/com/ruoyi/inspect/controller/RawMaterialOrderController.java    |   31 +++--
 basic-server/src/main/java/com/ruoyi/basic/mapper/StandardTreeMapper.java                    |    7 +
 inspect-server/src/main/java/com/ruoyi/inspect/dto/InsPlaceOrderDto.java                     |   27 +++++
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserServiceImpl.java                |   10 ++
 ruoyi-system/src/main/resources/mapper/system/UserMapper.xml                                 |   13 ++
 inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderServiceImpl.java         |    3 
 ruoyi-system/src/main/java/com/ruoyi/system/service/UserService.java                         |    6 +
 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 ++++---
 inspect-server/pom.xml                                                                       |    3 
 basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java  |   37 ++----
 19 files changed, 169 insertions(+), 95 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 9781406..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>
@@ -62,7 +61,7 @@
             <version>5.0.6</version>
         </dependency>
 
-        
+
     </dependencies>
 
     <properties>
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/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 aeba583..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
@@ -149,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()
@@ -159,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 802bd22..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
@@ -37,5 +37,15 @@
         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 6bfa898..51b3929 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
@@ -22,5 +22,12 @@
      * @return
      */
     List<User> selectUserCondition(@Param("ew") QueryWrapper<User> ew, @Param("type") String type);
+
+    /**
+     * 鑾峰彇褰撳墠鐧诲綍鐨勫鎴蜂俊鎭�
+     * @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 f927978..6634947 100644
--- a/ruoyi-system/src/main/resources/mapper/system/UserMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/UserMapper.xml
@@ -29,4 +29,17 @@
             ${ew.customSqlSegment}
         </if>
     </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