/TaskService

Сервис по управлению задачами по типу ежедневника.

Primary LanguageJava

TaskService

Сервис по управлению задачами по типу ежедневника

Описание приложения

Консольное приложение, в которое можно заносить новые задачи через консоль, удалять задачи, получать список всех задач на день с помощью методов.

Каждая задача обязательно имеет заголовок. У каждой задачи может быть поле для описания. Также, все задачи разделены по типу: личные или рабочие задачи. У каждой задачи есть дата и время, которые были присвоены при создании.

Для более гибкого управления задачами есть поле id.

Кроме того, в ежедневнике задачи разная повторяемость, которую можно указать при создании задачи:

  • однократная,
  • ежедневная,
  • еженедельная,
  • ежемесячная,
  • ежегодная.

У каждой повторяемости есть метод для получения следующей даты и времени выполнения.

Заголовок, описание, тип и признак повторяемости обязательны к заполнению (Если вышеперечисленные данные (заголовок, описание, тип и признак повторяемости) не заполнены или заполнены некорректно, то происходит выброс соответствующего исключения)

Все задачи хранятся в коллекции Map с ключом в виде id задачи.

Управление задачами осуществляется через консоль и класс Scanner.

Реализацию следующего функционала:

  • Ввод с консоли осуществляется через класс Scanner.
  • Каждой задаче присваивается id.
  • Можно выбрать тип задачи: личная или рабочая.
  • Реализована функция повторяемости задачи:
    • однократная,
    • ежедневная,
    • еженедельная,
    • ежемесячная,
    • ежегодная.
  • Обработаны ошибки при вводе некорректных данных.

В сервисе добавлены методы:

  • Добавить задачу,
  • Получить задачи на день.
  • Удалить задачу по id.

Использован следующий стек технологий:

Приложение выполнено в виде консольного
Java11

Выполнил задание - Алексей Петкун

Typing SVG