Направление работ: Mobile Код раздела: 5.9.1 Раздел: Профиль > Ограничения > Оспорить ограничение Статус: черновик Ответственный: Панкова Л.А. Версия: 0.1 Обновлено: 13.07.26


1. Назначение

Раздел позволяет клиенту выбрать действие для ограничения и перейти к его оспариванию.

В текущем сценарии интерфейс открывает системное почтовое приложение с адресом партнера. Для будущей реализации предусмотрен встроенный чат с отправкой сообщения и вложений.

Раздел зависит от Back: 1.3.2 Характеристики клиента и использует ограничения из Mobile 5.9.

2. Ключевые понятия

Ограничение — примененная партнером характеристика клиента, которая изменяет доступность бронирования или условия оказания услуг в конкретной партнерской зоне.

Оспаривание ограничения — обращение клиента к партнеру по выбранному ограничению.

Чат для оспаривания — интерфейс отправки партнеру сообщения и вложений по выбранному ограничению.

3. Scope

Входит

S1: Ограничения и действия с ними

S2: Чат для оспаривания ограничения (на будущую реализацию)

Не входит

4. BR

Указаны в пункте 4 раздела Back: 1.3.2 Характеристики клиента.

5. Функциональные требования (UC + FR)

IDСценарийФункциональное требованиеBRВесСтатус
S1: FR5.9.1-1Клиент просматривает доступные действия с ограничениемИнтерфейс показывает в карточке ограничения действия «Оспорить» и «Оплатить», если они доступны для выбранного ограничения.1Реализовано — OQ5.9.1-3
S1: FR5.9.1-2Клиент оспаривает ограничениеИнтерфейс по действию «Оспорить» открывает системное почтовое приложение с адресом электронной почты партнера.1Частично — OQ5.9.1-1, OQ5.9.1-2
S1: FR5.9.1-3Клиент оплачивает начисленный сборИнтерфейс по действию «Оплатить» начинает сценарий оплаты начисленного сбора.1Реализовано — OQ5.9.1-4 (см. также OQ5.9.1-5)
S2: FR5.9.1-4Клиент переходит к оспариванию в приложении (на будущую реализацию)Интерфейс по действию «Оспорить» открывает чат с адресом электронной почты партнера, полем «Сообщение…» и действиями добавления вложения и отправки.3OQ5.9.1-6
S2: FR5.9.1-5Клиент отправляет сообщение партнеру (на будущую реализацию)Интерфейс позволяет ввести текст сообщения и отправить его партнеру по выбранному ограничению.3OQ5.9.1-6
S2: FR5.9.1-6Клиент добавляет вложения (на будущую реализацию)Интерфейс позволяет прикрепить до пяти файлов как «Изображение» или «Документ», показывает добавленные изображения и позволяет удалить вложение до отправки.3OQ5.9.1-6
S2: FR5.9.1-7Сообщение успешно отправлено (на будущую реализацию)Интерфейс показывает подтверждение отправки, сообщает, что дальнейшее оспаривание сборов осуществляется по электронной почте клиента, и позволяет закрыть состояние по действию «Закрыть».3OQ5.9.1-6
S2: FR5.9.1-8Сообщение не отправлено (на будущую реализацию)Интерфейс показывает экран «Ошибка» с сообщениями «Что-то пошло не так» и «Проверьте соединение с интернетом или повторите попытку позднее» и позволяет повторить отправку по действию «Попробовать еще раз».3OQ5.9.1-6

6. Открытые вопросы

Пин-контекст. BRD 5.9.1 v0.1 · репо booking.mobile.flutter (Flutter/Dart) · commit dad0c65 / ветка dev · дата 2026-07-14 · якорь lib/src/feature/profile_page/forfeits/ (точка входа — Профиль → «Ограничения», profile_screen.dart:539ForfeitsRoute). Сводка. 6 вопросов (Open — 2 · Закрывает PM — 1 · Подтверждено — 3) · отрезано находок обратного прохода — 3 (принадлежат разделу Mobile 5.9 «Ограничения», не 5.9.1). Маршрутизация без сверки с гайдбуком — гайдбук на вход не передавался; спорные вопросы отнесены бизнесу как «подтвердить нечем».

IDИсточникВопросКомуСтатусРекомендации
OQ5.9.1-1Код FR5.9.1-2Требование говорит: «Оспорить» открывает почтовое приложение с адресом партнёра. В коде адрес получателя жёстко задан как служебная почта сервиса support@musbooking.com — письмо уходит в поддержку MUSbooking, а не партнёру. При этом e-mail партнёра приходит с бэкенда и доступен на карточке, но не используется. \ forfeit_tile.dart:250-254, поле есть: forfeit_model.dart:44 (partnerEmail)Бизнес (Герман)Open(А, реком.): подтвердить, что оспаривание должно идти партнёру, и подставить forfeit.partnerEmail — данные уже приходят, правка на стороне разработки минимальна. (Б): если по продукту оспаривание намеренно маршрутизируется через поддержку MUSbooking — зафиксировать это в BRD (заменить «адрес партнёра» на «поддержку сервиса»). Разблокирует OQ5.9.1-2.
OQ5.9.1-2Код FR5.9.1-2Требование говорит: клиент оспаривает выбранное ограничение. В коде тема и текст письма — фиксированные заглушки («Оспорить ограничение площадки» / «Укажите название ограничения и ссылку на проблему»); ни название ограничения, ни площадка, ни заказ в письмо не подставляются, хотя эти данные есть на карточке. Получатель не понимает, о каком именно ограничении речь. \ forfeit_tile.dart:250-254 (данные доступны: forfeit_model.dart:43-52)Разработка (Владислав)Open(А, реком.): подставлять в тему/текст название площадки, комнаты, причину и период заказа из карточки — так письмо станет адресным. (Б): оставить заглушку и попросить клиента заполнять вручную (хуже для партнёра). Зависит от OQ5.9.1-1 (сначала адрес получателя).
OQ5.9.1-5Код (сверх BRD, область FR5.9.1-3)Проблема: перед оплатой сбора код проверяет, указан ли e-mail клиента, и показывает форму ввода, если почты нет. Но сразу после этой проверки результат принудительно перезаписывается на «можно платить» — форма ввода почты фактически ни на что не влияет, оплата продолжается в любом случае. Похоже на забытую отладочную строку. \ forfeit_tile.dart:336 (перекрывает проверку из forfeit_tile.dart:306-334)Разработка (Владислав)Закрывает PMЗакрываю сам: убрать безусловное canPay = true и оставить результат реальной проверки e-mail (или явно отказаться от требования почты, если оно не нужно) → тикет в Bitrix. Продуктового выбора нет — либо проверка нужна и должна работать, либо её надо удалить целиком.
OQ5.9.1-3Код FR5.9.1-1Что подтверждено: карточка ограничения показывает оба действия. «Оспорить» отображается всегда; «Оплатить» — только когда сбор начислен (сумма > 0) и у ограничения есть платёжная настройка — это и есть «если доступны». Примечание: у действия «Оспорить» отдельного условия доступности нет (показывается для любого ограничения) — если по продукту оно должно иногда скрываться, это уточняется отдельно. \ «Оспорить»: forfeit_tile.dart:246-287; «Оплатить» + условие: forfeit_tile.dart:288-289ПодтвержденоРасхождения по наличию действий нет. При необходимости — уточнить у бизнеса, всегда ли доступно «Оспорить».
OQ5.9.1-4Код FR5.9.1-3Что подтверждено: действие «Оплатить» запускает сценарий оплаты сбора: приложение запрашивает у бэкенда ссылку на оплату (метод CreatePaymentLinkForForfeitMobile) и открывает её во внешнем окне оплаты. \ forfeit_tile.dart:295-347forfeit_cubit.dart:45-71forfeit_repository.dart:39-65ПодтвержденоРасхождения нет. Технический дефект в этом же потоке — см. OQ5.9.1-5.
OQ5.9.1-6Код FR5.9.1-4FR5.9.1-8Что подтверждено: встроенный чат оспаривания (S2 — форма сообщения, вложения, экраны успеха/ошибки) в коде отсутствует: экран чата полностью закомментирован, маршрут к нему выключен. Это соответствует пометке BRD «на будущую реализацию» — расхождения нет, реализовывать пока нечего. \ support_chat/widget/support_chat_screen.dart:1-106 (весь файл закомментирован), маршрут выключен: app_router.dart:374ПодтвержденоРасхождения нет — S2 намеренно отложен. Проверить повторно при старте работ по чату оспаривания.

0 items under this folder.