Skip to content

sosadwaden/vacation-pay-calculator-TestTask

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

vacation-pay-calculator-TestTask

Тестовое задание для учебного центра Neoflex, 2024

Техническое задание

Приложение "Калькулятор отпускных". Микросервис на SpringBoot + Java 11 c одним API: GET "/calculacte"

Минимальные требования: Приложение принимает твою среднюю зарплату за 12 месяцев и количество дней отпуска - отвечает суммой отпускных, которые придут сотруднику. Доп. задание: При запросе также можно указать точные дни ухода в отпуск, тогда должен проводиться рассчет отпускных с учётом праздников и выходных.

Проверяться будет чистота кода, структура проекта, название полей\классов, правильность использования паттернов. Желательно написание юнит-тестов, проверяющих расчет.

Используемые технологии

  • Java 17
  • Maven
  • SpringBoot
  • SpringMVC
  • jUnit
  • MockMvc
  • Swagger
  • Docker

API

Запрос со средней зарплатой и количеством дней отпуска:
http://localhost:7070/calculate?vacationDays=28&averageSalary=40000
Response:

{ 
    "message": "The amount of vacation pay (without NDFL)",
    "vacationPay": 33256.32
}

Запрос со средней зарплатой и датами отпуска:
http://localhost:7070/calculate?vacationDays=28&startDateOfVacation=2024-01-01&endDateOfVacation=2024-01-30
Response:

{
    "message": "The amount of vacation pay (without NDFL)",
    "vacationPay": 19003.04
}

Docker

Собрать проект:

mvn clean package

Собрать docker image:

docker build -t vacation-pay-calculator .

Запустить docker container:

docker run -p 7070:8080 vacation-pay-calculator

Остановить docker container:

docker stop vacation-pay-calculator

Swagger документация

Swagger-ui:
http://localhost:7070/swagger-ui/index.html swaggerui

Api docs:
http://localhost:7070/v3/api-docs apidocs

Postman

Запрос со средней зарплатой и количеством дней отпуска:
request1 Запрос со средней зарплатой и датами отпуска:
request2

About

Тестовое задание для учебного центра Neoflex, 2024

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published