新增:新增系统监控/在线用户功能,并优化部分注释规范

This commit is contained in:
2023-01-21 14:15:00 +08:00
parent 185b79320f
commit 3116fd3eae
24 changed files with 640 additions and 48 deletions

View File

@@ -83,4 +83,29 @@ public class LoginUser implements Serializable {
* 创建时间
*/
private LocalDateTime createTime;
/**
* 令牌
*/
private String token;
/**
* 登录 IP
*/
private String clientIp;
/**
* 登录地点
*/
private String location;
/**
* 浏览器
*/
private String browser;
/**
* 登录时间
*/
private LocalDateTime loginTime;
}

View File

@@ -78,6 +78,10 @@ public class PageQuery implements Serializable {
this.size = DEFAULT_SIZE;
}
public int getPage() {
return page < 0 ? DEFAULT_PAGE : page;
}
/**
* 解析排序条件为 Spring 分页排序实体
*

View File

@@ -16,6 +16,7 @@
package top.charles7c.cnadmin.common.model.vo;
import java.util.ArrayList;
import java.util.List;
import lombok.Data;
@@ -26,6 +27,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
import com.baomidou.mybatisplus.core.metadata.IPage;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
/**
* 分页信息
@@ -93,4 +95,37 @@ public class PageInfo<V> {
pageInfo.setTotal(pageInfo.getTotal());
return pageInfo;
}
/**
* 基于列表数据构建分页信息
*
* @param page
* 页码
* @param size
* 每页记录数
* @param list
* 列表数据
* @param <V>
* 列表数据类型
* @return 分页信息
*/
public static <V> PageInfo<V> build(int page, int size, List<V> list) {
PageInfo<V> pageInfo = new PageInfo<>();
if (CollUtil.isEmpty(list)) {
return pageInfo;
}
pageInfo.setTotal(list.size());
// 对列表数据进行分页
int fromIndex = (page - 1) * size;
int toIndex = page * size + size;
if (fromIndex > list.size()) {
pageInfo.setList(new ArrayList<>());
} else if (toIndex >= list.size()) {
pageInfo.setList(list.subList(fromIndex, list.size()));
} else {
pageInfo.setList(list.subList(fromIndex, toIndex));
}
return pageInfo;
}
}