Skip to content

callmehorhe/konstanta

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Konstanta

Тестовое задание в компанию "Константа"

Реализация эмулятора платежного сервиса. Тестовое задание заключается в разработке сервиса, который принимает запросы через REST API.

Функции

  • Создание платежа
  • Изменение статуса платежа платежной системой
  • Проверка статуса платежка по ID
  • Получение списка всех платежей пользователя по его ID
  • Получение списка всех платежей пользователя по его e-mail
  • Отмена платежа по его ID

Создание платежа

POST http://localhost:8080/create

В качестве входных данных передаются следующие параметры:

  • user_id
  • email
  • amount
  • currency

На выходе получаем сообщение об успешном создании платежа при корректно введеных данных.
Платеж по умолчанию создается со статусом НОВЫЙ.
Если сумма платжа меньше 100, платежу присваивается статус ОШИБКА.

Изменение статуса платежа платежной системой

PUT http://localhost:8080/update

Для изменения статуса платежной системой требуется авторизация.
Для авторизации требуется, чтобы в хэдере "authorization" было значение "mySecretToken"

image
Для изменения платежа требуется передать ID платежа и статус.
Платежная система устанавливает статус УСПЕХ или НЕУСПЕХ, если такое возомжно.
После установки статуса платежной системой, изменение статуса становится недоступным.

Проверка статуса платежка по ID

GET http://localhost:8080/status/:tid

ID платежа указывается в адресной строке.
В качестве ответа получаем сообщение со статусом указанного платежа.

Получение списка всех платежей пользователя по его ID

POST http://localhost:8080/payments/id

В качестве входных данных требуется ID пользователя.
На выходе получаем все платежи, которые проводились с указанным ID.

Получение списка всех платежей пользователя по его e-mail

POST http://localhost:8080/payments/email

В качестве входных данных требуется email пользователя.
На выходе получаем все платежи, которые проводились с указанным email.

Отмена платежа по его ID

PUT http://localhost:8080/cancel

В качестве входных данных требуется ID платежа.
Если платеж имеет статус УСПЕХ или НЕУСПЕХ, смена статуса становится невозможной и возвращается сообщение об ошибке.

Docker

В проекте есть файл docker-compose для того, чтобы сервис можно было проще развернуть.

docker-compose up

Далее взаимодействовать с сервисом можно через порт :8080.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published