Skip to content

Latest commit

 

History

History
38 lines (23 loc) · 2.32 KB

File metadata and controls

38 lines (23 loc) · 2.32 KB

Задача 2 | Виджет пользователя – получение данных

⬅️ назад

ТЗ

Необходмио реализовать логику получения данных для отображения виджета с информацией о пользователе.

Запрос 1

Метод 1: /operations/list?userId=_адишник юзера_

Результат запроса должен представляться моделью Operation и получаться из JSON (передается в виде Data).

Список операций лежит в поле operations

Значения валюты special_point rub Значения для поля direction:

  • withdrawal – уход
  • receipt – приход

Полученные данные нужно сохранять в кэш. До совершения сетевого запроса нужно проверять наличие кэша (если не пуст, то сразу возвращать данные)

Warning

В качестве идентификатора операции при кэшировании используйте индекс из массива (0, 1, 2...), который был получет в ответе сервера

Запрос 2

Метод 2: /user/info?userId=_адишник юзера_

Результат запроса должен представляться моделью UserInfo и получаться из JSON (передается в виде Data)

Полученные данные нужно сохранять в кэш. До совершения сетевого запроса нужно проверять наличие кэша (если не пуст, то сразу возвращать данные)

Ожидаемое решение

Необходимо реализовать:

  • IUserInfoService, котоорый производит сетевой запрос на получение данных о пользователе. Ожидается реализация сетевого запроса и парсинга результата
  • IOperationsService для списка операций. Ожидается реализация сетевого запроса и парсинга результата