From 8f1f61e5cac940482f5b35cd4c61fba55a5fed23 Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Thu, 13 Aug 2026 08:35:25 +0800
Subject: [PATCH] feat(workorder): 添加缩略图URL字段支持
---
drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdTaskResultMapper.xml | 45 +++++++++++++++++++++++++++++++++++++++------
1 files changed, 39 insertions(+), 6 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 d97d41d..ea6b09e 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
@@ -8,6 +8,7 @@
<result column="patrol_task_id" property="patrolTaskId"/>
<result column="result_code" property="resultCode"/>
<result column="result_url" property="resultUrl"/>
+ <result column="thumbnail_url" property="thumbnailUrl"/>
<result column="shoot_time" property="shootTime"/>
<result column="photo_data" property="photoData"/>
<result column="longitude" property="longitude"/>
@@ -24,12 +25,15 @@
<result column="distribute_user_name" property="distributeUserName"/>
<result column="distribute_dept_name" property="distributeDeptName"/>
<result column="patrol_task_name" property="patrolTaskName"/>
+ <result column="attachment_type" property="attachmentType"/>
+ <result column="event_name" property="eventName"/>
</resultMap>
<resultMap id="gdTaskResultExcelResultMap" type="org.sxkj.gd.workorder.excel.GdTaskResultExcel">
<result column="patrol_task_id" property="patrolTaskId"/>
<result column="result_code" property="resultCode"/>
<result column="result_url" property="resultUrl"/>
+ <result column="thumbnail_url" property="thumbnailUrl"/>
<result column="shoot_time" property="shootTime"/>
<result column="photo_data" property="photoData"/>
<result column="longitude" property="longitude"/>
@@ -74,6 +78,9 @@
<if test="gdTaskResult.createUser != null">
AND tr.create_user = #{gdTaskResult.createUser}
</if>
+ <if test="gdTaskResult.attachmentType != null">
+ AND tr.attachment_type = #{gdTaskResult.attachmentType}
+ </if>
ORDER BY tr.create_time DESC
</select>
@@ -81,7 +88,8 @@
SELECT
tr.*,
COALESCE ( bu.real_name, bu.NAME ) AS distribute_user_name,
- bd.dept_name AS distribute_dept_name
+ bd.dept_name AS distribute_dept_name,
+ ce.event_name
FROM
ja_gd_task_result tr
LEFT JOIN (
@@ -91,15 +99,21 @@
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 ce1.create_time = ( SELECT MAX( create_time ) FROM ja_gd_clue_event ce2 WHERE CAST(ce2.result_id AS VARCHAR) = CAST(ce1.result_id AS VARCHAR) AND ce2.is_deleted = 0 )
+ ) ce ON CAST(ce.result_id AS VARCHAR) = CAST(tr.id AS VARCHAR)
+ LEFT JOIN blade_user bu ON CAST(bu.id AS VARCHAR) = CAST(ce.create_user AS VARCHAR)
AND bu.is_deleted = 0
- LEFT JOIN blade_dept bd ON bd.id :: VARCHAR = ce.create_dept :: VARCHAR
+ LEFT JOIN blade_dept bd ON CAST(bd.id AS VARCHAR) = CAST(ce.create_dept AS VARCHAR)
AND bd.is_deleted = 0
WHERE
tr.is_deleted = 0
AND tr.patrol_task_id = #{patrolTaskId}
+ <if test="attachmentTypes != null and attachmentTypes.size() > 0">
+ AND tr.attachment_type IN
+ <foreach collection="attachmentTypes" item="type" open="(" separator="," close=")">
+ #{type}
+ </foreach>
+ </if>
</select>
@@ -113,8 +127,9 @@
SET patrol_task_id = #{patrolTaskId},
result_code = #{resultCode},
result_url = #{resultUrl},
+ thumbnail_url = #{thumbnailUrl},
shoot_time = #{shootTime},
- photo_data = #{photoData}::jsonb,
+ photo_data = CAST(#{photoData} AS JSONB),
longitude = #{longitude},
latitude = #{latitude},
distribute_status = #{distributeStatus},
@@ -126,4 +141,22 @@
WHERE id = #{id}
</update>
+ <!-- 批量插入成果信息 -->
+ <insert id="insertBatch" parameterType="java.util.List">
+ INSERT INTO ja_gd_task_result (
+ patrol_task_id, result_code, result_url, thumbnail_url, shoot_time,
+ photo_data, longitude, latitude, distribute_status, area_code,
+ create_user, create_dept, create_time, update_user, update_time,
+ status, is_deleted, attachment_type, geojson
+ ) VALUES
+ <foreach collection="list" item="item" separator=",">
+ (
+ #{item.patrolTaskId}, #{item.resultCode}, #{item.resultUrl}, #{item.thumbnailUrl}, #{item.shootTime},
+ CASE WHEN #{item.photoData} IS NULL THEN NULL ELSE CAST(#{item.photoData} AS JSONB) END, #{item.longitude}, #{item.latitude}, #{item.distributeStatus}, #{item.areaCode},
+ #{item.createUser}, #{item.createDept}, #{item.createTime}, #{item.updateUser}, #{item.updateTime},
+ #{item.status}, #{item.isDeleted}, #{item.attachmentType}, #{item.geojson}
+ )
+ </foreach>
+ </insert>
+
</mapper>
--
Gitblit v1.9.3