From 08d4bb2bf4bfadc9ab5fcf6b0a2bfb543d22b2a0 Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Thu, 05 Feb 2026 10:13:10 +0800
Subject: [PATCH] 工单优化

---
 drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdClueEventMapper.xml |   37 +++++++++++++++++++++++++++++++------
 1 files changed, 31 insertions(+), 6 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 07badd0..ac5e1c0 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
@@ -13,6 +13,7 @@
         <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="create_user" property="createUser"/>
         <result column="create_dept" property="createDept"/>
         <result column="create_time" property="createTime"/>
@@ -34,7 +35,7 @@
         <result column="latitude" property="latitude"/>
         <result column="event_status" property="eventStatus"/>
         <result column="area_code" property="areaCode"/>
-        <result column="event_code" property="eventCode"/>
+        <result column="event_num" property="eventNum"/>
         <result column="event_location" property="eventLocation"/>
         <result column="shoot_time" property="shootTime"/>
         <result column="event_image_url" property="eventImageUrl"/>
@@ -56,6 +57,16 @@
         <result column="create_time" property="createTime"/>
     </resultMap>
 
+    <resultMap id="gdClueEventCountVoResultMap" type="org.sxkj.gd.workorder.vo.GdClueEventCountVO">
+        <result column="total_count" property="totalCount"/>
+        <result column="my_count" property="myCount"/>
+    </resultMap>
+
+    <sql id="gdClueEventDeptWhere">
+        where ce.is_deleted = 0
+        and ce.dispose_dept = #{deptId}
+    </sql>
+
     <resultMap id="gdClueEventExcelResultMap" type="org.sxkj.gd.workorder.excel.GdClueEventExcel">
         <result column="result_id" property="resultId"/>
         <result column="work_order_id" property="workOrderId"/>
@@ -65,6 +76,7 @@
         <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="is_deleted" property="isDeleted"/>
     </resultMap>
 
@@ -87,8 +99,11 @@
         ce.create_time as create_time
         from ja_gd_clue_event ce
         left join ja_gd_task_result tr on tr.id = ce.result_id and tr.is_deleted = 0
-        where ce.is_deleted = 0
-        and ce.dispose_dept = #{deptId}
+        <include refid="gdClueEventDeptWhere"/>
+        and ce.event_status in (1, 3)
+        <if test="keyword != null and keyword != ''">
+            and ce.event_num like concat('%', #{keyword}, '%')
+        </if>
         <if test="onlyMine != null and onlyMine == 1">
             and ce.dispose_user = #{userId}
         </if>
@@ -102,7 +117,7 @@
         cd.dept_name as distribute_dept_name,
         ce.create_time as distribute_time,
         concat(ce.longitude, ',', ce.latitude) as event_location,
-        tr.result_code as event_code,
+        ce.event_num as event_num,
         tr.shoot_time as shoot_time,
         tr.result_url as event_image_url
         from ja_gd_clue_event ce
@@ -111,11 +126,21 @@
         left join blade_user cu on cu.id = ce.create_user and cu.is_deleted = 0
         left join blade_dept cd on cd.id = ce.create_dept and cd.is_deleted = 0
         left join ja_gd_task_result tr on tr.id = ce.result_id and tr.is_deleted = 0
-        where ce.is_deleted = 0
-        and ce.dispose_dept = #{deptId}
+        <include refid="gdClueEventDeptWhere"/>
         and ce.id = #{id}
     </select>
 
+    <select id="selectGdClueEventCount" resultMap="gdClueEventCountVoResultMap">
+        select count(1) as total_count,
+        ifnull(sum(case when ce.dispose_user = #{userId} then 1 else 0 end), 0) as my_count
+        from ja_gd_clue_event ce
+        <include refid="gdClueEventDeptWhere"/>
+        and ce.event_status in (1, 3)
+        <if test="keyword != null and keyword != ''">
+            and ce.event_num like concat('%', #{keyword}, '%')
+        </if>
+    </select>
+
 
     <select id="exportGdClueEvent" resultMap="gdClueEventExcelResultMap">
         SELECT * FROM ja_gd_clue_event ${ew.customSqlSegment}

--
Gitblit v1.9.3