1
0
forked from BRT/arc
arc/docs/dushanbe_screens.md

13 KiB
Raw Permalink Blame History

Dushanbe — экраны и дампы

Чек-лист экранных дампов для банка Dushanbe City Bank (appCode: dushanbe / dushanbe_city_bank). Используется, когда выходит новая версия приложения и нужно понять, какие экраны переснять.

Как пользоваться при выходе новой версии

  1. Завести папку assets/dushanbe/<новая_версия>/ (например assets/dushanbe/3.2.42/).
  2. Пройти по чек-листу ниже и снять XML+скриншот каждого экрана на устройстве с новой версией. Дампы кладутся в новую папку под теми же именами.
  3. Сверить новый дамп с картинкой ниже (на ней — самый свежий из имеющихся дампов).
  4. Если вёрстка/тексты разошлись с парсером — обновить android/dushanbe/ScreenXmlParser.cpp и при необходимости завести новый трек в android/dushanbe/AppVersionTrack.h.

Версионирование

Парсер Dushanbe версионируется: android/dushanbe/AppVersionTrack.h, треки Legacy (< 3.2.33) / V3_2_33 (3.2.33 .. < 3.2.38) / V3_2_38 (>= 3.2.38, по умолчанию). Скрипты выставляют трек один раз: setVersionTrack(trackForVersion(app.appVersion)). Новый трек добавляется только если вёрстка реально разошлась с V3_2_38 — иначе хватает свежих эталонных дампов в assets/dushanbe/<версия>/.

Картинка под каждым экраном — самый свежий доступный дамп (приоритет 3.2.413.2.393.2.33 → корень assets/dushanbe/). Подпись «Текущий дамп» показывает, из какой версии реально взята картинка. Если эталонного дампа ещё нет — экран помечен ⚠️ и его надо снять в первую очередь.


1. Мастер установок (BankSetupWizard)

Цепочка: runPinCheck → runProfileCheck → runCardCheck (views/bank/BankSetupWizard.cpp).

1.1. Пин-код / вход (LoginAndCheckAccountsScript)

Экран запуска — launch_screen

Сплэш/загрузка приложения сразу после старта.

  • Снять под новую версию
  • Текущий дамп: 3.2.33
  • launch_screen

Экран ввода PIN — pin_code ⚠️

Цифровая клавиатура ввода пин-кода. Детектор isPinCodeScreen() ещё не реализован (ScreenXmlParser.h:45 — TODO «после снятия XML дампов экранов»).

  • Эталонный дамп ещё не снят — приоритет при следующем съёме
  • Текущий дамп: нет

Главный экран — home_screen

«Главная»: нижняя навигация (Переводы/Сервисы/История) + карточка баланса «TJS\n<дата>».

  • Снять под новую версию
  • Текущий дамп: 3.2.33
  • home_screen

1.2. Профиль (GetProfileInfoScript)

Боковое меню / профиль — side_menu

Шторка профиля: ФИО, телефон, версия/сборка. Из неё парсятся данные профиля.

  • Снять под новую версию
  • Текущий дамп: 3.2.41
  • side_menu

1.3. Карты (GetCardInfoScript)

Список карт — cards_screen

Экран «Мои карты» со списком карт (last numbers, баланс).

  • Снять под новую версию
  • Текущий дамп: 3.2.33
  • cards_screen

Детали карты — card_detail

Заголовок «Карта»: полный номер, баланс, держатель.

  • Снять под новую версию
  • Текущий дамп: 3.2.33
  • card_detail

Детали карты (альт. вид) — card_detail_2

Альтернативное состояние экрана детали карты.

  • Снять под новую версию
  • Текущий дамп: корень (база)
  • card_detail_2

Bottom-sheet «Настройки карты» ⚠️

Шторка с пунктами «Реквизиты карты» / «Заблокировать карту» и т.д. (isCardSettingsBottomSheet()).

  • Эталонный дамп ещё не снят — приоритет при следующем съёме
  • Текущий дамп: нет

Экран «Реквизиты и информация» ⚠️

Табы «Реквизиты карты» / «Реквизиты счета», номер счёта (isCardRequisitesScreen()).

  • Эталонный дамп ещё не снят — приоритет при следующем съёме
  • Текущий дамп: нет

2. fetch_transactions (EventType::FetchTransactionsGetLastTransactionsScript)

2.1. Список истории

История операций — history_screen

Табы «Операции» / «Выписка», список транзакций.

  • Снять под новую версию
  • Текущий дамп: 3.2.33
  • history_screen

Выписка — statement_screen

Экран «Выписка» (появился в 3.2.39+).

  • Снять под новую версию
  • Текущий дамп: 3.2.41
  • statement_screen

Экран переводов — transfers_screen

Список переводов / вкладка переводов.

  • Снять под новую версию
  • Текущий дамп: 3.2.33
  • transfers_screen

2.2. Детали транзакции

Детали транзакции — tx_detail

«Дата операции:», «Номер операции:», сумма, статус (isTransactionDetailScreen()).

  • Снять под новую версию
  • Текущий дамп: 3.2.33
  • tx_detail

Детали транзакции перевода — card_transfer_tx_detail

Детали операции, открытые из истории переводов по карте.

  • Снять под новую версию
  • Текущий дамп: 3.2.33
  • card_transfer_tx_detail

3. create_transaction (EventType::CreateTransaction)

3.1. Перевод по карте (PayByCardScript)

Ввод суммы — card_transfer_input

Поле суммы + якорь «Мин. сумма: …» под полем.

  • Снять под новую версию
  • Текущий дамп: 3.2.33
  • card_transfer_input

Подтверждение — card_transfer_confirm

Bottom-sheet подтверждения, оранжевая кнопка «Подтверждаю» (RGB 255,117,40).

  • Снять под новую версию
  • Текущий дамп: 3.2.33
  • card_transfer_confirm

Подтверждение (детали) — card_transfer_confirm_detail

Развёрнутые детали в шторке подтверждения.

  • Снять под новую версию
  • Текущий дамп: корень (база)
  • card_transfer_confirm_detail

Успех — card_transfer_success

Экран «Платёж выполнен», с него снимается ID операции (OCR).

  • Снять под новую версию
  • Текущий дамп: 3.2.33
  • card_transfer_success

3.2. Перевод по телефону (PayByPhoneScript)

Ввод номера/суммы — phone_transfer_input

Поле номера телефона получателя + сумма.

  • Снять под новую версию
  • Текущий дамп: 3.2.41
  • phone_transfer_input

Подтверждение — phone_transfer_confirm

Шторка подтверждения перевода по номеру.

  • Снять под новую версию
  • Текущий дамп: 3.2.41
  • phone_transfer_confirm

Успех — phone_transfer_success

Экран успешного перевода по номеру.

  • Снять под новую версию
  • Текущий дамп: 3.2.41
  • phone_transfer_success

Сводные галереи (только экраны, используемые в коде)

Эталонные дампы, на которые сейчас нет активного кода (детектор не вызывается), в эти таблицы не включены.

Задача fetch_profile — вход, профиль, карты (FetchProfile)


home_screen
3.2.33

side_menu
3.2.41

cards_screen
3.2.33

card_detail
3.2.33

Задача fetch_transactions (FetchTransactions)


history_screen
3.2.33

statement_screen
3.2.41

transfers_screen
3.2.33

tx_detail
3.2.33

card_transfer_tx_detail
3.2.33

Задача create_transaction (CreateTransaction)


card_transfer_input
3.2.33

card_transfer_confirm
3.2.33

card_transfer_success
3.2.33

phone_transfer_input
3.2.41

phone_transfer_confirm
3.2.41

phone_transfer_success
3.2.41