Skip to content

Latest commit

 

History

History
45 lines (29 loc) · 4.25 KB

File metadata and controls

45 lines (29 loc) · 4.25 KB

"Приложение для учета расходов"

На странице настроек можно заводить категории, и у каждой могут быть подкатегории (вложенность категорий можно ограничить 2, но, если очень хочется, то можно и не ограничивать) В каждую категорию или подкатегорию на определенную дату можно вносить сумму которую пользователь потратил, если в подкатегории есть расходы, то они должны учитываться и в категории.

Например: Категория "Машина" имеет 2 подкатегории:

  1. "Сервис"
  2. "Заправка"

Если на одно и тоже число на "сервис" потрачено 20 единиц, а на "заправку" 10 единиц, то суммарные затраты на это число для категории "машина" должны быть 20 + 10 =30 единиц. Если на это число пользователь не выбрал подкатегорию и занес затраты 5 единиц просто в категорию “машина”, то эти затраты должны тоже учитываться и тогда суммарные затраты - 20 + 10 + 5 = 35 единиц

Нужно иметь возможность выводить расходы за день за неделю за месяц и за произвольный промежуток времени вывод таблицей и диаграммой (pie chart). Таких программ много, для примера можно посмотреть скриншоты приложения

Не стоит возиться с дизайном, можно просто взять 1 из тем с https://bootswatch.com/

Хранение данных должно быть сделано в базе Firebase. База должна быть независимой для каждого пользователя (поддержка авторизации через react-firebase)

Ожидаемые страницы:

  • главная (с заглушкой для не зарегистрированных пользователей)
  • о проекте
  • страница логина / регистрации

Остальные страницы должны быть доступны после авторизации:

  • настройки
  • главная (где можно добавлять доходы и расходы, просматривать данные за последнюю неделю)
  • просмотр данных за неделю/месяц/произвольный период. Просмотр в виде таблицы или диаграммы - период и тип просмотра должен отображаться на урл, чтобы состояние можно было сохранить

При попытке входа на страницу без регистрации должен быть редирект на страницу логина

Задание выполняется в новом репозитории

Критерии оценки

  • приложение поддерживает авторизацию
  • приложение поддерживает создание категорий и под-категорий
  • приложение поддерживает ввод данных
  • приложение поддерживает просмотр статистики
  • приложение хранит данных отдельно для каждого пользователя
  • покрытие кода от 60%
  • приложение доступно для просмотра и проверки на github pages

Задание не проверяется при не соответствии базовым требованиям к заданию