# STsystem 科技成果转化管理系统。 这是一个前后端分离的内部业务系统,用于科技成果的录入、审核、统计分析、公告通知和基础数据维护,适用于科研院所、企事业单位等成果管理场景。 ## 项目概览 - 前端:React 19 + Ant Design - 后端:Node.js + Express - 数据库:PostgreSQL 17 - 部署:Nginx 反向代理,前后端分离部署 ## 核心能力 - 成果全流程管理:录入、编辑、审核、归档、导出 - 角色权限控制:普通用户、中级用户、高级用户、管理员、维护员、超级管理员 - 数据统计分析:按部门、成果类型、年份等维度可视化分析 - 系统公告与附件分发 - 审计日志、限流、移动端拦截、附件类型校验等安全措施 - AI 统计分析接口,基于脱敏后的聚合数据生成分析结论 ## 目录结构 ```text STsystem/ ├─ client/ 前端项目 ├─ server/ 后端项目 ├─ database/ 数据库结构文件 ├─ static/ 静态页面资源 ├─ 配置包/ Windows 环境安装包与依赖 ├─ backup_tool.py 备份恢复工具 ├─ nginx.conf Nginx 配置示例 ├─ PROJECT_DOCUMENTATION.md 项目综合文档 └─ 第一次升级.md 升级与上线说明 ``` ## 本地开发 ### 1. 安装依赖 根目录仅提供快捷脚本,实际依赖分别安装在 `client/` 和 `server/`: ```bash cd server npm install cd ../client npm install ``` ### 2. 配置后端环境变量 复制 `server/.env.example` 为 `server/.env`,按实际环境填写数据库、JWT、上传目录和 AI 配置。 ## 常用命令 在项目根目录执行: ```bash npm run server # 启动后端 npm run client # 启动前端 npm run build # 构建前端 ``` 后端目录额外提供: ```bash npm run init-db npm run seed-500k ``` 注意:生产环境上线时不要误执行初始化或造数脚本,尤其是 `init-db`、`setup`、`seed` 一类命令。 ## 生产部署要点 - 前端构建产物位于 `client/build/` - 后端入口文件为 `server/index.js` - 生产环境通常通过 Nginx 托管前端静态资源,并反向代理 `/api/` - 上传目录由 `UPLOAD_DIR` / `UPLOAD_FALLBACK_DIRS` 控制 - 建议保留服务器现有 `.env`,不要把本地开发环境配置直接覆盖到生产环境 ## 文档 - 详细项目说明见 [PROJECT_DOCUMENTATION.md](./PROJECT_DOCUMENTATION.md) - 升级与上线说明见 [第一次升级.md](./第一次升级.md) ## 说明 本仓库应保存源码、配置示例和文档,不应提交以下运行时内容: - `server/.env` - `node_modules` - `server/uploads` - `server/logs` - 前端本地缓存和临时构建产物