- 新增飞书用户同步控制器,提供手动全量及按部门同步接口 - 新增飞书员工信息相关DTO,支持飞书API响应数据映射 - 新增飞书员工列表查询请求和响应DTO,支持分页查询功能 - 实现飞书SDK客户端服务,封装调用飞书官方API逻辑 - 实现飞书用户同步服务,支持全量及按部门同步,处理分页与数据持久化 - 增加飞书用户同步定时任务,每天0点自动同步飞书员工信息 - 在主应用类启用计划任务支持(@EnableScheduling) - 优化全局异常处理中Token无效提示信息 - 在BaseResponse增加success和error静态方法便捷创建响应对象 - 支持BusinessException新增仅消息构造方法,简化异常创建 - pom.xml中更新sa-token-redis注释,强调分布式会话持久化用途
194 lines
6.3 KiB
XML
194 lines
6.3 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||
<modelVersion>4.0.0</modelVersion>
|
||
<parent>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-parent</artifactId>
|
||
<version>3.5.7</version>
|
||
<relativePath/> <!-- lookup parent from repository -->
|
||
</parent>
|
||
<groupId>cn.yinlihupo</groupId>
|
||
<artifactId>ylhp-AIProjectManager</artifactId>
|
||
<version>0.0.1-SNAPSHOT</version>
|
||
<name>ylhp-AIProjectManager</name>
|
||
<description>ylhp-AIProjectManager</description>
|
||
|
||
<properties>
|
||
<maven.compiler.source>17</maven.compiler.source>
|
||
<maven.compiler.target>17</maven.compiler.target>
|
||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||
<java.version>17</java.version>
|
||
<spring-ai.version>1.1.0</spring-ai.version>
|
||
</properties>
|
||
|
||
<dependencies>
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter</artifactId>
|
||
</dependency>
|
||
|
||
<!-- Spring Boot Web -->
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-web</artifactId>
|
||
</dependency>
|
||
|
||
<!-- Lombok -->
|
||
<dependency>
|
||
<groupId>org.projectlombok</groupId>
|
||
<artifactId>lombok</artifactId>
|
||
</dependency>
|
||
|
||
<!-- Spring AOP(包含 AspectJ,支持 @Aspect 切面) -->
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-aop</artifactId>
|
||
</dependency>
|
||
|
||
<!--hutool all-->
|
||
<dependency>
|
||
<groupId>cn.hutool</groupId>
|
||
<artifactId>hutool-all</artifactId>
|
||
<version>5.8.23</version>
|
||
</dependency>
|
||
|
||
<!-- PostgreSQL 数据库驱动 -->
|
||
<dependency>
|
||
<groupId>org.postgresql</groupId>
|
||
<artifactId>postgresql</artifactId>
|
||
</dependency>
|
||
|
||
<!-- Spring AI -->
|
||
<dependency>
|
||
<groupId>org.springframework.ai</groupId>
|
||
<artifactId>spring-ai-starter-model-openai</artifactId>
|
||
</dependency>
|
||
|
||
<!-- Spring AI PostgreSQL Vector Store -->
|
||
<dependency>
|
||
<groupId>org.springframework.ai</groupId>
|
||
<artifactId>spring-ai-starter-vector-store-pgvector</artifactId>
|
||
</dependency>
|
||
|
||
<!-- MyBatis Plus -->
|
||
<dependency>
|
||
<groupId>com.baomidou</groupId>
|
||
<artifactId>mybatis-plus-spring-boot3-starter</artifactId>
|
||
<version>3.5.5</version>
|
||
</dependency>
|
||
|
||
<!-- MinIO 对象存储客户端 -->
|
||
<dependency>
|
||
<groupId>io.minio</groupId>
|
||
<artifactId>minio</artifactId>
|
||
<version>8.5.7</version>
|
||
</dependency>
|
||
|
||
<!-- 文档解析依赖 -->
|
||
<!-- PDF解析 -->
|
||
<dependency>
|
||
<groupId>org.apache.pdfbox</groupId>
|
||
<artifactId>pdfbox</artifactId>
|
||
<version>2.0.30</version>
|
||
</dependency>
|
||
|
||
<!-- Word文档解析 -->
|
||
<dependency>
|
||
<groupId>org.apache.poi</groupId>
|
||
<artifactId>poi-ooxml</artifactId>
|
||
<version>5.2.5</version>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>org.apache.poi</groupId>
|
||
<artifactId>poi-scratchpad</artifactId>
|
||
<version>5.2.5</version>
|
||
</dependency>
|
||
|
||
<!-- Excel解析 -->
|
||
<dependency>
|
||
<groupId>org.apache.poi</groupId>
|
||
<artifactId>poi-ooxml-schemas</artifactId>
|
||
<version>4.1.2</version>
|
||
</dependency>
|
||
|
||
<!-- Markdown解析 -->
|
||
<dependency>
|
||
<groupId>com.vladsch.flexmark</groupId>
|
||
<artifactId>flexmark-all</artifactId>
|
||
<version>0.64.8</version>
|
||
</dependency>
|
||
|
||
<!-- Tika 用于通用文档类型检测和内容提取 -->
|
||
<dependency>
|
||
<groupId>org.apache.tika</groupId>
|
||
<artifactId>tika-core</artifactId>
|
||
<version>2.9.1</version>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>org.apache.tika</groupId>
|
||
<artifactId>tika-parsers-standard-package</artifactId>
|
||
<version>2.9.1</version>
|
||
</dependency>
|
||
|
||
<!-- Sa-Token 权限认证 -->
|
||
<dependency>
|
||
<groupId>cn.dev33</groupId>
|
||
<artifactId>sa-token-spring-boot3-starter</artifactId>
|
||
<version>1.39.0</version>
|
||
</dependency>
|
||
|
||
<!-- Sa-Token Redis 集成(用于分布式环境会话持久化) -->
|
||
<dependency>
|
||
<groupId>cn.dev33</groupId>
|
||
<artifactId>sa-token-redis-jackson</artifactId>
|
||
<version>1.39.0</version>
|
||
</dependency>
|
||
|
||
<!-- 飞书开放平台SDK -->
|
||
<dependency>
|
||
<groupId>com.larksuite.oapi</groupId>
|
||
<artifactId>oapi-sdk</artifactId>
|
||
<version>2.5.3</version>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-test</artifactId>
|
||
<scope>test</scope>
|
||
</dependency>
|
||
</dependencies>
|
||
|
||
<!-- Maven Central is included by default in Maven builds.
|
||
You usually don’t need to configure it explicitly,
|
||
but it's shown here for clarity. -->
|
||
<repositories>
|
||
<repository>
|
||
<id>central</id>
|
||
<url>https://repo.maven.apache.org/maven2</url>
|
||
</repository>
|
||
</repositories>
|
||
|
||
<dependencyManagement>
|
||
<dependencies>
|
||
<dependency>
|
||
<groupId>org.springframework.ai</groupId>
|
||
<artifactId>spring-ai-bom</artifactId>
|
||
<version>${spring-ai.version}</version>
|
||
<type>pom</type>
|
||
<scope>import</scope>
|
||
</dependency>
|
||
</dependencies>
|
||
</dependencyManagement>
|
||
|
||
<build>
|
||
<plugins>
|
||
<plugin>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-maven-plugin</artifactId>
|
||
</plugin>
|
||
</plugins>
|
||
</build>
|
||
|
||
</project>
|