Микросервис для работы с балансом пользователей (зачисление средств, списание средств, перевод средств от пользователя к пользователю, а также метод получения баланса пользователя). Сервис должен предоставлять HTTP API и принимать/отдавать запросы/ответы в формате JSON.
-
Запуск postgres container:
make postgres
-
Создание balance_db database:
make createdb
-
Запуск db migration up all versions:
make migrateup
-
Запуск db migration down all versions:
make migratedown
-
Генерация SQL CRUD с помощью sqlc:
make sqlc
-
Запуск сервера:
make server
-
Запуск тестов:
make test
-
Создание аккаунта (POST):
http://localhost:8080/accounts { "owner": "Artem Fomin", "currency": "RUB" }
-
Получение информации по аккаунту (GET):
http://localhost:8080/accounts/1
-
Пополнение баланса аккаунта (POST):
http://localhost:8080/accounts/balance { "id": 1, "amount": 1000 }
-
Перевод денег из одного аккаунта в другой (POST):
http://localhost:8080/accounts { "from_account_id": 1, "to_account_id": 2, "amount": 100, "currency": "RUB" }