DobariyaHarsh/Flutter-based-Smart-Emergency-Response-Incident-Reporting-App3

GitHub: DobariyaHarsh/Flutter-based-Smart-Emergency-Response-Incident-Reporting-App3

一款基于 Flutter 的离线优先移动应用,用于报告、跟踪和管理紧急事件,支持优先级排序、管理员仪表板和数据可视化。

Stars: 0 | Forks: 0

# 🚨 RespondNow — 智能应急响应与事件报告应用 一款基于 Flutter 的移动应用,用于报告、跟踪和管理紧急事件,并提供**离线优先**支持。 ## 📁 项目结构 ``` lib/ ├── main.dart # App entry point ├── models/ │ └── incident_model.dart # Incident data model + enums ├── providers/ │ ├── incident_provider.dart # Incident state management (Provider) │ └── app_provider.dart # Connectivity + admin mode state ├── services/ │ └── hive_service.dart # Hive local storage (offline-first) ├── utils/ │ ├── app_theme.dart # Dark theme + color system │ ├── constants.dart # Responders list, locations, admin PIN │ └── helpers.dart # Date formatting, snackbars, dialogs ├── screens/ │ ├── splash_screen.dart # Animated splash (Screen 0) │ ├── main_navigation_screen.dart # Bottom nav shell │ ├── home_screen.dart # Dashboard (Screen 1) │ ├── report_incident_screen.dart # Report form (Screen 2) │ ├── incident_list_screen.dart # Incident list (Screen 3) │ ├── incident_detail_screen.dart # Detail view (Screen 4) │ ├── admin_dashboard_screen.dart # Admin panel (Screen 5) │ └── search_filter_screen.dart # Search & filter (Screen 6) └── widgets/ ├── incident_card.dart # Reusable incident card ├── priority_badge.dart # Color-coded priority badge ├── status_chip.dart # Status indicator chip └── stat_card.dart # Dashboard stat card ``` ## 🛠️ 设置说明 ### 前置条件 - Flutter SDK ≥ 3.4.0 - Dart SDK ≥ 3.4.0 - Android Studio / VS Code 并安装 Flutter 扩展 ### 步骤 1. 在此目录下**创建一个新的 Flutter 项目**: flutter create --org com.emergency --project-name emergency_response_app . 2. 使用提供的文件**替换** `pubspec.yaml`(已完成)。 3. 使用提供的文件**替换** `android/app/build.gradle`(已完成)——设置 `minSdk 21`。 4. **安装依赖:** flutter pub get 5. **运行应用:** flutter run ## ✨ 功能 | 功能 | 详细说明 | |---|---| | **事件报告** | 标题、描述、类别(6种)、优先级(4级)、位置(手动 + 模拟 GPS) | | **唯一事件 ID** | 自动生成格式:`INC-YYYY-XXXXXXXX` | | **事件跟踪** | 状态:已报告 → 进行中 → 已解决 | | **管理员仪表板** | 查看全部、更新状态、分配响应人员、更改优先级、删除 | | **优先级排序** | 紧急 → 高 → 中 → 低,然后按时间排序 | | **图表** | 饼图(优先级分布)、条形图(类别细分) | | **搜索与过滤** | 按关键字、ID、状态、优先级、类别 | | **离线优先** | Hive 本地存储、同步标志、重新连接时自动同步 | | **颜色编码** | 🔴 紧急 / 🟠 高 / 🟡 中 / 🟢 低 | ## 🔐 管理员访问 - 导航至底部导航栏中的 **Admin** 标签页 - 输入 PIN 码:**`1234`** - 管理员可以更新状态、分配响应人员、更改优先级以及删除事件 ## 📦 依赖项 | 包 | 用途 | |---|---| | `provider` | 状态管理 | | `hive` + `hive_flutter` | 本地(离线)存储 | | `connectivity_plus` | 网络检测 + 自动同步 | | `uuid` | 唯一事件 ID 生成 | | `intl` | 日期/时间格式化 | | `fl_chart` | 仪表板图表 | | `google_fonts` | 排版 | ## 🎨 颜色系统 | 优先级 | 颜色 | |---|---| | 紧急 | `#EF4444` (红色) | | 高 | `#F97316` (橙色) | | 中 | `#EAB308` (黄色) | | 低 | `#22C55E` (绿色) | | 状态 | 颜色 | |---|---| | 已报告 | `#3B82F6` (蓝色) | | 进行中 | `#F97316` (橙色) | | 已解决 | `#22C55E` (绿色) |
标签:CSV输出, Dart, Flutter, Hive, MVC架构, Provider, SOS报警, 事件报告, 事件追踪, 仪表盘, 公共安全, 后台管理面板, 响应式设计, 安卓开发, 应急管理, 无网络支持, 暗色主题, 本地存储, 灾难响应, 状态管理, 离线优先, 移动应用, 移动端开发, 紧急救援, 跨平台开发, 过滤器