<?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="cn.timer.api.dao.disk.DiskFilesLogMapper"> <!-- 可根据自己的需求,是否要使用 --> <resultMap type="cn.timer.api.bean.disk.DiskFilesLog" id="BaseResultMap"> <id property="id" column="id"/> <result property="filesId" column="files_id"/> <result property="type" column="type"/> <result property="title" column="title"/> <result property="filePath" column="file_path"/> <result property="fileSize" column="file_size"/> <result property="userId" column="user_id"/> <result property="userName" column="user_name"/> <result property="deleteFlag" column="delete_flag"/> <result property="createTime" column="create_time"/> <result property="updateTime" column="update_time"/> </resultMap> <select id="queryDiskFilesLog" resultType="cn.timer.api.dto.disk.DiskFilesDto"> SELECT df.id, df.show_size, df.file_type, df.url_path, dfi.url, log.id obj_id, log.title, log.update_time, log.user_name FROM (SELECT * FROM disk_files_log WHERE id IN (SELECT MAX(id) FROM disk_files_log WHERE user_id = #{diskFilesLog.userId} and `delete_flag` = 0 <if test="diskFilesLog.title != null and diskFilesLog.title != '' and diskFilesLog.title != 'null'"> and title like CONCAT('%',#{diskFilesLog.title},'%') </if> <choose> <when test="diskFilesLog.type != null"> and `type` = #{diskFilesLog.type} </when> <otherwise> and `type` <![CDATA[ <= ]]> 1 </otherwise> </choose> GROUP BY files_id )) AS log LEFT JOIN disk_files df ON log.files_id = df.id LEFT JOIN disk_file_image dfi ON df.file_type = dfi.type LEFT JOIN disk_catalogue_files dcf ON df.id = dcf.files_id LEFT JOIN disk_catalogue dc ON dc.id = dcf.catalogue_id WHERE dc.org_id=#{orgId} GROUP BY log.files_id ORDER BY log.id DESC </select> </mapper>