##README
#Задание финального проекта.
Необходимо разработать REST сервер, который имеет следующий функционал:
Приложение хранит информацию о сотрудниках компании и позволяет вести учет рабочего времени.
В базе данных должны храниться данные о:
- Сотрудниках,
- Должностях сотрудников,
- Отделе в котором работает сотрудник,
- Событие (рабочий день, техническая учеба),
- Статусе сотрудника (больничный, работает, отпуск)
Должны быть реализованы 3 уровня доступа к системе:
-
Администратор - доступ ко всему функционалу (управление ролями, назначение модераторов и т.д.)
-
Модератор - управление данными о сотрудниках (создание, редактирование и т.д.) и рабочих часах
-
Сотрудник - только чтение данных о себе и своем рабочем времени.
У каждого сотрудника должна быть часовая ставка. Первого числа каждого месяца, система должна авооматичкски подсчитывать зарплату сотрудника и сохранять ее.Расчетный лист должен автоматически отправляться сотруднику.
Необходимо реализовать возможность получения данных о зп сотрудника за любой период.
Событие - модератор создает событие
Указывает тип события
Указывает список сотрудников, которые принимают участие и количество часов для каждого из сотрудников.
Данные об отработанных часах суммируются в месячные отработанные часы.
Технологически стек:Java, SQL, Spring (MVC, DATA, SECURITY),spring boot, Maven, MySQL, Git, Swagger, Liquidbase. Приложение должно быть развернуто на удаленном сервере (Heroku, AWS, etc.). Результатом выполнения задачи должен быть отдельный репозиторий с описание задачи, документацией по проекту, UML диаграммой проекта и ссылкой на сервер.
По желанию, разрешается реализовать клиентскую часть приложения - front end с использованием любой frontend технологии.
На выполнение проекта - 3 недели!