- 新增通用返回类BaseResponse用于统一接口响应格式 - 新增业务异常BusinessException及全局异常处理GlobalExceptionHandler - 新增OSS文件上传控制器支持文件上传与删除接口 - 添加项目核心实体类Project、ProjectMember、ProjectMilestone、ProjectTimeline和Resource - 实现ProjectService接口及其实现类,使用AI能力从项目文档生成结构化项目数据 - 在ProjectServiceImpl中实现项目数据解析、保存及业务逻辑,包括项目、里程碑、任务、成员、资源、风险等 - 项目初始化控制器ProjectController提供文件上传触发项目初始化功能 - 设计了详细的系统提示词和用户提示词,用于AI模型指导生成严格格式的结构化项目数据 - 设计项目数据持久化流程,确保生成的数据正确保存至数据库,支持事务回滚 - 增强日志记录,便于追踪项目初始化全过程及错误调试
97 lines
1.7 KiB
Java
97 lines
1.7 KiB
Java
package cn.yinlihupo.domain.entity;
|
|
|
|
import cn.yinlihupo.common.handler.JsonbTypeHandler;
|
|
import com.baomidou.mybatisplus.annotation.*;
|
|
import lombok.Data;
|
|
|
|
import java.time.LocalDate;
|
|
import java.time.LocalDateTime;
|
|
import java.util.List;
|
|
|
|
/**
|
|
* 项目时间节点实体类
|
|
* 对应数据库表: project_timeline
|
|
*/
|
|
@Data
|
|
@TableName("project_timeline")
|
|
public class ProjectTimeline {
|
|
|
|
@TableId(type = IdType.ASSIGN_ID)
|
|
private Long id;
|
|
|
|
/**
|
|
* 项目ID
|
|
*/
|
|
private Long projectId;
|
|
|
|
/**
|
|
* 节点名称
|
|
*/
|
|
private String nodeName;
|
|
|
|
/**
|
|
* 节点类型: phase-阶段, milestone-里程碑, event-事件, checkpoint-检查点
|
|
*/
|
|
private String nodeType;
|
|
|
|
/**
|
|
* 父节点ID
|
|
*/
|
|
private Long parentId;
|
|
|
|
/**
|
|
* 计划日期
|
|
*/
|
|
private LocalDate planDate;
|
|
|
|
/**
|
|
* 实际日期
|
|
*/
|
|
private LocalDate actualDate;
|
|
|
|
/**
|
|
* 描述
|
|
*/
|
|
private String description;
|
|
|
|
/**
|
|
* 状态: pending-待开始, in_progress-进行中, completed-已完成, delayed-延期
|
|
*/
|
|
private String status;
|
|
|
|
/**
|
|
* 排序
|
|
*/
|
|
private Integer sortOrder;
|
|
|
|
/**
|
|
* 知识库范围配置["report","file","risk","ticket"]
|
|
*/
|
|
@TableField(typeHandler = JsonbTypeHandler.class)
|
|
private List<String> kbScope;
|
|
|
|
/**
|
|
* 扩展数据
|
|
*/
|
|
@TableField(typeHandler = JsonbTypeHandler.class)
|
|
private Object extraData;
|
|
|
|
/**
|
|
* 创建时间
|
|
*/
|
|
@TableField(fill = FieldFill.INSERT)
|
|
private LocalDateTime createTime;
|
|
|
|
/**
|
|
* 更新时间
|
|
*/
|
|
@TableField(fill = FieldFill.INSERT_UPDATE)
|
|
private LocalDateTime updateTime;
|
|
|
|
/**
|
|
* 删除标记
|
|
*/
|
|
@TableLogic
|
|
private Integer deleted;
|
|
}
|