这是一个前后端分离的智能档案管理系统,支持档案创建、查询、归档、借阅、移交、入库上架、流程规则配置,以及 AI/OCR 辅助能力。
backend/:Spring Boot 后端,Java 17 + MyBatis-Plusfrontend/:Vue 3 + TypeScript + Vite 前端scripts/:批量导入测试文件等辅助脚本clear-validation-data.ps1:清理验证数据和存储文件generate-*.ps1/create-*.ps1/*.py:生成测试文档、模拟数据的脚本
建议在 Windows 环境下运行。当前仓库中的启动脚本和配置里包含了较多 Windows 路径。
- JDK 17
- Maven 3.9+
- Node.js 18+,推荐 20+
- PostgreSQL 14+,默认库名为
smart_archive - Redis 6+
- Tesseract OCR:如果需要启用 PDF/OCR 识别,请安装并配置
- Neo4j:知识图谱能力默认关闭,非必需
后端配置文件:backend/src/main/resources/application.yml
本地私有配置建议使用:backend/src/main/resources/application-local.yml(已加入 .gitignore,不会提交),可参考模板:backend/src/main/resources/application-local.example.yml。
默认配置如下:
- 后端端口:
8080 - 默认(不带 profile)PostgreSQL:
jdbc:postgresql://localhost:5432/postgres - Redis:
localhost:6379 - OCR:默认开启
- Tesseract 路径:
C:/Program Files/Tesseract-OCR/tesseract.exe - OCR 语言包目录:
D:/AI project/AI-search/ocr/tessdata
如果你的电脑路径不同,请在启动前修改这些配置:
spring.datasource.urlspring.datasource.usernamespring.datasource.passwordspring.data.redis.hostspring.data.redis.portarchive.ocr.tesseract-patharchive.ocr.tessdata-dir
开发环境前端通过 Vite 代理转发到后端,配置在:frontend/vite.config.ts
- 代理规则:
/api->http://localhost:8080
frontend/src/api/http.ts 默认使用同源 baseURL: '',无需再手工改写 API 主机地址。
先启动 PostgreSQL 和 Redis,并创建数据库(用于 local profile):
CREATE DATABASE smart_archive_clean;如果你准备开启 OCR,还需要确认 Tesseract 已安装,并且 tessdata 目录可用。
进入 backend/ 目录后执行:
mvn spring-boot:run -Dspring-boot.run.profiles=local说明:仓库默认不强制激活 local,请通过启动参数指定,避免本地私有配置影响团队。
或者直接双击/运行:
backend/start-backend.cmd
后端启动成功后,默认监听:
http://localhost:8080
进入 frontend/ 目录后执行:
npm install
npm run dev或者直接运行:
frontend/start-frontend.cmd
前端默认地址:
http://localhost:5173
启动完成后,先打开前端地址,再通过页面访问各个模块。
clear-validation-data.ps1 用于清理验证数据、归档文件和部分流程相关数据。它适合在重复测试前使用。
常见用法:
.\clear-validation-data.ps1scripts/run-bulk-import-test-files.ps1 会调用 scripts/bulk_import_archives.py 批量导入测试文件,并把日志写到 import-results/。
常见用法:
.\scripts\run-bulk-import-test-files.ps1如果你希望前台执行,可以加 -Foreground。
仓库根目录下还有一些生成测试文件的脚本,例如:
generate-documents.ps1generate-documents-en.ps1generate-formal-documents.ps1generate_final_documents.pygenerate_chinese_documents.pycreate-files.ps1
这些脚本主要用于生成测试样本,不是系统运行所必需。
- 先确认 PostgreSQL、Redis、JDK、Node.js 都已安装。
- 复制
backend/src/main/resources/application-local.example.yml为application-local.yml,按本机环境修改数据库、Redis 和 OCR 路径。 - 保持
frontend/vite.config.ts的/api代理与后端端口一致(默认8080)。 - 先启动后端,再启动前端。
- 如果页面报接口错误,优先检查后端是否已启动,以及前端
baseURL是否正确。
- 确认 PostgreSQL 已启动
- 确认数据库
smart_archive_clean已创建(如果使用local) - 确认用户名和密码与
application-local.yml(或启动参数)一致
- 确认后端是否运行在
8080 - 确认
frontend/vite.config.ts中/api的代理目标是否为正确后端地址 - 检查浏览器控制台和后端日志
- 确认 Tesseract 已安装
- 确认
archive.ocr.tesseract-path指向可执行文件 - 确认
archive.ocr.tessdata-dir下有语言包
仓库中保留了数据库迁移 SQL 文件,路径在:
backend/src/main/resources/db/migration/
如果你的本地环境没有自动执行迁移,请根据文件顺序手动导入,或者在项目中补充迁移工具后再启动。
当前仓库的脚本和配置大多以本地开发为主,默认适合在同一台 Windows 机器上同时运行后端、前端、数据库和 Redis。若要发布到服务器,建议进一步把数据库地址、OCR 路径和前端接口地址改成环境变量或配置文件注入。