Fixit: учет дефектов для выездных бригад
Доска задач на Python без зависимостей с фото, историей, сообщениями и PDF-отчетами для выездных бригад
Легкое веб-приложение (HTTP-сервер из стандартной библиотеки Python + SQLite + ванильный JS), с помощью которого монтажные бригады фиксируют и устраняют дефекты на шкафах управления наружным освещением и объектах: задачи...
Легкое веб-приложение (HTTP-сервер из стандартной библиотеки Python + SQLite + ванильный JS), с помощью которого монтажные бригады фиксируют и устраняют дефекты на шкафах управления наружным освещением и объектах: задачи с ячейками для фото, привязка к пользователю, история перемещений и изменений, личные сообщения и лента событий, админ-панель за кодом с удержанием кнопки, ежечасные бэкапы БД и экспорт в PDF формата A4 в альбомной ориентации через ReportLab.
Развернуто три варианта (2025 SHNO, 2025 AXP1-4, 2026 универсальный) через Docker и systemd/nginx.
Что умеет
- Список задач с добавлением, правкой, перемещением, удалением и восстановлением мягко удаленных
- Ячейки для фото в каждой задаче с масштабированием и сжатием на сервере
- Полная история изменений со сгруппированным видом и очисткой из админки
- Регистрация пользователей по имени, скрытие/восстановление/удаление пользователей админом, экспорт архива
- Личные сообщения и лента событий на long-poll
- Экспорт отчета в PDF (таблицы A4 в альбомной ориентации с изображениями, кириллические шрифты)
- Ограничение частоты правок, ежечасные бэкапы SQLite, healthcheck
Намеренно свободный от зависимостей бэкенд (HTTP-сервер из stdlib), который при этом дает авторизацию, бэкапы, экспорт в PDF и сообщения в ~2,7 тыс. строк; пример прагматичного инструмента, быстро сделанного для реальных бригад.
Нужно что-то похожее?
Делаю это вживую на звонке в Zoom / Яндекс Телемост, вы смотрите на экран, таймер останавливается по вашему слову. Первые 15 минут бесплатно.