яндекс
#yandex
Прислать задачу | Подписаться
public interface UserNotificationApi {
void sendCode(String orderId, String code);
}
/**
* Постамат - автоматическая станция приёма/выдачи посылок.
* В маркете формируются заказы, и хочется добавить возможность получения через постамат.
* Запускаем MVP: небольшая аудитория пользователей, несколько постаматов в Москве.
* При заказе пользователь сможет выбрать, что хочет получить заказ в постамате.
* <p>
* В рамках задачи нужно реализовать код для MVP решения:
* - курьер привозит заказ и пробует положить его в ячейку, указывая номер заказа. Постамат сам выбирает ячейку и возвращает в ответ. Она откроется вызывающим этот метод кодом.
* - после того, как заказ положили в ячейку, пользователю отправляется СМС c кодом получения. Заказ будет ждать вечно
* - в случае любых ошибок - курьер забирает заказ назад и попробует положить заказ в ячейку на следующий день (для MVP это ок)
* - пользователь может получить заказ по коду выдачи из СМС. При вводе кода выдачи постамат должен вывести на экран текст "ваш заказ ХХХ в ячейке YYY", ячейка откроется сама.
* <p>
* Ограничения:
* - все ячейки одного размера, но их может быть разное количество, зависит от конкретного постамата
* - один заказ - одна коробка, она влезает в ячейку
* - ячейки каждого постамата пронумерованы
* - каждый постамат сам хранит своё состояние
* <p>
* Для отправки сообщения пользователю надо использовать клиент UserNotificationApi.
*/
public class PostalBox {
public ??? placeOrder(??? orderId) {
}
public ??? getOrder(??? receiveCode) {
}
}
#yandex
Прислать задачу | Подписаться
👍12