README
Реализовать банкомат в виде RESTful API.
-
Должна быть функция "заправки" денег в банкомат - отправляется количество купюр каждого номинала (например, 10 купюр по "50", 8 по "25" и т.д.). Номиналы бывают: 1, 2, 5, 10, 25, 50.
-
Реализовать метод который принимает сумму для выдачи и возвращает нужные номиналы. Если в банкомате не хватает денег для выдачи - пользователь должен получить сообщение об этом.
Например, если поступил запрос на выдачу 200 грн, а в наличии есть 3 купюры по 50 и 4 по 25, то результат может быть таким: {50 => 3, 25 => 2} или {50 => 2, 25 => 4}.
Количество денег в наличии должно уменьшаться после каждой выдачи.
- Задачу оформить в виде RESTful API, фреймворк - можно выбрать любой который считаете более подходящим для данной задачи. В ShipHawk для API мы используем Grape, поэтому его использование очень предпочтительно.
Installation
По старинке:
bundle && rake db:setup && rails s
Через docker-compose
:
docker-compose run web rake db:setup && docker-compose up
Api
Пополнение:
POST /api/v1/bills
req body example: bills: { 50 => 3, 25 => 2 }
Выдача:
PATCH /api/v1/bills
req body example: total: 200