Files
tech-achievement-management…/README.md
T
2026-04-19 14:05:40 +08:00

2.7 KiB
Raw Blame History

STsystem

科技成果转化管理系统。

这是一个前后端分离的内部业务系统,用于科技成果的录入、审核、统计分析、公告通知和基础数据维护,适用于科研院所、企事业单位等成果管理场景。

项目概览

  • 前端:React 19 + Ant Design
  • 后端:Node.js + Express
  • 数据库:PostgreSQL 17
  • 部署:Nginx 反向代理,前后端分离部署

核心能力

  • 成果全流程管理:录入、编辑、审核、归档、导出
  • 角色权限控制:普通用户、中级用户、高级用户、管理员、维护员、超级管理员
  • 数据统计分析:按部门、成果类型、年份等维度可视化分析
  • 系统公告与附件分发
  • 审计日志、限流、移动端拦截、附件类型校验等安全措施
  • AI 统计分析接口,基于脱敏后的聚合数据生成分析结论

目录结构

STsystem/
├─ client/                  前端项目
├─ server/                  后端项目
├─ database/                数据库结构文件
├─ static/                  静态页面资源
├─ 配置包/                  Windows 环境安装包与依赖
├─ backup_tool.py           备份恢复工具
├─ nginx.conf               Nginx 配置示例
├─ PROJECT_DOCUMENTATION.md 项目综合文档
└─ 第一次升级.md             升级与上线说明

本地开发

1. 安装依赖

根目录仅提供快捷脚本,实际依赖分别安装在 client/server/

cd server
npm install

cd ../client
npm install

2. 配置后端环境变量

复制 server/.env.exampleserver/.env,按实际环境填写数据库、JWT、上传目录和 AI 配置。

常用命令

在项目根目录执行:

npm run server   # 启动后端
npm run client   # 启动前端
npm run build    # 构建前端

后端目录额外提供:

npm run init-db
npm run seed-500k

注意:生产环境上线时不要误执行初始化或造数脚本,尤其是 init-dbsetupseed 一类命令。

生产部署要点

  • 前端构建产物位于 client/build/
  • 后端入口文件为 server/index.js
  • 生产环境通常通过 Nginx 托管前端静态资源,并反向代理 /api/
  • 上传目录由 UPLOAD_DIR / UPLOAD_FALLBACK_DIRS 控制
  • 建议保留服务器现有 .env,不要把本地开发环境配置直接覆盖到生产环境

文档

说明

本仓库应保存源码、配置示例和文档,不应提交以下运行时内容:

  • server/.env
  • node_modules
  • server/uploads
  • server/logs
  • 前端本地缓存和临时构建产物