feat: enhance operation log query functionality

- Add time range query (startTime, endTime)
- Add IP address query support
- Add method name query support
- Update OperationLogQuery with new fields
- Update OperationLogQueryCriteria with new query fields
- Update OperationLogHandler to support new query parameters

Closes #5
This commit is contained in:
张翔
2026-04-03 22:09:06 +08:00
parent cb59ed173b
commit b2577110fb
3 changed files with 101 additions and 0 deletions
@@ -3,6 +3,8 @@ package cn.novalon.manage.db.entity.query;
import cn.novalon.manage.sys.core.query.OperationLogQuery;
import cn.novalon.manage.db.dao.QueryField;
import java.time.LocalDateTime;
/**
* 操作日志查询条件对象
*
@@ -23,6 +25,18 @@ public class OperationLogQueryCriteria {
@QueryField(blurry = "username,operation,ip", type = QueryField.Type.INNER_LIKE)
private String keyword;
@QueryField(propName = "createdAt", type = QueryField.Type.GREATER_THAN)
private LocalDateTime startTime;
@QueryField(propName = "createdAt", type = QueryField.Type.LESS_THAN)
private LocalDateTime endTime;
@QueryField(propName = "ip", type = QueryField.Type.INNER_LIKE)
private String ip;
@QueryField(propName = "method", type = QueryField.Type.INNER_LIKE)
private String method;
public String getUsername() {
return username;
}
@@ -55,6 +69,38 @@ public class OperationLogQueryCriteria {
this.keyword = keyword;
}
public LocalDateTime getStartTime() {
return startTime;
}
public void setStartTime(LocalDateTime startTime) {
this.startTime = startTime;
}
public LocalDateTime getEndTime() {
return endTime;
}
public void setEndTime(LocalDateTime endTime) {
this.endTime = endTime;
}
public String getIp() {
return ip;
}
public void setIp(String ip) {
this.ip = ip;
}
public String getMethod() {
return method;
}
public void setMethod(String method) {
this.method = method;
}
/**
* 从领域查询对象转换
*
@@ -68,5 +114,9 @@ public class OperationLogQueryCriteria {
this.operation = query.getOperation();
this.status = query.getStatus();
this.keyword = query.getKeyword();
this.startTime = query.getStartTime();
this.endTime = query.getEndTime();
this.ip = query.getIp();
this.method = query.getMethod();
}
}