Программа для учёта коммунальных платежей
Решил поделиться программой, которую сделал для себя, чтобы упорядочить учёт коммуналки. Показания счётчиков, тарифы, расчёты — написал небольшую программу на Python (собрал в exe). Ну как написал, сделал полностью с помощью нейросети. Заняло 5 дней запросов и корректировок, вышло около 6000 строк кода. Полный вайб-кодинг, первый опыт в этом направлении, делал больше ради интереса и нового опыта :-)
Что умеет программа
Несколько объектов недвижимости. Можно добавить квартиру, дачу, гараж — переключаться между ними в один клик.
Учёт по годам и месяцам. Для каждого объекта свои вкладки с годами, внутри таблица на 12 месяцев. Есть контекстное меню для быстрых операций.
Гибкий расчёт электроэнергии. Поддерживает два режима: единый тариф (TOTAL) и двухтарифный (T1/T2). Можно задать порог потребления (по умолчанию 150 кВт·ч) и тарифы «до» и «свыше».
Водоснабжение (ХВС и ГВС), газ, водоотведение — всё считается автоматически на основе разницы показаний.
Фиксированные платежи — квартплата, капремонт, вывоз мусора, интернет. Достаточно задать сумму, и она будет подставляться каждый месяц.
Пользовательские услуги. Можно добавить любые дополнительные платежи (например, охрана, домофон) и указать, в какие месяцы они действуют.
Фиксация месяцев. Когда данные за месяц введены и проверены, можно «зафиксировать» месяц. Тогда все суммы и тарифы на этот момент сохраняются, и даже если позже поменять тарифы, расчёт за этот месяц останется прежним. В таблице такие месяцы выделяются зелёным и помечаются замочком.
Графики. Встроен простой просмотр графиков: потребление ресурсов по месяцам, динамика итоговой суммы, структура платежей за год.
Экспорт в Excel. Можно выгрузить данные по одному или нескольким объектам. Каждый год выносится на отдельный лист, форматирование автоматическое, подписи понятные.
Заметки. Под таблицей есть поле для текстовых заметок (например, «поверка счётчика в марте»). Заметки привязаны к году и сохраняются автоматически.
Резервное копирование. Программа сама создаёт бэкапы данных (можно настроить интервал), перед критическими операциями тоже делает копию. Есть окно управления резервными копиями — можно посмотреть список, восстановиться, удалить старые.
Логирование. В папке программы хранятся логи — на случай, если что-то пойдёт не так, можно посмотреть ошибки.
Окно ввода показаний. Открывается при двойном клике на месяц. Показывает предыдущие показания, контролирует, чтобы новые не были меньше старых.
Редактор тарифов. Вкладки для электроэнергии, воды, газа, стандартных и пользовательских платежей. Если есть зафиксированные месяцы с электроэнергией или ГВС, соответствующие настройки блокируются.
Графики. Пример графика потребления электроэнергии по месяцам или круговой диаграммы структуры расходов за год.
Диалог экспорта в Excel. Выбор объектов для выгрузки, кнопка открыть папку с экспортированными файлами.
Управление резервными копиями. Список бэкапов с датами и размерами, кнопки создания, восстановления, удаления.
Программа написана на Python с использованием PyQt5 для интерфейса, openpyxl для экспорта в Excel, matplotlib для графиков. Для удобства я скомпилировал её в единый exe-файл (с помощью PyInstaller). Ничего дополнительно устанавливать не нужно — работает на Windows 7/10/11.
Данные хранятся в папке data рядом с программой (в подпапках объектов). Все файлы — в формате JSON, так что при желании можно посмотреть или отредактировать вручную.
Надеюсь, кому-то пригодится так же, как мне.
Ссылка на скачивание с DropBox
В архиве UtilityBilling.exe - сама программа, запускается без установки.
main. py - код на Python, кому интересно.
Папка _internal - библиотеки для работы программы.













