ГДПБЗН - Система за управление на произшествия
Система за управление на произшествия и пожарни екипи
Главна дирекция "Пожарна безопасност и защита на населението" (ГДПБЗН) е част от Министерството на вътрешните работи на Република България. Тази система е предназначена да подпомогне основните оперативни дейности в ежедневната работа на пожарникарите, включително управление на произшествия, координация на екипи, комуникация и ресурси.
Роля
Описание
Администратор
Пълен достъп до системата, управление на потребители, роли и станции
Мениджър произшествия
Управление на произшествия, разрешаване, маркиране на фалшиви сигнали
Диспечер
Създаване на произшествия, назначаване на екипи, комуникация
Пожарникар
Оперативен персонал, достъп до табло, произшествия, екипи, комуникации, ресурси
Потребител
Докладване на произшествия, преглед на своите доклади
Модул
Описание
Табло
Общ преглед на активни произшествия, налични екипи, успеваемост и спасени животи
Произшествия
Създаване, преглед, редактиране, разрешаване и изтриване на произшествия
Екипи
Управление на пожарни екипи, назначаване на членове, автоматичен статус
Операции
Интерактивна карта с произшествия и екипи, назначаване на екипи от картата
Комуникации
Чат канали, видео обаждания, известия, спешни съобщения
Ресурси
Управление на ресурси в станциите, преместване и премахване
Доклади
Анализи, статистики, ефективност на екипите
Потребители
Управление на потребители, роли, станции (само за администратори)
Профил
Лична информация, смяна на парола, профилна снимка
Автоматичен статус на екипите - Определя се на база активни произшествия
Карта с местоположение - Интерактивна карта с маркери за произшествия и екипи
Станции - 3 станции в София (Център, Люлин, Младост)
Препоръчани екипи - При произшествие се показват екипи от най-близката станция
Фалшиви сигнали - Маркиране и автоматично предупреждение за потребителя
Прикачени файлове - Качване на снимки и документи към произшествия
Тъмна тема - Поддръжка на светла и тъмна тема
Технология
Версия
Описание
Python
3.10+
Основен език за програмиране
Flask
2.3.3
Микроуеб框架
Flask-SQLAlchemy
3.1.1
ORM за база данни
Flask-Login
0.6.2
Управление на сесии и потребители
Flask-Migrate
4.0.5
Миграции на база данни
Flask-SocketIO
5.3.6
Реално-времева комуникация
SQLite
-
Основна база данни (разработка)
PostgreSQL
-
Препоръчва се за продукция
Технология
Описание
Bootstrap 5
CSS framework
Leaflet.js
Интерактивни карти
Chart.js
Графики и статистики
Socket.IO
Реално-времеви чат
Font Awesome
Икони
Инструмент
Описание
Celery
Фонови задачи
Redis
Брокер за Celery
Gunicorn
WSGI сървър за продукция
Docker
Контейнеризация
Python 3.10 или по-нова версия
pip (Python package manager)
Git
1. Клониране на репозиторито
git clone https://github.com/your-username/gdpozharna-system.git
cd gdpozharna-system
2. Създаване на виртуална среда
# Windows
python -m venv venv
venv\S cripts\a ctivate
# macOS / Linux
python3 -m venv venv
source venv/bin/activate
3. Инсталиране на зависимости
pip install -r requirements.txt
4. Конфигурация на средата
Създайте .env файл в основната директория:
FLASK_APP = run.py
FLASK_ENV = development
SECRET_KEY = your-super-secret-key-here
DATABASE_URL = sqlite:///instance/gdpozharna.db
5. Инициализиране на база данни
# Създайте instance папката
mkdir instance
# Стартирайте приложението (създава базата автоматично)
python run.py
6. Създаване на администратор
При първо стартиране се създава автоматично администраторски потребител:
7. Стартиране на приложението
Приложението ще бъде достъпно на: http://localhost:5000
gdpozharna-system/
├── app/
│ ├── api/ # API endpoints
│ ├── blueprints/ # Flask blueprints
│ │ ├── admin/ # Административен модул
│ │ ├── auth/ # Автентикация
│ │ ├── communications/ # Комуникации
│ │ ├── dashboard/ # Табло
│ │ ├── incidents/ # Произшествия
│ │ ├── main/ # Публични страници
│ │ ├── operations/ # Операции
│ │ ├── profile/ # Профил
│ │ ├── reports/ # Доклади
│ │ ├── resources/ # Ресурси
│ │ └── teams/ # Екипи
│ ├── config/ # Конфигурационни файлове
│ ├── forms/ # Формуляри
│ ├── models/ # Модели на база данни
│ ├── services/ # Бизнес логика
│ ├── static/ # Статични файлове
│ │ ├── css/ # Стилове
│ │ ├── images/ # Изображения
│ │ ├── js/ # JavaScript
│ │ └── uploads/ # Качени файлове
│ ├── templates/ # HTML шаблони
│ └── utils/ # Помощни функции
├── instance/ # База данни (SQLite)
├── logs/ # Лог файлове
├── migrations/ # Миграции на база данни
├── tests/ # Тестове
├── venv/ # Виртуална среда
├── .env # Конфигурация на средата
├── .gitignore # Git ignore файл
├── config.py # Конфигурация на приложението
├── README.md # Документация
├── requirements.txt # Зависимости
└── run.py # Точка на вход
Функция
Админ
Мениджър произшествия
Диспечер
Пожарникар
Потребител
Табло
✅
✅
✅
✅
❌
Произшествия - преглед
✅
✅
✅
✅
❌
Произшествия - създаване
✅
✅
✅
✅
✅
Произшествия - редактиране
✅
✅
✅
❌
❌
Произшествия - разрешаване
✅
✅
❌
❌
❌
Произшествия - изтриване
✅
❌
❌
❌
❌
Екипи
✅
✅
✅
✅
❌
Операции
✅
✅
❌
❌
❌
Комуникации
✅
✅
✅
✅
❌
Ресурси
✅
✅
❌
❌
❌
Доклади
✅
✅
❌
❌
❌
Потребители
✅
❌
❌
❌
❌
Профил
✅
✅
✅
✅
✅
# Активиране на виртуалната среда
venv\S cripts\a ctivate # Windows
source venv/bin/activate # macOS / Linux
# Стартиране
python run.py
# Инсталиране на Gunicorn
pip install gunicorn
# Стартиране
gunicorn -w 4 -b 0.0.0.0:8000 " app:create_app()"
# Изграждане на Docker образ
docker build -t gdpozharna .
# Стартиране на контейнер
docker run -p 5000:5000 gdpozharna
Другите роли (Мениджър произшествия, Диспечер, Пожарникар) трябва да бъдат създадени от администратор чрез интерфейса.
Този проект е собственост на Главна дирекция "Пожарна безопасност и защита на населението" (ГДПБЗН).
Канал
Информация
Спешен телефон
112
Имейл
gdpbzn@mvr.bg
Адрес
София, България