环境监督系统 (EMS)
📖 项目简介
环境监督系统 (EMS) 是一个全栈的Web应用程序,旨在提供一个全面的平台,用于环境事件的报告、监控、管理和分析。系统支持多角色访问,包括管理员、决策者、网格员、监督员和公众监督员,每个角色都有特定的权限和定制化的用户界面。
✨ 主要功能
- 仪表盘: 为决策者和管理员提供关键指标和数据的可视化概览。
- 网格化地图: 在地图上直观地展示和管理环境监督网格。
- 任务管理: 网格员可以接收、处理和汇报环境监督任务。
- 反馈系统: 公众监督员和监督员可以提交、查看和管理环境问题反馈。
- 系统管理: 管理员可以管理用户信息和查看系统操作日志。
- 个性化设置: 所有用户都可以查看个人信息和操作日志。
- 动态主题: 系统界面颜色会根据用户角色动态变化,提供更好的用户体验。
🛠️ 技术栈
本项目采用前后端分离的架构。
后端 (ems-backend)
- 框架: Spring Boot 3
- 语言: Java 17
- 文件存储: json
- API文档: SpringDoc (Swagger UI)
- 身份认证: Spring Security with JWT
- 构建工具: Maven
前端 (ems-frontend)
- 框架: Vue 3
- 构建工具: Vite
- 语言: TypeScript
- UI 组件库: Element Plus
- 状态管理: Pinia
- 路由: Vue Router
- HTTP客户端: Axios
- 代码风格: Prettier
📁 项目结构
.
├── ems-backend/ # 后端 Spring Boot 项目
│ ├── src/
│ └── pom.xml
├── ems-frontend/ # 前端 Vue.js 项目
│ ├── src/
│ ├── vite.config.ts
│ └── package.json
└── README.md # 项目说明文件
🚀 快速开始
环境准备
- JDK 17 或更高版本
- Maven 3.8 或更高版本
- Node.js 22.x 或更高版本
后端启动
-
进入后端目录:
cd ems-backend -
安装依赖:
mvn install -
运行项目:
mvn spring-boot:run后端服务将启动在默认端口 (通常是
8080)。
前端启动
-
进入前端目录:
cd ems-frontend -
安装依赖:
npm install -
启动开发服务器:
npm run dev前端应用将启动在
http://localhost:5173(或其他Vite指定的端口)。
👥 用户角色
系统预设了以下五种角色,拥有不同的职责和访问权限:
- ADMIN (管理员): 拥有最高权限,可以访问所有功能,包括用户管理和系统设置。
- DECISION_MAKER (决策者): 关注宏观数据,主要访问仪表盘和地图。
- GRID_WORKER (网格员): 负责执行具体任务,主要使用任务管理和地图功能。
- SUPERVISOR (监督员): 负责管理和审查收到的反馈信息。
- PUBLIC_SUPERVISOR (公众监督员): 可以提交环境问题的反馈。
登录后,系统会根据您的角色,展示不同的菜单和界面主题。
Description
Languages
Java
66.5%
Vue
27.4%
TypeScript
5.6%
CSS
0.3%