# 项目交接文档 ## 1. 项目概述 - **项目名称**:InvestBoot 政府投资报审系统 - **项目描述**:政府投资项目报审管理系统,提供项目审批、预警管理、价格信息管理等功能 - **项目组**:com.biutag.supervision ## 2. 技术栈 ### 2.1 核心框架 - Spring Boot 3.3.2 - MyBatis Plus 3.5.7 - Dynamic Datasource 4.3.1(多数据源) - Redis Reactive ### 2.2 数据库 - MySQL(主要数据库) - PostgreSQL(邮箱相关) - 支持多种数据库:达梦(DM)、SQL Server、GBase ### 2.3 文件存储 - FastDFS 分布式文件系统 ### 2.4 API文档 - Knife4j OpenAPI3(基于Swagger) ### 2.5 工具类 - Hutool 5.8.29 - EasyExcel 4.0.1 - Fastjson 2.0.53 - Aspose.Words 15.8.0(Word文档处理) ### 2.6 其他组件 - Lombok - Druid 连接池 - Freemarker 模板引擎 - Logstash 日志编码 - JIT AuthSDK 3.0.3(数字证书) ## 3. 环境配置 ### 3.1 开发环境 - JDK 17 - Maven 3.6+ - IDE:推荐 IntelliJ IDEA ### 3.2 配置文件 - 主配置文件:`application.yml` - 环境配置文件: - `application-local.yml`(本地开发环境) - `application-dev.yml`(开发环境) - `application-prod.yml`(生产环境) ### 3.3 数据库配置 - 主数据源(master):MySQL - 从数据源(多个):用于不同业务模块 - Redis:缓存,端口6379 ### 3.4 文件服务配置 - FastDFS:分布式文件存储 - 预览URL配置:`http://172.31.217.20:31664` ## 4. 项目结构 ``` src/main/java/com/biutag/supervision/ ├── InvestBootApplication.java # 应用启动类 ├── common/ # 通用类 ├── config/ # 配置类 ├── constants/ # 常量定义 ├── controller/ # 控制器层 ├── exception/ # 异常处理 ├── flow/ # 流程相关 ├── job/ # 定时任务 ├── mapper/ # 数据访问层 ├── pojo/ # 数据模型 │ ├── domain/ # 领域模型 │ ├── dto/ # 数据传输对象 │ ├── entity/ # 实体类 │ ├── enums/ # 枚举类 │ ├── model/ # 模型类 │ ├── param/ # 参数类 │ └── vo/ # 视图对象 ├── service/ # 业务逻辑层 ├── support/ # 支持类 └── util/ # 工具类 ``` ## 5. 核心功能模块 ### 5.1 认证与授权 - 登录认证:`LoginController` - 用户角色权限管理:基于RBAC模型 - Token管理:Redis存储,有效期168小时 ### 5.2 文件管理 - 文件上传下载:`FileController` - 文件分类管理:`FileClassService` - 文件存储:FastDFS分布式存储 ### 5.3 项目预警管理 - 预警信息处理 - 预警相关接口:`controller/warning/` ### 5.4 价格信息库管理 - 价格信息录入与查询 - 相关接口:`controller/price/` ### 5.5 项目报审、报表管理 - 相关接口:`controller/report/ReportProjectController.java` ### 5.6 工作流管理 - 相关接口:`controller/report/ReportFlowController.java` ### 5.7 服务单位管理 - 服务单位信息维护 - 相关接口:`controller/serviceUnit/` ## 6. API文档 ### 6.1 访问地址 ### 6.2 接口分组 - plugin:插件相关接口 - 各功能模块独立接口组 ## 7. 关键配置项 ### 7.1 服务器配置 - 端口:8080 - 时区:Asia/Shanghai ### 7.2 文件上传配置 - 最大文件大小:100MB - 最大请求大小:100MB ### 7.3 缓存配置 - Redis数据库索引:1 - 连接超时:10s ### 7.4 FastDFS配置 - Tracker列表:172.31.217.20:32060, 172.31.217.20:31882 - 连接超时:10000ms ## 8. 部署说明 ### 8.1 打包方式 - Maven打包:`mvn clean package` - 最终生成JAR包:`investBoot.jar` ### 8.2 环境切换 - 本地:`-Dspring.profiles.active=local` - 开发:`-Dspring.profiles.active=dev` - 生产:`-Dspring.profiles.active=prod` ### 8.3 运行命令 ``` java -jar investBoot.jar --spring.profiles.active=环境名称 ``` ## 9. 注意事项 ### 9.1 数据库配置 - 首次部署需要执行SQL脚本初始化数据库 - SQL脚本位置:`sql/`目录 ### 9.2 外部依赖 - 需确保Redis服务正常运行 - 需确保FastDFS服务正常运行 - 部分证书相关功能依赖JIT AuthSDK ### 9.3 特殊配置 - Word文档处理功能依赖Aspose.Words,需注意许可证配置 - 视频检查相关功能依赖外部服务 ## 10. 联系人信息