From 4e5d5dbb194f097a19ad8ed0ebb8b0d2247230f3 Mon Sep 17 00:00:00 2001
From: chenrui <1187576398@qq.com>
Date: 星期二, 08 四月 2025 15:35:28 +0800
Subject: [PATCH] 成品下单检验项查询修改

---
 basic-server/src/main/resources/mapper/StandardProductListMapper.xml                        |   19 +++++++++
 basic-server/src/main/java/com/ruoyi/basic/dto/InsSampleReceiveDto.java                     |    9 ++++
 basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListMapper.java            |    9 ++++
 basic-server/src/main/java/com/ruoyi/basic/dto/StandardProductListDto.java                  |    4 ++
 basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java |   46 +++++------------------
 5 files changed, 51 insertions(+), 36 deletions(-)

diff --git a/basic-server/src/main/java/com/ruoyi/basic/dto/InsSampleReceiveDto.java b/basic-server/src/main/java/com/ruoyi/basic/dto/InsSampleReceiveDto.java
index fbc2683..36e0d44 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/dto/InsSampleReceiveDto.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/dto/InsSampleReceiveDto.java
@@ -4,6 +4,8 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import java.util.List;
+
 /**
  * @Author zhuo
  * @Date 2024/10/29
@@ -32,4 +34,11 @@
     @ApiModelProperty("鏄惁鏄數缂嗛厤缃�")
     private String isCableTag;
 
+    @ApiModelProperty("瀹為獙瀹ゆ爣鍑咺Ds")
+    private List<Long> standardMethodListIds;
+
+    @ApiModelProperty("鏄惁鐢熸晥 1锛氭湁鏁� 0锛氭棤鏁�")
+    private Integer state;
+
+
 }
diff --git a/basic-server/src/main/java/com/ruoyi/basic/dto/StandardProductListDto.java b/basic-server/src/main/java/com/ruoyi/basic/dto/StandardProductListDto.java
index 43e1143..54b3144 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/dto/StandardProductListDto.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/dto/StandardProductListDto.java
@@ -10,6 +10,7 @@
 
 import java.io.Serializable;
 import java.time.LocalDateTime;
+import java.util.List;
 
 /**
  * 鏍囧噯鏍戜笅鐨勬楠岄」鐩�
@@ -20,4 +21,7 @@
 
     private String operationStatus;
 
+    @ApiModelProperty("瀹為獙瀹ゆ爣鍑咺Ds")
+    private List<Long> standardMethodListIds;
+
 }
diff --git a/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListMapper.java b/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListMapper.java
index 19eeb28..da288b2 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListMapper.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListMapper.java
@@ -3,6 +3,7 @@
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.basic.dto.StandardProductListDto;
 import com.ruoyi.basic.pojo.StandardProductList;
 import com.ruoyi.basic.pojo.StandardProductListUpdateRecord;
 import org.apache.ibatis.annotations.Param;
@@ -72,6 +73,14 @@
     void saveBatchProductLists(@Param("productLists") List<StandardProductList> productLists);
 
     void updateProductListCheckStatus(@Param("ids") List<Long> ids,@Param("checkStatus") String checkStatus);
+
+    /**
+     * 鏍囧噯鏍戜笅鐨勬楠岄」鐩煡璇�
+     *
+     * @param standardProductListDto
+     * @return
+     */
+    List<StandardProductList> standardProductListNoPage(@Param("standardProductListDto") StandardProductListDto standardProductListDto);
 }
 
 
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 d7b1df1..79e3f49 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
@@ -18,6 +18,7 @@
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.basic.service.StandardProductListService;
 import lombok.AllArgsConstructor;
+import org.aspectj.weaver.ast.Var;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -118,45 +119,18 @@
 
     @Override
     public List<StandardProductList> selectStandardProductList(InsSampleReceiveDto insSample) {
-        // 鏄惁娌℃湁浜у搧
-        boolean isNoSample = false;
-//        String[] models = insSample.getModel().split("-(?=[^-]*$)");//鎷嗗垎鏈�鍚庝竴涓��-銆�
         String model = insSample.getModel();
         String modelNum = insSample.getModelNum();
-        List<StandardProductList> list = standardProductListMapper.selectDetail(insSample.getStandardMethodListId(), 1, model, insSample.getIsCableTag());
-        if (list.size() == 0) {
-            if (Objects.equals(insSample.getFactory(), "") || insSample.getFactory() == null) {
-                return null;
-            }
-            String[] split = insSample.getFactory().split(" - ");
-            split[3] = split[3].replace("- ", "");
-            String tree = split[0] + " - " + split[1] + " - " + split[2] + " - " + split[3] + " - null";
-            list = standardProductListMapper.selectDetail2(insSample.getStandardMethodListId(), 1, tree, insSample.getIsCableTag());
-            if (list.size() == 0) {
-                String tree1 = split[0] + " - " + split[1] + " - " + split[2] + " - null - " + split[3];
-                list = standardProductListMapper.selectDetail2(insSample.getStandardMethodListId(), 1, tree1, insSample.getIsCableTag());
-
-                // 鍙湁瀵硅薄鐨勪竴灞�
-                if (list.size() == 0) {
-                    String tree2 = split[0] + " - " + split[1] + " - " + split[2] + " - null - null";
-                    list = standardProductListMapper.selectDetail2(insSample.getStandardMethodListId(), 1, tree2, insSample.getIsCableTag());
-                    // 鏍峰搧鐩存帴璧嬪�兼牱鍝佸垎绫�
-                    list.forEach(standardProductList -> standardProductList.setSample(standardProductList.getSampleType()));
-                    isNoSample = true;
-                }
-            }
+        // 鏌ヨ妫�鏌ラ」鐩�
+        StandardProductListDto standardProductListDto = new StandardProductListDto();
+        standardProductListDto.setTree(insSample.getFactory());
+        standardProductListDto.setStandardMethodListIds(insSample.getStandardMethodListIds());
+        standardProductListDto.setState(insSample.getState());
+        List<StandardProductList> list = new ArrayList<>();
+        if(CollectionUtils.isEmpty(standardProductListDto.getStandardMethodListIds())) {
+            return list;
         }
-        String[] split1 = insSample.getFactory().split(" - ");
-        if (!isNoSample) {
-            //鍒ゆ柇闀垮害
-            if (split1.length > 4) {
-                if (ObjectUtils.isNotEmpty(split1[3])) {
-                    list = list.stream().filter(list1 -> Objects.nonNull(list1.getSample()) && Objects.equals(list1.getSample(), split1[3])).collect(Collectors.toList());
-                } else if (split1[3].equals("")) {
-                    list = list.stream().filter(list1 -> Objects.nonNull(list1.getSampleType()) && Objects.equals(list1.getSampleType(), split1[2])).collect(Collectors.toList());
-                }
-            }
-        }
+        list = standardProductListMapper.standardProductListNoPage(standardProductListDto);
         list = list.stream().filter(a -> {
                     try {
                         if (a.getSection() != null && !Objects.equals(a.getSection(), "")) {
diff --git a/basic-server/src/main/resources/mapper/StandardProductListMapper.xml b/basic-server/src/main/resources/mapper/StandardProductListMapper.xml
index cac1dcf..a85d156 100644
--- a/basic-server/src/main/resources/mapper/StandardProductListMapper.xml
+++ b/basic-server/src/main/resources/mapper/StandardProductListMapper.xml
@@ -163,4 +163,23 @@
             #{item}
         </foreach>
     </update>
+
+    <select id="standardProductListNoPage" resultType="com.ruoyi.basic.pojo.StandardProductList">
+        SELECT * FROM standard_product_list
+        <where>
+            <if test="standardProductListDto.standardMethodListIds != null">
+                AND standard_method_list_id IN
+                 <foreach collection="standardProductListDto.standardMethodListIds" open="(" close=")" separator="," item="item">
+                     #{item}
+                 </foreach>
+            </if>
+            <if test="standardProductListDto.tree != null and standardProductListDto.tree != '' ">
+                AND tree = #{standardProductListDto.tree}
+            </if>
+            <if test="standardProductListDto.state != null ">
+                AND state = #{standardProductListDto.state}
+            </if>
+        </where>
+        ORDER BY standard_method_list_id ASC
+    </select>
 </mapper>

--
Gitblit v1.9.3