<?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.iocoder.yudao.module.system.dal.mysql.downloadLog.DownloadLogMapper"> <!-- 一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。 无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。 代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。 文档可见:https://www.iocoder.cn/MyBatis/x-plugins/ --> <select id="list" resultType="cn.iocoder.yudao.module.system.dal.dataobject.downloadLog.DownloadLogDO"> select sdl.id, sdl.`temporary_file`, sdl.`name`, sdl.`business_no`, sdl.`file_name`, sdl.`file_suffix`, sdl.`type`, sdl.`download_url`, sdl.`status`, sdl.result, sdl.num, sdl.down_num, sdl.create_time, sdl.update_time from system_download_log sdl where sdl.`deleted` = 0 <if test="query.status != null"> AND sdl.`status` = #{query.status} </if> <if test="query.type != null"> AND sdl.`type` = #{query.type} </if> <if test="query.userId != null"> AND sdl.`user_id` = #{query.userId} </if> <if test="query.userType != null"> AND sdl.`user_type` = #{query.userType} </if> <if test="query.name != null and query.name != '' "> AND sdl.`name` like("%", #{query.name}, "%") </if> <if test="query.businessNo != null and query.businessNo != '' "> AND sdl.`business_no` like("%", #{query.businessNo}, "%") </if> <if test="query.fileName != null and query.fileName != '' "> AND sdl.`file_name` like("%", #{query.fileName}, "%") </if> <if test="query.fileSuffix != null and query.fileSuffix != '' "> AND sdl.`file_suffix` = #{query.fileSuffix} </if> <if test="query.beginCreateTime != null and query.endCreateTime != null "> AND sdl.`create_time` between #{query.beginCreateTime} and #{query.endCreateTime} </if> order by sdl.id desc limit #{start}, #{size} </select> <select id="count" resultType="long"> select count(1) from system_download_log sdl where sdl.`deleted` = 0 <if test="query.status != null"> AND sdl.`status` = #{query.status} </if> <if test="query.type != null"> AND sdl.`type` = #{query.type} </if> <if test="query.userId != null"> AND sdl.`user_id` = #{query.userId} </if> <if test="query.userType != null"> AND sdl.`user_type` = #{query.userType} </if> <if test="query.name != null and query.name != '' "> AND sdl.`name` like("%", #{query.name}, "%") </if> <if test="query.businessNo != null and query.businessNo != '' "> AND sdl.`business_no` like("%", #{query.businessNo}, "%") </if> <if test="query.fileName != null and query.fileName != '' "> AND sdl.`file_name` like("%", #{query.fileName}, "%") </if> <if test="query.fileSuffix != null and query.fileSuffix != '' "> AND sdl.`file_suffix` = #{query.fileSuffix} </if> <if test="query.beginCreateTime != null and query.endCreateTime != null "> AND sdl.`create_time` between #{query.beginCreateTime} and #{query.endCreateTime} </if> </select> <select id="markCount" resultType="cn.iocoder.yudao.module.system.controller.admin.user.vo.user.UserMarkVO"> select IFNULL(sum(if(sdl.`status` = 0, 1, 0)), 0) as file_make_queuing_count, IFNULL(sum(if(sdl.`status` = 1, 1, 0)), 0) as file_make_Progress_count, IFNULL(sum(if(sdl.`status` = 2 and sdl.`down_num` = 0, 1, 0)), 0) as file_wait_down_count from system_download_log sdl where sdl.`deleted` = 0 and sdl.user_type = #{userType} and sdl.user_id = #{userId} </select> </mapper>