From 89fd0b6ff97e90220376cec824eaf8eabb9d0a3e Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Tue, 04 Aug 2026 08:18:45 +0800
Subject: [PATCH] refactor(GdClueEventService): 优化线索事件查询逻辑

---
 drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdClueEventMapper.xml |   36 +++++++++++++++++++++++++++++-------
 1 files changed, 29 insertions(+), 7 deletions(-)

diff --git a/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdClueEventMapper.xml b/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdClueEventMapper.xml
index 06252aa..79fa9b5 100644
--- a/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdClueEventMapper.xml
+++ b/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdClueEventMapper.xml
@@ -63,12 +63,22 @@
         <result column="shoot_time" property="shootTime"/>
         <result column="dispose_user_name" property="disposeUserName"/>
         <result column="dispose_dept_name" property="disposeDeptName"/>
+        <result column="result_id" property="resultId"/>
+        <result column="work_order_id" property="workOrderId"/>
+        <result column="dispose_user" property="disposeUser"/>
+        <result column="dispose_dept" property="disposeDept"/>
+        <result column="longitude" property="longitude"/>
+        <result column="latitude" property="latitude"/>
+        <result column="event_status" property="eventStatus"/>
+        <result column="area_code" property="areaCode"/>
+        <result column="event_num" property="eventNum"/>
+        <result column="attach_url" property="attachUrl"/>
     </resultMap>
 
     <resultMap id="gdClueEventCountVoResultMap" type="org.sxkj.gd.workorder.vo.GdClueEventCountVO">
         <result column="total_count" property="totalCount"/>
         <result column="my_count" property="myCount"/>
-        <result column="returned_count" property="returnedCount"/>
+        <result column="disposing_count" property="disposingCount"/>
         <result column="disposed_count" property="disposedCount"/>
         <result column="completed_count" property="completedCount"/>
     </resultMap>
@@ -109,7 +119,17 @@
             ce.create_time as create_time,
             tr.shoot_time as shoot_time,
             COALESCE(bu.real_name, bu.name) as dispose_user_name,
-            bd.dept_name as dispose_dept_name
+            bd.dept_name as dispose_dept_name,
+            ce.result_id,
+            ce.work_order_id,
+            ce.dispose_user,
+            ce.dispose_dept,
+            ce.longitude,
+            ce.latitude,
+            ce.event_status,
+            ce.area_code,
+            ce.event_num,
+            ce.attach_url
         from ja_gd_clue_event ce
         left join ja_gd_task_result tr on tr.id::VARCHAR = ce.result_id::VARCHAR and tr.is_deleted = 0
         left join blade_user bu on bu.id::VARCHAR = ce.dispose_user::VARCHAR and bu.is_deleted = 0
@@ -125,16 +145,17 @@
             </foreach>
         </if>
         <if test="keyword != null and keyword != ''">
-            and ce.event_num::VARCHAR like concat('%', #{keyword}, '%')
+            and (ce.event_num::VARCHAR like concat('%', #{keyword}, '%')
+                 or ce.event_name::VARCHAR like like concat('%', #{keyword}, '%'))
         </if>
         <if test="onlyMine != null and onlyMine == 1">
             and ce.dispose_user = #{userId}
         </if>
         <if test="startTime != null and startTime != ''">
-            and tr.shoot_time &gt;= #{startTime}
+            and tr.shoot_time &gt;= #{startTime}::timestamp
         </if>
         <if test="endTime != null and endTime != ''">
-            and tr.shoot_time &lt;= #{endTime}
+            and tr.shoot_time &lt;= #{endTime}::timestamp
         </if>
         order by ce.create_time desc
     </select>
@@ -188,7 +209,7 @@
     <select id="selectGdClueEventCount" resultMap="gdClueEventCountVoResultMap">
         select count(1) as total_count,
         COALESCE(sum(case when ce.dispose_user = #{userId} then 1 else 0 end), 0) as my_count,
-        COALESCE(sum(case when ce.event_status = 2 then 1 else 0 end), 0) as returned_count,
+        COALESCE(sum(case when ce.event_status = 1 then 1 else 0 end), 0) as disposing_count,
         COALESCE(sum(case when ce.event_status = 3 then 1 else 0 end), 0) as disposed_count,
         COALESCE(sum(case when ce.event_status = 4 then 1 else 0 end), 0) as completed_count
         from ja_gd_clue_event ce
@@ -203,7 +224,8 @@
             </foreach>
         </if>
         <if test="keyword != null and keyword != ''">
-            and ce.event_num like concat('%', #{keyword}, '%')
+            and (ce.event_num like concat('%', #{keyword}, '%')
+                 or ce.event_name like concat('%', #{keyword}, '%'))
         </if>
     </select>
 

--
Gitblit v1.9.3