This commit is contained in:
ChuXun
2025-10-25 19:18:43 +08:00
parent 4ce487588a
commit 02a830145e
3971 changed files with 1549956 additions and 2 deletions

110
README.md Normal file
View File

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