Приложение будет считать расходы через тележного бота, мб потом сделаю открытым
Написано на python, в кач-ве интерфейса бот в telegram, бд sqlite
Команды боту:
- help - show help page
- add_record - add new income or expense record
- del_last_record - delete last record that is not older than 1 hour
- currs_setup - setup currencies
- cats_setup - setup categories
- generate_report - generate report (will be avalible in v2 and above)
- (+) Записи 2 видов: +(income) и -(expense)
- (+) Возможность оставить текстовый коммент о записи в момент её создания
- (+) Выбор категории кнопкой при создании записи
- (+) Внесение\чтение записей в БД
- (+) Возможность ставить валюту для записи при создании\редактировании (по умолчанию берётся валюта последней записи)
- (+) Добавление\удаление валют. Удалять можно только те у которых нет записей
- (+) Пересчёт в USD по курсу на дату записи (хранить в самой записи)
- Отчёты по времени, категориям (графики?)
- Возможность переводить отчёт (суммировать?) в другую валюту по курсу ЦБ (на дату траты?)
- Возможность редактировать\удалять записи (выбор даты, выбор записи, внести данные заново)
- (+) Динамическое формирование клавиатур (выбираю кол-во столбцов)
-
- (-) мб потом будет пагинация, пока не вижу смысла https://github.com/ksinn/python-telegram-bot-pagination
- (Перенёс из v1) Возможность докидывать и удалять категории. При удалении нужно выбрать категорию - преемника. Дефолтные категории удалить нельзя. ОЧ ОПАСНАЯ ОПЕРАЦИЯ, ТОЛЬКО СУПЕРАДМИНАМ
- ! Возможность установки лимита на день и алерт при приближении к нему
- Разворачивание в докере через ansible roles, должно ставиться одной командой + переменные при установке
- Выкатывание образа на DockerHub через GitHub actions
- Возможность не учитывать движения денег по определённым записям (к примеру в долг)
- Графа "не учитываемые расходы" в отчётах
- Возможность выводить "состояния" разных масс денег (зп, траты, накопления, долги\должны вернуть, кредиты и т.п.)
- Настраиваемые регулярные отчёты (раз в день\неделю\месяц)
- Интеграция с банками
- хочу создать запись
- хочу вывести отчёт
- вызываем бота /add_record
- выпадают кнопки доход\расход (income\expense)
- после нажатия меняется на категории
-
- v2 после нажатия меняется на валюты (можно не менять, показывает нынешнюю)
- можно сразу вбить сумму и коммент одним сообщением (Пример: 1350 бананы это классно)
- после отправки сообщения приходит собранная инфа по записи, запрос на подтверждение (отключаемо), подтверждаем, запись улетает в базу
- вызываем бота /generate_report
- to_be_written
- records (1 таблица = 1 юзер, user_id)
- categories (название, income\expense)
- currencies (название, трёхбуквенное обозначение)
- user_id (кто прислал запись)
- category (ссыль на одну из категорий)
- date (таймштамп)
- currency (RUB\USD\KTG)
- amount (int)
- comment (произвольная строка до 100 символов)