adbhutp0811/Disaster-Alert-Emergency-Response-System

GitHub: adbhutp0811/Disaster-Alert-Emergency-Response-System

一套基于 Django 的全栈灾害警报与应急响应系统,提供实时灾难预警、SOS 紧急求助、资源地图和救援调度的完整工作流。

Stars: 0 | Forks: 0

``` # 灾害警报与应急响应系统 ``` 一个用于实时灾难警报、SOS 紧急请求和资源管理的全栈 Django Web 应用程序。 ## 功能 - **用户角色**:包含市民、救援人员和管理员,支持基于角色的访问控制 - **警报**:创建、查看并按距离过滤灾难警报 - **SOS 请求**:一键发送带有自动定位的紧急请求 - **资源目录**:包含医院、避难所、警察局的地图视图 - **紧急联系人**:管理个人紧急联系人 - **交互式地图**:使用 Leaflet.js 地图展示警报和资源 - **REST API**:提供用于移动客户端集成的 DRF endpoint - **救援人员仪表盘**:管理警报、SOS 请求和资源 ## 技术栈 - **后端**:Django 6.0 - **数据库**:MySQL - **地图**:Leaflet.js + OpenStreetMap - **UI**:Bootstrap 5 - **API**:Django REST Framework ## 设置说明 ### 1. 创建 MySQL 数据库 ``` CREATE DATABASE disaster_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ``` 如有需要,请更新 `disaster_system/settings.py` 中的数据库凭据。 ### 2. 安装依赖 ``` pip install -r requirements.txt ``` ### 3. 运行数据库迁移 ``` python manage.py makemigrations accounts alerts sos resources python manage.py migrate ``` ### 4. 填充示例数据 ``` python manage.py seed_data ``` 这将创建: - **管理员**:admin / admin123 - **救援人员**:responder1 / responder123 - **市民**:citizen1 / citizen123 - 示例警报、资源和 SOS 请求 ### 5. 运行服务器 ``` python manage.py runserver ``` ### 6. 访问应用程序 - Web App:http://127.0.0.1:8000/ - 管理面板:http://127.0.0.1:8000/admin/ - API:http://127.0.0.1:8000/api/ ## 项目结构 ``` disaster_system/ ├── accounts/ # Custom user model, emergency contacts, auth views ├── alerts/ # Disaster alert CRUD, proximity filtering ├── sos/ # SOS request submission and management ├── resources/ # Emergency resource directory ├── api/ # Django REST Framework endpoints ├── templates/ # All HTML templates with Bootstrap ├── static/ # Static files ├── disaster_system/ # Django project settings ├── requirements.txt └── README.md ``` ## API Endpoint - `GET/POST /api/alerts/` - 列出/创建警报 - `GET/POST /api/sos-requests/` - 列出/创建 SOS 请求 - `GET/POST /api/resources/` - 列出/创建资源 - `GET/POST/PUT/DELETE /api///` - 详情 endpoint
标签:Django, React, Syscalls, WebSockets, 应急救援, 灾难预警