<?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="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,create_time
|
FROM ard_media
|
<where>
|
<!-- 动态查询条件:任务ID -->
|
<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>
|
|
<!-- 动态查询条件:文件MD5 -->
|
<if test="fileMd5 != null">AND file_md5 = #{fileMd5}</if>
|
|
<!-- 动态查询条件:媒体URL -->
|
<if test="mediaUrl != null">AND media_url = #{mediaUrl}</if>
|
|
<!-- 动态查询条件:时间戳 -->
|
<if test="createTime != null">AND create_time = #{createTime}</if>
|
</where>
|
</select>
|
|
<!-- 根据任务ID查询媒体 -->
|
<select id="selectArdMediaByTaskId" resultMap="ArdMediaResult">
|
SELECT id, task_id, media_type, file_size, file_md5, media_url, create_time
|
FROM ard_media
|
WHERE task_id = #{taskId}
|
</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="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="createTime != null">#{createTime},</if>
|
</trim>
|
</insert>
|
|
|
<!-- 批量插入媒体记录 -->
|
<insert id="insertArdMediaList" parameterType="java.util.List">
|
INSERT INTO ard_media
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
<if test="list != null and !list.isEmpty()">
|
<foreach item="item" collection="list" separator=",">
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
<if test="item.taskId != null">task_id,</if>
|
<if test="item.mediaType != null">media_type,</if>
|
<if test="item.fileSize != null">file_size,</if>
|
<if test="item.fileMd5 != null">file_md5,</if>
|
<if test="item.mediaUrl != null">media_url,</if>
|
<if test="item.sourceUrl != null">source_url,</if>
|
<if test="item.createTime != null">create_time,</if>
|
</trim>
|
</foreach>
|
</if>
|
</trim>
|
|
<trim prefix="values " suffix=")" suffixOverrides=",">
|
<foreach item="item" collection="list" separator=",">
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
<if test="item.taskId != null">#{item.taskId},</if>
|
<if test="item.mediaType != null">#{item.mediaType},</if>
|
<if test="item.fileSize != null">#{item.fileSize},</if>
|
<if test="item.fileMd5 != null">#{item.fileMd5},</if>
|
<if test="item.mediaUrl != null">#{item.mediaUrl},</if>
|
<if test="item.sourceUrl != null">#{item.sourceUrl},</if>
|
<if test="item.createTime != null">#{item.createTime},</if>
|
</trim>
|
</foreach>
|
</trim>
|
</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>
|