From 85a54f184e8b0ac52a475f8e32a7df601da0ec54 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期一, 19 一月 2026 09:53:16 +0800
Subject: [PATCH] 【市一】/smartor/serviceSubtask/queryTaskByCondition 查询优化
---
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java | 10 +++++-----
smartor/src/main/resources/mapper/smartor/ServiceSubtaskPreachformMapper.xml | 11 +++++++++++
smartor/src/main/java/com/smartor/mapper/ServiceSubtaskPreachformMapper.java | 11 +++++++++++
3 files changed, 27 insertions(+), 5 deletions(-)
diff --git a/smartor/src/main/java/com/smartor/mapper/ServiceSubtaskPreachformMapper.java b/smartor/src/main/java/com/smartor/mapper/ServiceSubtaskPreachformMapper.java
index b136f2b..b46a06d 100644
--- a/smartor/src/main/java/com/smartor/mapper/ServiceSubtaskPreachformMapper.java
+++ b/smartor/src/main/java/com/smartor/mapper/ServiceSubtaskPreachformMapper.java
@@ -1,6 +1,8 @@
package com.smartor.mapper;
import java.util.List;
+
+import com.smartor.domain.ServiceSubtask;
import org.apache.ibatis.annotations.Mapper;
import com.smartor.domain.ServiceSubtaskPreachform;
@@ -70,4 +72,13 @@
* @return 缁撴灉
*/
public int deleteServiceSubtaskPreachformByIds(Long[] ids);
+
+ /**
+ * 鏍规嵁taskid鏌ヨ鍒楄〃
+ *
+ * @param subtask
+ * @return 闆嗗悎
+ */
+ public List<ServiceSubtaskPreachform> selectBySubtask(ServiceSubtask subtask);
+
}
diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
index 1559e6d..37b6c64 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -231,7 +231,8 @@
} catch (JsonProcessingException e) {
e.printStackTrace();
}
-
+ List<ServiceSubtaskPreachform> serviceSubtaskPreachformLists =
+ serviceSubtaskPreachformMapper.selectBySubtask(serviceSubtask);
for (ServiceSubtask serviceSubtask1 : list) {
PatTaskRelevance patTaskRelevance = new PatTaskRelevance();
if (!serviceSubtask1.getHospType().equals("2")) {
@@ -288,10 +289,9 @@
}
//鑾峰彇璇ユ偅鑰呮墍鏈夌殑鎵ц鐘舵��
- ServiceSubtaskPreachform serviceSubtaskPreachform = new ServiceSubtaskPreachform();
- serviceSubtaskPreachform.setTaskid(serviceTask.getTaskid());
- serviceSubtaskPreachform.setSubid(serviceSubtask1.getId());
- List<ServiceSubtaskPreachform> serviceSubtaskPreachformList = serviceSubtaskPreachformMapper.selectServiceSubtaskPreachformList(serviceSubtaskPreachform);
+ List<ServiceSubtaskPreachform> serviceSubtaskPreachformList =
+ serviceSubtaskPreachformLists.stream().filter((item -> item.getSubid().equals(serviceSubtask1.getId())
+ && item.getTaskid().equals(serviceTask.getTaskid()))).collect(Collectors.toList());
List<Map<String, Object>> resultList = serviceSubtaskPreachformList.stream().map(item -> {
Map<String, Object> map = new HashMap<>();
map.put("sort", item.getSort());
diff --git a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskPreachformMapper.xml b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskPreachformMapper.xml
index 50e4d92..c5a44ee 100644
--- a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskPreachformMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskPreachformMapper.xml
@@ -274,5 +274,16 @@
</foreach>
</update>
+ <select id="selectBySubtask" parameterType="com.smartor.domain.ServiceSubtask" resultMap="ServiceSubtaskPreachformResult">
+ <include refid="selectServiceSubtaskPreachformVo"/>
+ WHERE del_flag = 0
+ <!-- 鍏朵粬鏉′欢 -->
+ <if test="taskid != null">
+ AND taskid = #{taskid}
+ </if>
+ <if test="orgid != null and orgid != ''">
+ AND orgid = #{orgid}
+ </if>
+ </select>
</mapper>
--
Gitblit v1.9.3