13 Commits

Author SHA1 Message Date
de2268d9a9 feat(ai-analysis): 添加日报 AI 分析功能说明文档及实现
- 新增详尽的日报 AI 分析功能使用说明文档,包含功能概述、接口示例、
  技术细节、错误处理和性能指标
- 添加 AsyncConfig 配置,新增日报 AI 分析任务线程池,支持异步并发处理
- 创建 DailyReportAnalysisResult DTO,定义分析结果数据结构
- 实现 DailyReportAnalysisService 接口,支持异步分析日报并保存分析结果
- 实现 DailyReportAnalysisServiceImpl,集成 AI 分析模型调用和业务数据处理
- 设置 AI 分析系统提示词,规范输出 JSON 结构,确保分析质量和准确性
- 异步执行分析任务,线程池采用 CallerRunsPolicy 拒绝策略保证稳定性
- 设计项目上下文构建逻辑,整合项目信息、里程碑、任务和统计数据为 AI 提示
- 实现分析结果持久化,保存识别风险、资源需求,更新项目进度信息
- 日报 AI 分析任务异步执行异常记录,保证主流程稳定不受影响
2026-03-31 19:22:24 +08:00
a4ad01ba64 feat(resource): 初始化权限数据并实现资源管理接口
- 新增初始化系统权限的SQL脚本,包含菜单权限、按钮权限及角色权限分配
- 实现资源管理RestController,支持资源的增删改查操作
- 资源接口支持分页查询、按ID查询以及状态和数量更新
- 增加资源预算汇总、即将到位资源和待审批资源查询接口
- 新增资源更新请求DTO,支持详细的资源属性修改及负责人自动匹配功能
- 权限检查基于注解实现,保障接口安全性与权限控制有效性
2026-03-31 17:37:16 +08:00
92f5f9d256 style(sql): 美化权限初始化SQL格式,添加任务和里程碑权限
- 统一调整SQL插入语句的缩进格式和对齐,提升可读性
- 新增任务管理相关权限,包含任务菜单及其按钮权限
- 新增里程碑管理相关权限,包含里程碑菜单及其按钮权限
- 保持原有系统、用户、角色、权限、项目权限结构和数据不变
- 更新注释编号,确保顺序正确,便于维护和理解
2026-03-31 16:50:51 +08:00
88c9fe5e06 feat(open-api): 新增对外开放接口及项目日报同步功能
- 新增项目日报表及其防重唯一索引,支持外部系统同步日报数据
- 添加项目日报实体类及对应 Mapper 和 XML 配置
- 新增对外开放接口控制器 OpenApiController,实现项目列表查询及日报同步接口
- 实现 OpenApiService 服务及其实现类,包含用户项目查询和日报防重同步逻辑
- 扩展 ProjectMapper,支持根据用户名查询用户关联项目列表
- 配置 SaToken 过滤白名单,放行 /api/open/** 路径无登录验证
- 引入 spring-boot-starter-validation 依赖,支持请求参数校验
- 创建数据传输对象 DailyReportSyncDTO,带参数校验注解
- 日志记录和异常处理增强,保证数据同步和查询的健壮性
2026-03-31 15:45:36 +08:00
8008d367e8 fix(ai-chat): 优化引用文档ID处理支持字符串数组类型
- 将数据库中 referenced_doc_ids 字段从 BIGINT[] 修改为 VARCHAR(255)[]
- 在实体类 AiChatMessage 中将 referencedDocIds 类型改为 String[] 并添加自定义类型处理器
- 新增 PostgresArrayTypeHandler 用于处理 PostgreSQL varchar 数组与 Java String[] 的映射
- 修改查询时 project_id 和 timeline_node_id 的过滤表达式,使用字符串匹配避免类型错误
- AiChatServiceImpl 中保存消息时改用字符串数组保存引用文档ID
- KbDocumentVO 新增 fileUrl 字段映射数据库中对应字段
- 数据库映射文件 AiDocumentMapper.xml 增加 file_url 字段映射
2026-03-30 18:59:52 +08:00
06d82187ff refactor(ai-chat): 将会话ID类型统一由UUID改为字符串类型
- 修改AiChat相关实体、VO及Mapper中sessionId字段类型为String
- 调整AiChatController接口,支持字符串类型sessionId参数
- 修改AiChatService及实现类中相关方法的sessionId参数类型
- 更新业务逻辑中sessionId的处理,移除UUID转换操作

feat(vector-store): 添加文件访问URL字段及切片更新接口

- 在vector_store表及对应实体中新增file_url字段
- 增加AiDocument的fileUrl字段,保存文件访问链接
- 在DocumentProcessor处理切片时更新file_url字段
- 添加AiDocumentMapper中updateChunkFields接口及XML实现

feat(attachment): 知识库文件上传支持记录文件附件

- 新增FileAttachment实体及Mapper,保存上传文件元信息
- 在AiKnowledgeBaseServiceImpl实现文件上传后保存附件记录
- 上传接口返回文件URL并保存到文档和附件表中
2026-03-30 18:35:20 +08:00
4ca9c63302 feat(config): 添加Spring AI配置与完善数据库设计
- 新增SpringAiConfig类,配置ChatClient和PgVectorStore向量存储
- 配置PgVectorStore向量维度为1024,使用余弦距离,禁用自动初始化
- 创建基于pgvector扩展的向量存储表vector_store,支持丰富文档元数据和分块信息
- 设计部门、用户、角色及权限管理相关表,支持多维度角色授权管理
- 完善项目管理核心表,包含项目、成员、里程碑和任务详细设计
- 建立工单、工单流转记录表及风险管理表,实现项目工作的风险分派和追踪
- 添加日报数据录入表,支持项目日报的结构化存储与索引优化
- 所有表均设置了合理索引,优化查询性能,添加详细注释方便后续维护
- 设置数据库时区为Asia/Shanghai,统一时间管理标准
2026-03-30 17:48:57 +08:00
37da5da044 refactor(ai): 合并ai_document表到vector_store表,切换文档ID类型为字符串
- 删除旧的ai_document表及相关索引,新增vector_store表兼容Spring AI PgVectorStore结构
- 调整实体类AiDocument映射到vector_store表,使用字符串ID代替Long类型
- 修改Mapper接口及XML中所有ID相关SQL使用字符串类型,并替换表名为vector_store
- 修改服务接口与实现类,文档ID参数类型统一为字符串
- 处理文档分块时改用UUID生成chunk ID,确保唯一且格式正确
- 禁用Spring Ai PgVectorStore的自动schema初始化,使用手动创建的表结构
- 更新配置文件OpenAI模型API key及基础URL配置,支持多模型与聊天功能
- 优化日志输出,增加分块文档ID和父文档ID显示,方便调试追踪
2026-03-30 17:43:29 +08:00
6d91be8af5 feat(project): 实现异步项目初始化及SSE进度推送功能
- 新增异步任务线程池配置,支持项目初始化异步执行
- 定义异步任务状态枚举,统一管理任务生命周期状态
- 实现通用SSE通道管理器,支持用户绑定及多业务消息推送
- 创建统一SSE消息结构,支持多业务类型及事件分类
- 提供基础SSE连接管理接口,支持连接建立、状态查询及关闭
- 提供项目初始化异步任务服务接口及实现,支持进度回调和任务取消
- 添加项目初始化异步预览任务接口,支持异步提交、状态查询、结果获取及取消
- 新增项目初始化任务SSE接口,实现任务异步提交与实时进度推送
- 设计前端SSE集成文档,详细说明SSE连接、消息格式和对接步骤
- 添加Spring工具类,方便非Spring管理类获取Bean实例
- 优化项目控制器,整合异步任务相关API接口支持异步项目初始化工作流
2026-03-28 16:57:55 +08:00
10b4a4b3ac feat(auth): 增加飞书登录返回角色权限和用户信息接口
- 飞书登录接口返回token、用户信息、角色列表、权限列表及管理员标识
- 新增接口获取当前登录用户详细信息,包含角色权限和用户基本属性
- 全局异常处理增加未登录异常捕获,返回对应错误码和信息
- 新增系统权限初始化SQL脚本,包含菜单、按钮权限及角色分配
- 实现权限管理的增删改查及权限树查询接口
- 实现角色管理的分页查询、详情查询、新增修改删除及权限分配接口
- 实现用户管理分页查询、详情、角色查询、新增修改功能及角色ID列表接口
- 权限、角色和用户接口均添加Sa-Token权限校验注解,确保安全访问
2026-03-27 18:25:13 +08:00
5e698fbb8c feat(project): 新增AI项目初始化及数据持久化功能
- 新增ProjectInitResult DTO,定义项目初始化的结构化数据格式
- 实现ProjectServiceImpl,支持从文本或文件生成项目数据并保存
- 集成Spring AI结构化输出能力,解析项目文档生成计划数据
- 实现项目、里程碑、任务、成员、资源、风险、时间节点数据转换及数据库保存
- 支持任务的层级关系和执行依赖关系持久化
- 新增Task实体,完善任务相关字段及数据库映射
- 添加详细日志,支持事务回滚保障数据一致性
- 新增数据库设计SQL文档,定义项目管理相关表结构及索引
2026-03-27 11:57:30 +08:00
b45f699c29 chore(project): 添加模块package-info文件及引入Spring AI依赖
- 为AI智能助手、人员分析中心、数据录入中心、项目管理中心、风险管控中心、
  系统管理和工单服务中心等子模块添加package-info.java文件,完善模块说明
- 为基础模块、公共配置、常量定义、异常处理、统一响应、工具类等公共包
  新增package-info.java文件
- 在pom.xml中引入Spring AI相关依赖,包括spring-ai-openai-spring-boot-starter和
  spring-ai-pgvector-store-spring-boot-starter
- 添加Spring AI依赖管理版本,统一管理相关依赖版本号
2026-03-26 15:28:51 +08:00
d99509cff5 feat(database): 初始化AI项目管理平台数据库设计与环境配置
- 添加PostgreSQL数据库设计,包含部门、用户、角色、权限、项目、任务、工单、
  风险、数据录入及文件附件等核心表结构及索引
- 启用pgvector和uuid-ossp扩展,支持向量存储和UUID生成
- 增加数据库表详细注释,便于后续维护与理解
- 配置Spring Boot项目支持Java 17及相关依赖(Web、PostgreSQL、MyBatis Plus、
  MinIO、AWS SDK S3)
- 新增Dockerfile及构建镜像脚本,支持amd及arm架构容器构建
- 提供完整Docker Compose环境配置,包含MySQL、Redis、Redis Admin、MinIO、
  PhpMyAdmin及应用服务容器
- 新增Nginx反向代理配置文件,支持Admin和Client前端分离部署
- 添加一键启动Shell脚本,简化环境及应用服务启动流程
- 更新Spring Boot配置,设置active profile为dev及服务默认端口8080
- 新增Redis配置文件,开放网络访问端口与绑定所有地址
2026-03-26 14:29:51 +08:00