fix: 修复用户创建时间条件查询没用的bug

修复用户创建时间条件查询没用的bug
增加系统日志操作时间条件查询
This commit is contained in:
Theo
2024-08-10 15:35:57 +08:00
parent 21a876fd29
commit 71fc5c86cc
5 changed files with 15 additions and 19 deletions

View File

@@ -28,7 +28,7 @@ public interface SysLogMapper extends BaseMapper<SysLog> {
* @param queryParams
* @return
*/
Page<LogPageVO> listPagedLogs(Page page, LogPageQuery queryParams);
Page<LogPageVO> listPagedLogs(Page<LogPageVO> page, LogPageQuery queryParams);
/**
* 统计浏览数(PV)

View File

@@ -4,7 +4,7 @@ import com.youlai.system.common.base.BasePageQuery;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.List;
/**
* 日志分页查询对象
@@ -20,12 +20,7 @@ public class LogPageQuery extends BasePageQuery {
@Schema(description="关键字(日志内容/请求路径/请求方法/地区/浏览器/终端系统)")
private String keywords;
@Schema(description="开始日期")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private String startDate;
@Schema(description="结束日期")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private String endDate;
@Schema(description="操作时间范围")
List<String> createTime;
}

View File

@@ -38,10 +38,7 @@ public class SysLogServiceImpl extends ServiceImpl<SysLogMapper, SysLog>
*/
@Override
public Page<LogPageVO> listPagedLogs(LogPageQuery queryParams) {
// 格式化为数据库日期格式,避免日期比较使用格式化函数导致索引失效
DateUtils.toDatabaseFormat(queryParams, "startDate", "endDate");
return this.baseMapper.listPagedLogs(new Page(queryParams.getPageNum(), queryParams.getPageSize()),
return this.baseMapper.listPagedLogs(new Page<>(queryParams.getPageNum(), queryParams.getPageSize()),
queryParams);
}

View File

@@ -32,11 +32,15 @@
t2.nickname LIKE concat('%',#{queryParams.keywords},'%')
)
</if>
<if test="queryParams.startDate != null">
AND t1.create_time &gt;= #{queryParams.startDate}
</if>
<if test="queryParams.endDate != null">
AND t1.create_time &lt;= #{queryParams.endDate}
<if test="queryParams.createTime != null and queryParams.createTime.size > 0">
<if test="queryParams.createTime[0] != null and queryParams.createTime[0] != ''">
<bind name="startDate" value="queryParams.createTime[0].length() == 10 ? queryParams.createTime[0] + ' 00:00:00' : queryParams.createTime[0]"/>
AND t1.create_time &gt;= #{startDate}
</if>
<if test="queryParams.createTime[1] != null and queryParams.createTime[1] != ''">
<bind name="endDate" value="queryParams.createTime[1].length() == 10 ? queryParams.createTime[1] + ' 23:59:59' : queryParams.createTime[1]"/>
AND t1.create_time &lt;= #{endDate}
</if>
</if>
</where>
ORDER BY

View File

@@ -37,7 +37,7 @@
<if test='queryParams.deptId!=null'>
AND concat(',',concat(d.tree_path,',',d.id),',') like concat('%,',#{queryParams.deptId},',%')
</if>
<if test="queryParams.createTime != null ">
<if test="queryParams.createTime != null and queryParams.createTime.size > 0">
<if test="queryParams.createTime[0] != null and queryParams.createTime[0] != ''">
<bind name="startDate" value="queryParams.createTime[0].length() == 10 ? queryParams.createTime[0] + ' 00:00:00' : queryParams.createTime[0]"/>
AND u.create_time &gt;= #{startDate}