From 618ece4b9b22c2b9a4e85b46f0b3ec99c53e200b Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Thu, 02 Apr 2026 16:38:55 +0800
Subject: [PATCH] opt: sql改造其他模块改造12
---
drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdTaskResultMapper.xml | 24 +++++++++++++++---------
1 files changed, 15 insertions(+), 9 deletions(-)
diff --git a/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdTaskResultMapper.xml b/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdTaskResultMapper.xml
index 36fe70d..48012c5 100644
--- a/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdTaskResultMapper.xml
+++ b/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdTaskResultMapper.xml
@@ -44,15 +44,21 @@
</select>
<select id="selectGdTaskResultListByPatrolTaskId" resultMap="gdTaskResultResultMap">
- select tr.*,
- IFNULL(bu.real_name, bu.name) as distribute_user_name,
- bd.dept_name as distribute_dept_name
- from ja_gd_task_result tr
- left join ja_gd_clue_event ce on ce.result_id = tr.id and ce.is_deleted = 0
- left join blade_user bu on bu.id = ce.create_user and bu.is_deleted = 0
- left join blade_dept bd on bd.id = ce.create_dept and bd.is_deleted = 0
- where tr.is_deleted = 0
- and tr.patrol_task_id = #{patrolTaskId}
+ SELECT tr.*,
+ COALESCE(bu.real_name, bu.name) as distribute_user_name,
+ bd.dept_name as distribute_dept_name
+ FROM ja_gd_task_result tr
+ LEFT JOIN (SELECT *
+ FROM ja_gd_clue_event ce1
+ WHERE ce1.is_deleted = 0
+ AND ce1.create_time = (SELECT MAX(create_time)
+ FROM ja_gd_clue_event ce2
+ WHERE ce2.result_id::VARCHAR = ce1.result_id::VARCHAR
+ AND ce2.is_deleted = 0)) ce ON ce.result_id::VARCHAR = tr.id::VARCHAR
+ LEFT JOIN blade_user bu ON bu.id::VARCHAR = ce.create_user::VARCHAR AND bu.is_deleted = 0
+ LEFT JOIN blade_dept bd ON bd.id::VARCHAR = ce.create_dept::VARCHAR AND bd.is_deleted = 0
+ WHERE tr.is_deleted = 0
+ AND tr.patrol_task_id = #{patrolTaskId}
</select>
--
Gitblit v1.9.3