cryptocurrency_exchange/README.md
2024-01-15 02:04:23 +00:00

2.8 KiB

Смарт-контракт для обмена валют

Контракт позволяет пользователю обменивать криптовалюты на его кошельке с одной на другую. Для упрощения курс криптовалют фиксирован и задается при создании контракта.

Курсы доступных валют:

XMR 152.1
XRP 0.6035
ADA 0.5793
AVAX 39.69
BNB 308.3
BTC 46648.92
ETH 2623.0
SOL 101.18

Пополнение кошелька

$ ./bin/neo-go contract invokefunction -r http://localhost:20331 -w wallet.json <номер контракта> topUp <учетная запись> <валюта> <сумма пополнения>

<учетная запись> - адрес пользователя, например NVTiAjNgagDkTr5HTzDmQP9kPwPHN5BgVq <валюта>- аббревиатура названия валюты <сумма>- целове количество токенов для перевода на кошелек

Функция пополняет кошелек на указанную сумму. Возвращает true, если выполнилась успешно и false иначе.

Обмен валют

$ ./bin/neo-go contract invokefunction -r http://localhost:20331 -w wallet.json <номер контракта> exchange <учетная запись> <сумма обмена> <валюта 1> <валюта 2>

<сумма>- целое количество токенов для обмена <валюта 1>- валюта из которой выполняется перевод <валюта 2>- валюта в которую выполняется перевод

Функция производит обмен валют и выводит об этом сообщение. Возвращает true, если выполнилась успешно и false иначе.

Проверка баланса валюты

$ ./bin/neo-go contract invokefunction -r http://localhost:20331 -w wallet.json <номер контракта> getTokenBalance <учетная запись> <валюта>

Функция возвращает целое число токенов указанной валюты на кошельке.

Вывод баланса валют на кошельке

$ ./bin/neo-go contract invokefunction -r http://localhost:20331 -w wallet.json <номер контракта> printWallet <учетная запись>

Функция выводит в консоль все имеющиеся в кошельке валюты и их баланс.