Files
ylhp-ai-project-manager/src/main/java/cn.yinlihupo/common/page/TableDataInfo.java
JiaoTianBo e82b5c2f0b feat(common): 新增基础模块及AI项目初始化功能
- 新增基础响应类BaseResponse,实现统一返回格式
- 定义自定义异常BusinessException及全局异常处理机制
- 构建错误码枚举ErrorCode,包含常见HTTP及业务错误码
- 实现返回工具类ResultUtils提供成功与失败响应构建方法
- 添加分页查询支持PageQuery和TableDataInfo数据结构
- 配置MinIO客户端及服务类MinioFileService实现文件上传、下载、删除功能
- 实现AI项目初始化控制器ProjectInitController,支持文本、文件及URL输入生成项目结构化数据
- 定义项目初始化相关DTO,包括请求参数和复杂的结果结构体
- 补充项目开发环境配置文件,集成Spring AI、PostgreSQL和MinIO配置
- 项目主启动类YlhpAiProjectManagerApplication添加启动入口
- 更新Maven依赖,集成Spring AI、MyBatis Plus、MinIO及AWS S3客户端依赖
- 规范代码包结构,新增多模块package-info.java文件进行模块说明文档编写
2026-03-26 16:50:18 +08:00

77 lines
1.7 KiB
Java

package cn.yinlihupo.common.page;
import cn.hutool.http.HttpStatus;
import com.baomidou.mybatisplus.core.metadata.IPage;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.List;
/**
* 表格分页数据对象
*/
@Data
@NoArgsConstructor
public class TableDataInfo<T> implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 总记录数
*/
private long total;
/**
* 列表数据
*/
private List<T> rows;
/**
* 消息状态码
*/
private int code;
/**
* 消息内容
*/
private String msg;
/**
* 分页
*
* @param list 列表数据
* @param total 总记录数
*/
public TableDataInfo(List<T> list, long total) {
this.rows = list;
this.total = total;
}
public static <T> TableDataInfo<T> build(IPage<T> page) {
TableDataInfo<T> rspData = new TableDataInfo<>();
rspData.setCode(HttpStatus.HTTP_OK);
rspData.setMsg("查询成功");
rspData.setRows(page.getRecords());
rspData.setTotal(page.getTotal());
return rspData;
}
public static <T> TableDataInfo<T> build(List<T> list) {
TableDataInfo<T> rspData = new TableDataInfo<>();
rspData.setCode(HttpStatus.HTTP_OK);
rspData.setMsg("查询成功");
rspData.setRows(list);
rspData.setTotal(list.size());
return rspData;
}
public static <T> TableDataInfo<T> build() {
TableDataInfo<T> rspData = new TableDataInfo<>();
rspData.setCode(HttpStatus.HTTP_OK);
rspData.setMsg("查询成功");
return rspData;
}
}