maryamsadaqat/Emergency-Response-System
GitHub: maryamsadaqat/Emergency-Response-System
一个基于 PHP 和 MySQL 的角色制应急响应管理系统,通过规范化至 BCNF 的数据库设计实现事件报告、团队派遣、资源追踪和医院床位管理等应急协调功能。
Stars: 0 | Forks: 0
# 应急响应与灾难管理系统
一个基于角色的网络平台,用于管理紧急事件、响应团队、医院和资源。作为 DBMS 项目构建,在 PHP 和 MySQL 技术栈上实现了完全规范化(BCNF)的关系数据库。
## 概述
用一个统一的平台取代分散的、基于纸质文档的应急协调方式:
- 公民报告事件并追踪其状态。
- 工作人员(医生、消防员、警察、护理人员)查看分配的事件并记录行动/通信。
- 管理员派遣团队、分配资源、管理医院床位并生成报告。
## 功能
- 基于角色的访问控制(管理员 / 公民 / 工作作人员)
- 事件报告、追踪和状态管理
- 具有实时状态的响应团队派遣
- 资源追踪(车辆、设备、医疗物资)
- 医院和床位占用管理
- 带有审计追踪的事件和通信日志
- 包含 KPI 和报告的管理员仪表板
- 实时天气小部件(OpenWeatherMap API)和励志名言(Quotable API)
- 29 张表的关系 schema,已规范化至 BCNF
## 技术栈
| 层级 | 技术 |
|---|---|
| 前端 | HTML5, CSS3, Font Awesome 6.4 |
| 后端 | PHP 8.2 |
| 数据库 | MySQL 8.0 (InnoDB, 29 张表) |
| 服务器 | XAMPP (Apache + MySQL) |
| API | OpenWeatherMap, Quotable.io |
## 数据库设计
包含 29 个实体,具有 EER 特化(`User -> Admin/Citizen/Staff`,`Staff -> Doctor/Firefighter/Police_Officer/Paramedic`,`Resource -> Vehicle/Equipment/Medical_Supply`),用于多对多关系的桥接表,以及弱实体/关联实体。从 UNF 到 BCNF 完全规范化。
EER 图包含在 `EER_Diagram.drawio` 文件中 —— 可在 https://app.diagrams.net/ 打开。
## 快速开始
1. 将其克隆到您的 XAMPP `htdocs` 文件夹中,命名为 `emergency_response/`:
```
git clone https://github.com//emergency-response-system.git
```
2. 在 XAMPP 中启动 Apache 和 MySQL。
3. 在 phpMyAdmin 中创建一个名为 `emergency_db` 的数据库,并从 `database/` 目录导入 schema/种子数据。
4. 在 `config.php` 中配置您的数据库凭据和 OpenWeatherMap API 密钥。
5. 访问 `http://localhost/emergency_response/`。
## 用户角色
| 角色 | 权限 |
|---|---|
| 管理员 | 完全访问权限 — 事件、团队、资源、工作人员、医院、报告 |
| 工作人员 | 分配的事件、日志、团队/资源状态 |
| 公民 | 报告并追踪自己的事件 |
标签:EER建模, ffuf, OpenVAS, PHP, Syscall, Web开发, 应急响应管理系统, 数据库课程项目, 角色权限控制