<?xml version="1.0" encoding="UTF-8" ?>
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<mapper namespace="com.ard.work.mapper.ArdMediaMapper">
|
|
<!-- 结果映射 -->
|
<resultMap id="ArdMediaResult" type="com.ard.work.domain.entity.ArdMedia">
|
<result property="id" column="id"/>
|
<result property="taskId" column="task_id"/>
|
<result property="mediaType" column="media_type"/>
|
<result property="fileSize" column="file_size"/>
|
<result property="fileMd5" column="file_md5"/>
|
<result property="mediaUrl" column="media_url"/>
|
<result property="sourceUrl" column="source_url"/>
|
<result property="photoId" column="photo_id"/>
|
<result property="longitude" column="longitude"/>
|
<result property="latitude" column="latitude"/>
|
<result property="height" column="height"/>
|
<result property="thumbnailUrl" column="thumbnail_url"/>
|
<result property="captureTime" column="capture_time"/>
|
<result property="createTime" column="create_time"/>
|
</resultMap>
|
|
|
<!-- 查询媒体列表:根据条件动态生成SQL -->
|
<select id="selectArdMedia" resultMap="ArdMediaResult">
|
SELECT
|
id, task_id, media_type, file_size, file_md5, media_url, source_url,thumbnail_url,
|
photo_id, longitude, latitude, height, capture_time, create_time
|
FROM ard_media
|
<where>
|
<if test="taskId != null">AND task_id = #{taskId}</if>
|
<if test="mediaType != null">AND media_type = #{mediaType}</if>
|
<if test="fileSize != null">AND file_size = #{fileSize}</if>
|
<if test="fileMd5 != null">AND file_md5 = #{fileMd5}</if>
|
<if test="mediaUrl != null">AND media_url = #{mediaUrl}</if>
|
<if test="sourceUrl != null">AND source_url = #{sourceUrl}</if>
|
<if test="thumbnailUrl != null">AND thumbnail_url = #{thumbnailUrl}</if>
|
<if test="photoId != null">AND photo_id = #{photoId}</if>
|
<if test="longitude != null">AND longitude = #{longitude}</if>
|
<if test="latitude != null">AND latitude = #{latitude}</if>
|
<if test="height != null">AND height = #{height}</if>
|
<if test="captureTime != null">AND capture_time = #{captureTime}</if>
|
<if test="createTime != null">AND create_time = #{createTime}</if>
|
</where>
|
ORDER BY create_time DESC
|
</select>
|
|
|
<!-- 根据任务ID查询媒体 -->
|
<select id="selectArdMediaByTaskId" resultMap="ArdMediaResult">
|
SELECT id,
|
task_id,
|
media_type,
|
file_size,
|
file_md5,
|
media_url,
|
source_url,
|
thumbnail_url,
|
photo_id,
|
longitude,
|
latitude,
|
height,
|
capture_time,
|
create_time
|
FROM ard_media
|
WHERE task_id = #{taskId}
|
</select>
|
<!-- 根据任务ID和媒体类型查询媒体 -->
|
<select id="selectArdMediaByTaskIdAndType" resultMap="ArdMediaResult">
|
SELECT id,
|
task_id,
|
media_type,
|
file_size,
|
file_md5,
|
media_url,
|
source_url,
|
thumbnail_url,
|
photo_id,
|
longitude,
|
latitude,
|
height,
|
capture_time,
|
create_time
|
FROM ard_media
|
WHERE task_id = #{taskId}
|
and media_type = #{mediaType}
|
</select>
|
<!-- 插入媒体记录 -->
|
<insert id="insertArdMedia" parameterType="com.ard.work.domain.entity.ArdMedia">
|
INSERT INTO ard_media
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
<if test="id != null">id,</if>
|
<if test="taskId != null">task_id,</if>
|
<if test="mediaType != null">media_type,</if>
|
<if test="fileSize != null">file_size,</if>
|
<if test="fileMd5 != null">file_md5,</if>
|
<if test="mediaUrl != null">media_url,</if>
|
<if test="sourceUrl != null">source_url,</if>
|
<if test="thumbnailUrl != null">thumbnail_url,</if>
|
<if test="photoId != null">photo_id,</if>
|
<if test="longitude != null">longitude,</if>
|
<if test="latitude != null">latitude,</if>
|
<if test="height != null">height,</if>
|
<if test="captureTime != null">capture_time,</if>
|
<if test="createTime != null">create_time,</if>
|
</trim>
|
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
<if test="id != null">#{id},</if>
|
<if test="taskId != null">#{taskId},</if>
|
<if test="mediaType != null">#{mediaType},</if>
|
<if test="fileSize != null">#{fileSize},</if>
|
<if test="fileMd5 != null">#{fileMd5},</if>
|
<if test="mediaUrl != null">#{mediaUrl},</if>
|
<if test="sourceUrl != null">#{sourceUrl},</if>
|
<if test="thumbnailUrl != null">#{thumbnailUrl},</if>
|
<if test="photoId != null">#{photoId},</if>
|
<if test="longitude != null">#{longitude},</if>
|
<if test="latitude != null">#{latitude},</if>
|
<if test="height != null">#{height},</if>
|
<if test="captureTime != null">#{captureTime},</if>
|
<if test="createTime != null">#{createTime},</if>
|
</trim>
|
</insert>
|
|
<!-- 批量插入媒体记录 -->
|
<insert id="insertArdMediaList" parameterType="java.util.List">
|
INSERT INTO ard_media(
|
task_id,
|
media_type,
|
file_size,
|
file_md5,
|
media_url,
|
source_url,
|
thumbnail_url,
|
photo_id,
|
longitude,
|
latitude,
|
height,
|
capture_time,
|
create_time
|
)
|
VALUES
|
<foreach collection="list" item="item" separator=",">
|
(
|
#{item.taskId},
|
#{item.mediaType},
|
#{item.fileSize},
|
#{item.fileMd5},
|
#{item.mediaUrl},
|
#{item.sourceUrl},
|
#{item.thumbnailUrl},
|
#{item.photoId},
|
#{item.longitude},
|
#{item.latitude},
|
#{item.height},
|
#{item.captureTime},
|
#{item.createTime}
|
)
|
</foreach>
|
</insert>
|
|
|
<!-- 更新媒体记录 -->
|
<update id="updateArdMedia" parameterType="com.ard.work.domain.entity.ArdMedia">
|
UPDATE ard_media
|
<set>
|
<if test="mediaType != null">media_type = #{mediaType},</if>
|
<if test="fileSize != null">file_size = #{fileSize},</if>
|
<if test="fileMd5 != null">file_md5 = #{fileMd5},</if>
|
<if test="mediaUrl != null">media_url = #{mediaUrl},</if>
|
<if test="createTime != null">create_time = #{createTime},</if>
|
</set>
|
WHERE id = #{id}
|
</update>
|
|
<!-- 删除媒体记录 -->
|
<delete id="deleteArdMediaById" parameterType="Integer">
|
DELETE
|
FROM ard_media
|
WHERE id = #{id}
|
</delete>
|
|
<!-- 批量删除媒体记录 -->
|
<delete id="deleteArdMediaByIds" parameterType="java.util.List">
|
DELETE FROM ard_media WHERE id IN
|
<foreach item="id" collection="list" open="(" separator="," close=")">
|
#{id}
|
</foreach>
|
</delete>
|
|
<delete id="deleteArdMediaByTaskId" parameterType="java.lang.Integer">
|
DELETE
|
FROM ard_media
|
WHERE task_id = #{taskId}
|
</delete>
|
|
</mapper>
|