From af97e376db85a53b41c9fe069bd2948b59387e49 Mon Sep 17 00:00:00 2001
From: xyc <jc_xiong@hotmail.com>
Date: 星期二, 05 十一月 2024 16:28:38 +0800
Subject: [PATCH] 优化工况管理右侧树形结构显示的后端处理速度

---
 modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/dao/OperatConditModelDao.java         |    3 +--
 modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/OperatConditModelService.java |    8 ++++++--
 modules/mainPart/src/main/resources/mapper/taskReliability/OperatConditModelDao.xml                               |   18 +++---------------
 3 files changed, 10 insertions(+), 19 deletions(-)

diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/dao/OperatConditModelDao.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/dao/OperatConditModelDao.java
index 75a0b8c..a4f46fc 100644
--- a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/dao/OperatConditModelDao.java
+++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/dao/OperatConditModelDao.java
@@ -4,7 +4,6 @@
 import com.zt.life.modules.mainPart.taskReliability.model.ModelNodes;
 import com.zt.life.modules.mainPart.taskReliability.model.ModelRbd;
 import com.zt.life.modules.mainPart.taskReliability.model.OperatConditModel;
-import org.apache.ibatis.annotations.MapKey;
 import org.apache.ibatis.annotations.Mapper;
 
 
@@ -23,7 +22,7 @@
 
     List<OperatConditModel> getList(Map<String, Object> params);
 
-    List<ModelRbd> getModelList(Long productId);
+    List<ModelRbd> getModelList(Map<String, Object> productId);
 
     List<ModelNodes> getModelNodes(Long shipId);
 
diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/OperatConditModelService.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/OperatConditModelService.java
index 1ac7413..3fcb932 100644
--- a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/OperatConditModelService.java
+++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/OperatConditModelService.java
@@ -15,6 +15,7 @@
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 
 /**
@@ -34,9 +35,12 @@
      */
     public List<OperatConditModel> page(QueryFilter queryFilter) {
         List<OperatConditModel> list = baseDao.getList(queryFilter.getQueryParams());
+        List<ModelRbd> modelList = baseDao.getModelList(queryFilter.getQueryParams());
         for (OperatConditModel conditModel : list) {
-            List<ModelRbd> modelList = baseDao.getModelList(conditModel.getProductId());
-            conditModel.setModelList(modelList);
+            //List<ModelRbd> modelList = baseDao.getModelList(conditModel.getProductId());
+            List<ModelRbd> myList = modelList.stream().filter(item ->
+                    item.getProductId().equals(conditModel.getProductId())).collect(Collectors.toList());
+            conditModel.setModelList(myList);
         }
         return TreeUtils2.build(list);
     }
diff --git a/modules/mainPart/src/main/resources/mapper/taskReliability/OperatConditModelDao.xml b/modules/mainPart/src/main/resources/mapper/taskReliability/OperatConditModelDao.xml
index 84acf4f..ebfe0a8 100644
--- a/modules/mainPart/src/main/resources/mapper/taskReliability/OperatConditModelDao.xml
+++ b/modules/mainPart/src/main/resources/mapper/taskReliability/OperatConditModelDao.xml
@@ -23,20 +23,8 @@
                            ON b.product_id = a.id
                                AND b.operat_condit_id = ${operatConditId}
                  LEFT JOIN model_rbd c ON c.id = b.model_id
-        WHERE a.id in (
-            SELECT DATA.id
-            FROM (
-                     SELECT @ids as ids,
-                            (SELECT @ids := GROUP_CONCAT(id)
-                             FROM product_model
-                             WHERE FIND_IN_SET(pid, @ids)
-                            )    as cids
-                     FROM product_model
-                     WHERE @ids IS NOT NULL AND @ids := ${productId}
-                 ) id,
-                 product_model DATA
-            WHERE FIND_IN_SET(DATA.id, ID.ids)
-        )
+          Where
+              a.ship_id = ${productId}
           and a.product_type in (4, 3, 2, 10)
           AND a.is_delete = 0
         ORDER BY a.product_type, a.sort
@@ -44,7 +32,7 @@
     <select id="getModelList" resultType="com.zt.life.modules.mainPart.taskReliability.model.ModelRbd">
         select *
         from model_rbd
-        where product_id = ${productId}
+        where ship_id = ${productId}
           and is_delete = 0
     </select>
     <select id="getModelNodes" resultType="com.zt.life.modules.mainPart.taskReliability.model.ModelNodes">

--
Gitblit v1.9.1