Создать систему учета расходов и доходов
- Иметь возможно установить начальный/текущий баланс пользователя (на случай если пользователь забыл записать трату)
- Распределять расходы по категориям
- Уметь функционировать категориями, т.е. изменять/кастомизировать категории
- Сохранять данные о расходах/доходах в базе данных
- Выдавать пользователю данные о доходах и расходах по категориям за определенный месяц
Команда /set_balance
User: /set_balance [payment]
Bot: Новый баланс установлен.
Команда /add_expense
User: /add_expense [fee - плата] [category - категория]
Bot: Добавлен расход по категории [category]
Команда /add_income
User: /add_income [fee - доход пользователя] [type - источник дохода:зарплата/перевод]
Bot: Вы успешно добавили доход по источнику: [type]
Команда /report_expense
User: /report_expense [mm.yyyy - месяц+год]
Bot: Подготовил отчёт по вашим расходам за месяц [month]:
За месяц [month] вы потратили:
Продукты: 10000 руб.
Такси: 7000 руб.
Развлечения: 3000 руб.
Другое: 1000 руб.
Команда /add_income_category
User: /add_income_category [category_name]
Bot: Добавлена новая категория доходов …
Команда /add_expense_category
User: /add_expense_category [category_name]
Bot: Добавлена новая категория расходов …
Команда /category_remove
User: /category_remove [category_name]
Bot: Удалена категория расходов
Команда /remove_income_category
User: /remove_income_category [category_name]
Bot: Категория доходов '[category_name]' успешно удалена
Команда /remove_expense_category
User: /remove_expense_category [category_name]
Bot: Категория расходов '[category_name]' успешно удалена
Команда /list_expense_categories
User: /list_expense_categories
Bot: Все доступные вам категории расходов:
Стандартные:
- Супермаркеты
- Аптеки
- Развлечения
- Спорт
- Транспорт
- Рестораны и кафе
Персональные:
...
Команда /list_income_categories
User: /list_income_categories
Bot: Все доступные вам категории Доходов:
Стандартные:
- Зарплата
- Переводы
Персональные:
...
Команда /list_categories
User: /list_categories
Bot: Все доступные вам категории доходов:
Стандартные:
- Зарплата
- Переводы
Персональные:
…
Все доступные вам категории расходов:
Стандартные:
- Супермаркеты
- Аптеки
- Развлечения
- Спорт
- Транспорт
- Рестораны и кафе
Персональные:
…
Создать систему для планирования бюджета
Она позволит пользователя в начале или в течение месяца спланировать месячные доходы и расходы, сравнивать их с теми, что добавлены через функционал в 1-й задаче и показывать, какая месячная сумма осталась на расходы и сколько необходимо еще заработать до указанной в бюджете цели.
- Считать общую сумму доходов, расходов за текущий месяц и предыдущие
- Выдавать количество денег, которое осталось заработать, а также количество денег, которые еще можно потратить для текущего месяца
- Выдавать средние месячные доходы и расходы при запросе бюджетов с нескольких месяцев
- Баланс переноситься с предыдущего месяца на следующий
- Можно создавать и изменять детали бюджета (планируемый доход/расход) на текущий и следующие месяца, но нельзя изменить бюджеты за предыдущие месяцы.
Команда /budget
Команда позволит показать бюджет на текущий месяц. Для планирования ожидаемых доходов и расходов команды указаны ниже.
Текущие доходы и расходы посчитаны суммированием доходов/трат, добавленных функционал из задачи 1, за текущий месяц.
Текущий баланс рассчитывается формулой установленный баланс + доходы - расходы
. Доходы и расходы суммируются либо от
момента установки баланса, либо с начала месяца, в зависимости от того, что произошло позднее.
“Нужно еще заработать” и “Еще осталось на затраты” рассчитаны как дельта между ожидаемыми и текущими доходами/расходами
User: /budget
Bot: Бюджет на Февраль 2023:
Ожидаемые доходы: 60 000
Ожидаемые расходы: 50 000
Текущие доходы: 5 000
Текущие расходы: 6 500
Текущий баланс: 98 500
Нужно еще заработать: 55 000
Еще осталось на траты: 43 500
Для просмотра команд введите /budget_help
Команда /budget_help
User: /budget_help
Bot: Доступные команды для работы с бюджетами:
/budget - показать бюджет за текущий месяц
/budget_list - запланированный бюджет за последние 12 месяцев
/budget_list [год] - запланированные бюджеты за определенный год
/budget_list [нач. мес] [кон. мес] - запланированные бюджеты за определенные месяца
/budget_create [мес] [ож доходы] [ож расходы] - планировать бюджет
Команда /budget_create
User: /budget_create 02.2023 60000 50000
Bot: Бюджет на Февраль 2023 создан.
Ожидаемые доходы: 60 000
Ожидаемые расходы: 50 000
Текущие доходы: 5 000
Текущие расходы: 6 500
Текущий баланс: 98 500
Нужно еще заработать: 55 000
Еще осталось на траты: 43 500
Команда /budget_set_income
User: /budget_set_income 03.2023 65000
Bot: Бюджет на Март 2023 изменен:
Ожидаемые доходы: 65 000
Ожидаемые расходы: 50 000
User: /budget_set_income 65000
Bot: Бюджет на текущий месяц (Февраль 2023) изменен:
Ожидаемые доходы: 65 000
Ожидаемые расходы: 50 000
Текущие доходы: 5 000
Текущие расходы: 6 500
Нужно еще заработать: 60 000
Еще осталось на траты: 43 500
Команда /budget_set_expenses
User: /budget_set_expenses 03.2023 50000
Bot: Бюджет на Март 2023 изменен:
Ожидаемые доходы: 65 000
Ожидаемые расходы: 50 000
User: /budget_set_expenses 55000
Bot: Бюджет на текущий месяц (Февраль 2023) изменен:
Ожидаемые доходы: 65 000
Ожидаемые расходы: 55 000
Текущие доходы: 5 000
Текущие расходы: 6 500
Текущий баланс: 98 500
Нужно еще заработать: 60 000
Еще осталось на траты: 48 500
Команда /budget_list
User: /budget_list
Bot: Ваши запланированные доходы и расходы по месяцам:
Январь 2023
Ожидание: + 80 000 | - 60 000
Реальность: + 75 000 | - 70 364
Февраль 2023 Д 100 000 | Р 70 000 | + 103 000 | - 68 598
…
Декабрь 2023 Д 100 000 | Р 70 000 | + 103 000 | - 68 598
Данные показаны за последние 12 месяцев. Чтобы посмотреть данные, например, за 2022, введите /budget_list 2022.
Для показа данных по определенным месяцам, например, с ноября 2022 по январь 2023 введите /budget_list 10.2022 01.2023
User: /budget_list 2022
Bot: Ваши запланированные доходы и расходы по месяцам:
Январь 2022
Ожидание: + 80 000 | - 60 000
Реальность: + 75 000 | - 70 364
Февраль 2022 Д 100 000 | Р 70 000 | + 103 000 | - 68 598
…
Декабрь 2022 Д 100 000 | Р 70 000 | + 103 000 | - 68 598
Данные показаны на 2022 год.
User: /budget_list 11.2022 02.2023
Bot: Ваши запланированные доходы и расходы по месяцам:
Ноябрь 2022 Д 80 000 | Р 60 000 | + 75 000 | - 70 364
Декабрь 2022 Д 100 000 | Р 70 000 | + 103 000 | - 68 598
Январь 2023 Д 80 000 | Р 60 000 | + 75 000 | - 70 364
Данные показаны за 4 указанных месяца.
- Супермаркеты
- Аптеки
- Развлечения
- Спорт
- Транспорт
- Рестораны и кафе
- Зарплата
- Переводы
- Выдавать средние расходы и доходы по стандартным категориям* в течение месяца (команда /avg_report)
- Выдавать средние месячные общие доходы и расходы по пользователям, оставляя их инкогнито (команда /estimate_report)
Команда /avg_report
User: /avg_report
Bot: Подготовил отчет по категориям со всех пользователей за текущий месяц
Супермаркеты: 13500 руб.
Аптеки: 2542 руб.
Развлечения: 1548 руб.
Спорт: 3244 руб.
Транспорт: 3223 руб
Рестораны и кафе: 3240 руб.
User: /avg_report 10.2023
Bot: Подготовил отчет по стандартным категориям со всех пользователей за Октябрь 2023
Супермаркеты: 2341 руб.
Аптеки: 2352 руб.
Развлечения: 10528 руб.
Спорт: 3243 руб.
Транспорт: 3242 руб
Рестораны и кафе: 3234 руб.
Команда /estimate_report
User: /estimate_report
Bot: Подготовил отчет по средним доходам и расходам пользователей за текущий месяц:
Расходы: 63537 руб.
Доходы: 96234 руб.
User: /estimate_report 10.2023
Bot: Подготовил отчет по средним доходам и расходам пользователей Октябрь 2023:
Расходы: 71538 руб.
Доходы: 105426 руб.