Задание Провести код-ревью разработанного микросервиса Условие Разработчику была поставлена задача реализовать микросервис заказов для интернет-магазина в виде API. Микросервис должен содержать три API метода: для создания заказа, завершения заказа и получения информации и последних заказах. Описание методов: Создание новых заказов Сигнатура:
{
"sum": 1000, //общая сумма заказа
"contractorType": 1, // тип контрагента (юридическое/физическое лицо)
"items": [
{
"productId": 1, // ID товара
"price": 1000, // стоимость товара
"quantity": 1 // количество
},
//...
]
}При создании заказа генерируется уникальный номер в формате {год|2020}-{месяц|09}-{порядковый номер заказа}. Например 2020-09-12345 После создания заказа физических лиц должно редиректить на страницу оплаты http://some-pay-agregator.com/pay/{номер заказа}
Завершение заказа с проверкой оплаты Метод осуществляет проверку факта оплаты для показа пользователю и по результату пользователь должен увидеть либо страницу благодарности, либо напоминание о необходимости оплаты. Для юридических лиц - проверка факта оплаты через отдельный микро-сервис (реализация обращения к микросервису на код ревью не представлена) Для физических - проверка через флаг оплаты, поле в БД (данные попадают в базу через внешний микросервис, реализация обмена данными на код ревью не представлена). Получения информации о N последних заказах Метод должен возвращать информацию о заданном количестве заказов в формате:
[
{
"id": "2020-09-123456", // номер заказа
"sum": 1000, //общая сумма заказа
"contractorType": 1, // тип контрагента (юридическое/физическое лицо)
"items": [
{
"productId": 1, // ID товара
"price": 1000, // стоимость товара
"quantity": 1 // количество
},
//...
]
},
// ...
]