Бекенд, общие правки и доработки:

  1. Интегрировать работу с нодой Ethereum RPC API
    1. Сделать создание кошельков
    2. Запись в базу данных к юзеру
    3. Работа с токеном Falcor
    4. Все делаем на тестовой сети Ropsten - https://ropsten.etherscan.io/
    5. Работа с транзакциями - проведение транзакции на контракте кастомного токена с подписью приватным ключом
    6. Получение балансов кошелькков
    7. Изменить функцию получения балансов - на новый метод для который выше написали для получения балансов
    8. Транзакции между пользователями в системе - осуществляются внутри ноды, в сеть их не надо выводить. внешние транзакции на вывод - уже отправляем в сеть, нужно сделать проверку на “внутренний” кошелек или внешний внутри вызова функции на транзакцию
    9. Для транзакций храним список блоков - просто получаем ПОСЛЕДНИЙ блок на текущий момент в тестовой сети эфира и приписываем его к траназкции )
  2. Написать систему “Пуллов”
    1. Создаем внутри ноды Ethereum несколько “сервисных кошельков”
      1. Кошелек №1 - кешбек - 35% от комиссии
      2. Кошелек №2 - “спонсирующий фонд” - 40% от комисиии
      3. Кошелек №3 - “резервный пулл” - 25% от комисси
      4. Кошелек №4 - стейкинг, комиссия сюда не уходит, только вклады
    2. При транзакции 5% забираем на комиссию - ее распределяем между кошельками-пуллами
    3. В будущем с пулла (так в дальнейшем буду называть сервисные кошельки) будем делать выплаты % со стейкинга

Далее делаем API для фронтенда:

Untitled

Первый раздел который делаем - аналитика.

  1. Блок - последний блок от последней транзакции (из базы данных берем)
  2. Транзакций/сек - высчитываем за последний час
  3. Токенов в обороте - суммарное количество балансов всех юзеров
  4. Распределение по пуллам
    1. Заморожено - сколько на стейкинге находится в сумме
    2. в обороте - суммарное количество балансов всех юзеров
    3. базовые обменники - сумма балансов кошельков двух базовых обменников - это объявления P2P с пометкой в базе данных “базовый обменник”
      1. к обменнику в базе данных необходимо добавить поле, либо вынести в отдельную таблицу “обменники”
  5. Распредедение комиссии
    1. Выводим балансы кошельков комиссий вместо %
    2. Необходим GET параметр для фильтрации - день / месяц/ неделя и тд, как в дизайне

ТЗ скоро будет дополнено следующими разделами

Coming soon….

Untitled

Следующим разделом делаем “Обозреватель”

Untitled