Профиль: рабочие переключатели official/shine и подтверждение блокчейн-записи

This commit is contained in:
ai5590
2026-04-07 01:03:33 +03:00
parent 525627c972
commit f3e4651bd5
3 changed files with 140 additions and 35 deletions
+20 -16
View File
@@ -1,27 +1,31 @@
# Задача 2 — Проверка работы личных данных на правой вкладке профиля
# Задача 2 — Проверка работы личных данных и статусов профиля (правая вкладка)
## Что реализовано
- На правой вкладке `Профиль` отображаются реальные пользовательские параметры, загружаемые с сервера через `ListUserParams`.
- Добавлены поля профиля:
- На правой вкладке `Профиль` отображаются реальные пользовательские параметры, загружаемые через `ListUserParams`.
- Поля профиля:
- `first_name` (чтение с обратной совместимостью с `name`)
- `last_name`
- `address_physical`
- `address_web`
- `phone`
- Добавлена кнопка `Обновить`, которая открывает форму редактирования.
- При сохранении UI отправляет `UpsertUserParam` по каждому полю; сервер добавляет новые записи в блокчейн-историю параметров.
- После сохранения экран заново запрашивает данные и показывает актуальные значения.
- Кнопка `Обновить` открывает форму редактирования и сохраняет изменения в пользовательские параметры блокчейна.
- Добавлены рабочие переключатели:
- `official`
- `shine`
- Для `official`/`shine` используется подтверждение перед записью, с предупреждением, что изменение идёт через блокчейн-параметры и требует подписи ключом пользователя.
- Если `official`/`shine` отсутствуют в параметрах, они считаются `no` по умолчанию.
## Что проверить вручную
1. Авторизоваться пользователем и открыть правую вкладку `Профиль`.
2. Убедиться, что поля загрузились не из заглушек, а из `ListUserParams`.
3. Нажать `Обновить`, заполнить поля и нажать `Сохранить`.
4. Убедиться, что после сохранения значения обновились на экране.
5. Повторно изменить, например, `phone`.
6. Убедиться, что отображается последнее значение (`самая новая запись` по времени).
7. Перезайти на страницу профиля и убедиться, что значения сохраняются и снова читаются с сервера.
1. Авторизоваться и открыть правую вкладку `Профиль`.
2. Убедиться, что поля профиля читаются из `ListUserParams`, а не из заглушек.
3. Нажать `Обновить`, изменить `first_name/last_name/address_physical/address_web/phone`, нажать `Сохранить`.
4. Убедиться, что после сохранения данные перечитались и обновились на экране.
5. Нажать `Официальный`, подтвердить изменение и проверить смену `no -> yes` (или `yes -> no`).
6. Нажать `Сияющий`, подтвердить изменение и проверить смену `no -> yes` (или `yes -> no`).
7. Обновить страницу и убедиться, что состояния `official/shine` и личные поля сохраняются.
8. Проверить кейс отсутствия `official/shine` в истории: UI должен показывать `no`.
## Ожидаемый результат
- Правая вкладка профиля работает по-настоящему через API пользователя.
- Данные не зависят от мок-заглушек старой версии страницы.
- Сценарий повторного изменения поля корректно показывает последнее актуальное значение.
- Правая вкладка профиля работает с реальными данными пользователя.
- `official` и `shine` работают как настоящие параметры (yes/no), а не заглушки.
- После каждой записи UI делает повторный `ListUserParams` и показывает актуальное состояние.