Направление работ: WebLk Код раздела: 4.1 Раздел: Контент > Объекты Статус: черновик Ответственный: Панкова Л.А. Версия: 0.1 Обновлено: 24.07.26
1. Назначение
Данный раздел обеспечивает партнеру интерфейс для создания, просмотра и редактирования объекта в разделе контента WebLk.
Партнер заполняет основную информацию об объекте, контактные данные, местоположение, маршрут, условия работы, правила и условия, а также управляет доступностью объекта в сервисе.
Функциональное назначение раздела - дать партнеру единую страницу объекта без раскрытия внутренней логики площадок, цен, услуг, модерации и backend-процессов.
Раздел зависит от Back: 2.1 Объекты и предложения > Объекты партнеров.
2. Ключевые понятия
Объект партнера - сущность, которая группирует площадки партнера по сфере, местоположению и контактным данным.
Страница объекта - экран WebLk 4.1 для просмотра данных объекта, связанных блоков и доступных действий.
Контактные данные объекта - основной и дополнительные телефоны, основной и дополнительные email-адреса.
Местоположение и маршрут - город, адрес, метро или остановки, данные прохода, маршрут, видеомаршрут и вложения.
Площадка - помещение, привязанное к объекту партнера и доступное для бронирования.
Правила работы с заказами - правила бронирования, отмены и оплаты, которые отображаются на странице объекта, но раскрываются в отдельном разделе.
Настройки партнерской зоны - стандартные настройки партнера, которые применяются по умолчанию для правил работы с заказами.
Доступность объекта в сервисе - состояние, которое определяет, опубликован объект, снят с публикации, находится на модерации или в архиве.
3. Scope
Входит
S1: Создание объекта
S2: Просмотр страницы объекта
S3: Редактирование информации об объекте
S4: Просмотр и настройка правил и условий объекта
S5: Управление доступностью объекта в сервисе
S6: Состояния интерфейса
Не входит
- WebLk 4.1.1 Модерация данных объекта
- WebLk 4.1.2 Статистика по объекту
- WebLk 4.2 Площадки
- WebLk 4.3 Услуги
- WebLk 4.4 Цены
- WebLk 3.4 Настройки правил работы
- Backend/API-контракты, структура БД и техническая реализация
4. BR
Указаны в пункте 4 раздела Back: 2.1 Объекты и предложения > Объекты партнеров.
5. Функциональные требования (UC + FR)
FR - functional requirements, что интерфейс должен уметь делать по определенному UC.
| ID | Cценарий | Функциональное требование | BR | Вес | Статус |
|---|---|---|---|---|---|
| S1: #FR4.1-1 | Партнер начинает создание объекта | Интерфейс открывает сценарий создания объекта и показывает первый шаг заполнения с названием объекта, сферой, логотипом, описанием и контактными данными. | 1 | Частично \ #OQ4.1-1 | |
| S1: #FR4.1-2 | Партнер заполняет основную информацию объекта | Интерфейс позволяет указать сферу, название, описание, логотип, схему объекта, основной телефон и основной email. | 1 | Реализовано | |
| S1: #FR4.1-3 | Партнер добавляет дополнительные контактные данные | Интерфейс позволяет добавить дополнительные телефоны и email-адреса объекта, а также показывает ранее добавленные значения. | 2 | Реализовано | |
| S1: #FR4.1-4 | Партнер заполняет местоположение и маршрут | Интерфейс позволяет указать город, адрес и расположение входа, метро или остановки, признак необходимости паспорта, описание маршрута, ссылку на маршрут, ссылку на видеомаршрут и вложения. | 1 | Частично \ #OQ4.1-5 | |
| S1: #FR4.1-5 | Партнер переходит между шагами создания | Интерфейс позволяет отменить создание или продолжить заполнение объекта, сохраняя уже введенные данные в пределах сценария. | 2 | Реализовано | |
| S1: #FR4.1-6 | Партнер создает объект после выбора тарифа размещения (Не входит в релиз) | Интерфейс показывает предварительный шаг выбора тарифа размещения перед созданием объекта, если этот шаг доступен в текущем сценарии. | 3 | Реализовано | |
| S2: #FR4.1-7 | Партнер открывает страницу объекта | Интерфейс показывает страницу выбранного объекта с основными сведениями, местоположением, условиями работы, правилами и связанными блоками. | 1 | Реализовано | |
| S2: #FR4.1-8 | Партнер просматривает основные сведения объекта | Интерфейс показывает сферу, название, описание, логотип или заменяющий элемент, схему объекта, контактные данные и текущую доступность объекта в сервисе. | 1 | Реализовано | |
| S2: #FR4.1-9 | Партнер просматривает местоположение и маршрут | Интерфейс показывает город, адрес, метро или остановки, данные прохода, описание маршрута, ссылки на маршрут и видеомаршрут, а также вложения маршрута. | 1 | Частично \ #OQ4.1-9 | |
| S2: #FR4.1-10 | Партнер просматривает условия работы объекта | Интерфейс показывает время работы, перерывы, формат работы с заказами и адреса или типы уведомлений, если они заполнены для объекта. | 2 | Частично \ #OQ4.1-6 | |
| S2: #FR4.1-11 | Партнер просматривает список площадок объекта | Интерфейс показывает список площадок объекта с названием, фото или заменяющим элементом, ценовым диапазоном и доступными переходами к просмотру, созданию или изменению порядка площадок без раскрытия внутренней логики раздела площадок. | 2 | Частично \ #OQ4.1-8 | |
| S3: #FR4.1-12 | Партнер открывает редактирование информации об объекте | Интерфейс открывает заполненные данные объекта в режиме редактирования и позволяет изменить основную информацию, контактные данные, местоположение, маршрут и условия работы. | 1 | Реализовано | |
| S3: #FR4.1-13 | Партнер редактирует файлы объекта | Интерфейс позволяет добавить, заменить или удалить схему объекта и вложения маршрута, а также показывает имя, формат или состояние выбранного файла. | 2 | Частично \ #OQ4.1-5 | |
| S3: #FR4.1-14 | Партнер сохраняет изменения объекта | Интерфейс сохраняет измененные данные объекта, показывает результат сохранения и не теряет заполненные поля при переходах между блоками формы. | 1 | Частично \ #OQ4.1-7 | |
| S3: #FR4.1-15 | Партнер отменяет редактирование объекта | Интерфейс позволяет отменить редактирование и вернуться к просмотру страницы объекта без применения несохраненных изменений. | 2 | Реализовано | |
| S4: #FR4.1-16 | Партнер работает с правилами и условиями объекта | Интерфейс показывает правила оказания услуг, правила создания заказов, правила отмены и условия оплаты, применимые к объекту, а также позволяет выбрать стандартные правила или перейти к настройке правил, если действие доступно по макету. | 1 | Частично \ #OQ4.1-4 | |
| S5: #FR4.1-17 | Партнер просматривает доступность объекта в сервисе | Интерфейс показывает текущее состояние доступности объекта: на модерации, опубликован, снят с публикации или в архиве. | 1 | Частично \ #OQ4.1-2 | |
| S5: #FR4.1-18 | Партнер снимает объект с публикации (Не входит в релиз) | Интерфейс позволяет снять опубликованный объект с публикации и после действия показывает состояние снятого с публикации объекта. | 3 | Частично \ #OQ4.1-3 | |
| S5: #FR4.1-19 | Партнер публикует объект (Не входит в релиз) | Интерфейс позволяет опубликовать объект и после действия показывает обновленное состояние публикации. | 3 | Не реализовано \ #OQ4.1-3 | |
| S5: #FR4.1-20 | Партнер архивирует объект (Не входит в релиз) | Интерфейс позволяет архивировать объект и показывает состояние, при котором объект сохранен в партнерской зоне, но недоступен для обычного редактирования. | 3 | Реализовано \ #OQ4.1-3 | |
| S5: #FR4.1-21 | Партнер восстанавливает объект из архива (Не входит в релиз) | Интерфейс позволяет восстановить объект из архива и вернуться к просмотру страницы объекта после восстановления. | 3 | Реализовано \ #OQ4.1-3 | |
| S6: #FR4.1-22 | Партнер ожидает загрузку страницы объекта | Интерфейс показывает состояние загрузки страницы объекта и связанных данных до отображения контента. | 2 | Реализовано | |
| S6: #FR4.1-23 | Партнер работает с пустыми или незаполненными блоками | Интерфейс показывает пустые состояния для незаполненных данных объекта и доступные действия для добавления информации, если действие предусмотрено макетом. | 2 | Частично \ #OQ4.1-9 | |
| S6: #FR4.1-24 | Партнер открывает объект на разных устройствах | Интерфейс адаптирует страницу объекта, форму создания и форму редактирования под доступную ширину экрана без потери основных действий и данных. | 2 | Реализовано |
6. Открытые вопросы
| ID | Источник | Вопрос | Кому | Статус | Рекомендации |
|---|---|---|---|---|---|
| #OQ4.1-1 | Код FR4.1-1 (тж. FR4.1-2, FR4.1-4) | Требование говорит: создание объекта = основная информация + контактные данные + местоположение/маршрут; сценарии FR4.1-1…5 не упоминают уведомления и условия работы. В коде мастер создания состоит из 4 обязательных шагов: «Основные данные» → «Уведомления» → «Местоположение» → «Условия работы»; email уведомлений обязателен, время работы обязательно — без них объект создать нельзя. \ BaseDrawer.vue:147-152; useBaseValidation.ts:163-210; BaseNotificationsStep.vue:292-306 | Бизнес (Герман) | Open | Партнёр не может создать объект, не заполнив шаги, которых нет в требованиях — расхождение состава сценария. (А, рекоменд.) дополнить scope S1 шагами «Уведомления» и «Условия работы» с явной пометкой обязательности и составом полей; (Б) если продукт хочет «минимальное создание» — сделать эти шаги необязательными или вынести из сценария создания. Состав уведомлений — Back 7.2.1, условия работы — Back 2.1 (BR2.1-9/-10). |
| #OQ4.1-2 | Код FR4.1-17 | Требование говорит: доступность объекта в 4 состояниях — на модерации, опубликован, снят с публикации, в архиве. В коде модель данных знает только бинарный флаг «в архиве»; плашка показывает «Весь контент опубликован» либо «Объект снят с публикации», состояний «на модерации» и «снят с публикации» отдельно от архива нет. \ BaseBasicInfo.vue:305-322; bases.schema.ts:47-50,96 | Бизнес/Разработка | Open | Требование веса 1 невыполнимо на фронте без поля статуса на бэке. (А, рекоменд.) зафиксировать в BRD фактическую бинарную модель (архив/активен) для текущего релиза, переписав FR4.1-17 под два состояния; (Б) если 4 состояния нужны — завести поле статуса модерации/публикации в Back 2.1 и доработать плашку. Модерация — WebLk 4.1.1 (в «Не входит»), но статус нужен здесь для отображения. |
| #OQ4.1-3 | Код FR4.1-20, FR4.1-21 (тж. FR4.1-18, FR4.1-19) | Требование говорит: архивирование, восстановление, снятие с публикации и публикация помечены «Не входит в релиз». В коде архивирование и разархивирование полностью реализованы и доступны партнёру прямо сейчас (кнопка + модалка подтверждения); отдельных публикации/снятия с публикации нет — кнопка «снять с публикации» фактически архивирует объект. \ useBaseArchive.ts:47-67; useBaseEntityQueries.ts:146-185; bases.api.ts:222-231; BaseBasicInfo.vue:326-336 | Бизнес (Герман) | Open | Двойное расхождение: (1) помеченное «не в релизе» уже работает; (2) «снять с публикации» и «архивировать» — одно действие, хотя это разные состояния по FR4.1-17. (А, рекоменд.) если архив/восстановление нужны сейчас — снять пометку «Не входит в релиз» с FR4.1-20/-21 и описать поведение; (Б) если рано — скрыть кнопку за фиче-флагом. Отдельно: развести смысл «снять с публикации» и «архив» — связано с OQ4.1-2 (модель состояний). |
| #OQ4.1-4 | Код FR4.1-16 | Требование говорит: показ правил (оказания услуг, создания заказов, отмены, оплаты) + возможность выбрать стандартные правила или перейти к настройке. В коде 4 вкладки правил показываются, но выбор «стандартные правила» захардкожен (значение всегда «да», пользователем не переключается); настройка правил вынесена на отдельную страницу. \ BaseWorkConditions.vue:118-160; booking-rules-settings/index.vue:1 | Бизнес (Герман) | Open | (А, рекоменд.) описать в FR4.1-16, что выбор стандартных/кастомных правил делегирован разделу правил (WebLk 3.4, уже в «Не входит»), а на странице объекта — только просмотр; (Б) если выбор нужен на объекте — реализовать реальный переключатель. Оговорка: сам источник стандартных правил сейчас спорен — Back 2.1/OQ2.1-1 (BRD требует наследование от настроек партнёрской зоны, код берёт от сферы). |
| #OQ4.1-5 | Код FR4.1-13 (тж. FR4.1-4) | Требование говорит: добавить, заменить или удалить вложения маршрута. В коде загрузка, замена и удаление вложения маршрута не реализованы — в шаге «Местоположение» на их месте TODO-заглушка; просмотр файла маршрута в карточке объекта есть, но добавить или заменить его из формы создания/редактирования нельзя. \ BaseLocationStep.vue:141; BaseBasicInfo.vue:470-489 | Разработка (Влад) | Open | Механизм уже есть у «Схемы объекта» в шаге «Основные данные» — по аналогии переносится. (А, рекоменд.) реализовать загрузку/замену/удаление файла маршрута в шаге «Местоположение»; (Б) до реализации убрать вложения маршрута из FR4.1-4/-13 или пометить как незапланированное, чтобы не выдавать за реализованное. Форматы файла маршрута заданы в Back 2.1/BR2.1-8 (pdf, png, jpg, mov, mp4) — сверить при реализации. |
| #OQ4.1-6 | Код FR4.1-10 | Проблема: радио «Формат работы» в шаге условий работы присутствует, но выбор пользователя не сохраняется: черновик хардкодит значение формата (создание = 1, обновление = 0 с пометкой «TODO: взять из формы»), значение из формы игнорируется. \ useBaseDraft.ts:625,718; BaseWorkingHoursStep.vue:177-182 | Разработка (Влад) | Open | Партнёр выбирает формат, но сохраняется другое — данные молча теряются, при обновлении ещё и перетираются на «онлайн». Продуктового выбора нет. Рекомендация: пробросить формат из формы в payload создания и обновления (убрать хардкод), покрыть проверкой «выбранный формат сохраняется и виден в карточке». Значения формата — Back 2.1/BR2.1-10. |
| #OQ4.1-7 | Код FR4.1-14 | Требование говорит: интерфейс показывает результат сохранения. В коде обратная связь непоследовательна: при ошибке создания объекта — только запись в лог, пользователю ничего; при ошибке сохранения времени работы — вывод в консоль с TODO «добавить снэкбар»; при этом шаг «Местоположение» ошибку показывает штатно. В создании, основных данных и условиях работы сбой пользователю не виден. \ BaseDrawer.vue:480-484; BaseWorkingHoursStep.vue:261-270; BaseLocationStep.vue:558-560 | Разработка (Влад) | Open | Пользователь может считать объект сохранённым, когда сохранение упало — требование веса 1. Продуктового выбора нет. Рекомендация: унифицировать обратную связь — показывать ошибку и успех во всех шагах через штатный механизм уведомлений (как уже сделано в шаге «Местоположение»), вместо записи в лог/консоль. |
| #OQ4.1-8 | Код FR4.1-11 | Проблема (два дефекта): (1) в списке площадок читаются поля идентификаторов в неверном регистре (PascalCase из camelCase-сущности) → значения пустые: «Создать площадку» уходит на страницу создания без идентификаторов объекта и зоны (контекст теряется), модалка изменения порядка получает пустой идентификатор объекта; (2) в обработчике сохранения порядка используется необъявленная переменная → ошибка при сохранении. \ BasePlatformsList.vue:138,226,233-240; useBaseGetters.ts:34; BaseApiService.ts:20 | Разработка (Влад) | Open | Оба перехода из FR4.1-11 фактически не работают. Продуктового выбора нет. Рекомендация: исправить регистр полей (читать camelCase), объявить или убрать переменную в обработчике сохранения порядка, проверить сценарии «создать площадку» и «сохранить порядок» с реальным идентификатором объекта. Детальная логика площадок — WebLk 4.2 (в «Не входит»), здесь только переходы. |
| #OQ4.1-9 | Код FR4.1-9 (тж. FR4.1-23) | Проблема: незаполненные поля маршрута показывают фейковые примеры как реальные данные: видеомаршрут — ссылка-пример на YouTube, ссылка на маршрут — вымышленный адрес, «Как добраться» — текст-пример. Пустого состояния для этих полей нет. \ BaseBasicInfo.vue:441,452,463 | Разработка (Влад) | Open | Партнёр видит чужие/вымышленные ссылки как данные своего объекта — вводит в заблуждение и нарушает FR4.1-23 (пустые состояния). Продуктового выбора нет. Рекомендация: заменить примеры на пустые состояния или плейсхолдеры («Не указано» либо действие «Добавить»), чтобы примеры не читались как реальные ссылки объекта. |
Подстраницы
Вопросы по сверке с кодом
BRD 4.1 v0.1 · musbooking_personal_account · commit b9a7a706/test · 2026-07-10 · якорь
pages/content/bases/+entities.fsd/base/+features.fsd/base-drawer/+features.fsd/base-details/+widgets.fsd/base-*+shared.fsd/api*/base*Сводка: вопросов 9 (бизнесовых 4 / программных 5) · подтверждено без вопросов 11 (FR4.1-2, FR4.1-3, FR4.1-5, FR4.1-6, FR4.1-7, FR4.1-8, FR4.1-10, FR4.1-12, FR4.1-15, FR4.1-22, FR4.1-24) · отрезано находок обратного прохода 4 (шаблоны/категории уведомлений, блок «Оборудование и услуги»/позиции, модалка изменения порядка площадок, баллы лояльности и иконки интеграций — вне BRD 4.1) Под особым вниманием (вес 1): FR4.1-1 (шаги создания), FR4.1-17 (доступность), FR4.1-14 (результат сохранения), FR4.1-16 (правила), FR4.1-4/FR4.1-13 (вложения маршрута)
Бизнесовые
| № | Связано с | Что в BRD | Что в коде | Где в коде |
|---|---|---|---|---|
| Б1 | FR4.1-1 (тж. 2, 4) | Создание объекта = основная информация + контактные данные + местоположение/маршрут; сценарии FR4.1-1…5 не упоминают уведомления и условия работы | Мастер создания состоит из 4 обязательных шагов: «Основные данные» → «Уведомления» → «Местоположение» → «Условия работы»; email уведомлений обязателен, время работы обязательно — без них объект создать нельзя. — нужно решение: входят ли «Уведомления» и «Условия работы» в сценарий создания и должны ли они быть обязательными | widgets.fsd/base-drawer/ui/BaseDrawer.vue:147-152; features.fsd/base-drawer/model/useBaseValidation.ts:163-210; features.fsd/base-drawer/ui/BaseNotificationsStep.vue:292-306 |
| Б2 | FR4.1-17 | Доступность в 4 состояниях: на модерации, опубликован, снят с публикации, в архиве | Модель данных знает только бинарный флаг archiveInfo.isArchived; плашка показывает «Весь контент опубликован» либо «Объект снят с публликации», состояний «на модерации» и «снят с публикации» (отдельно от архива) нет. — нужно решение: остаётся ли доступность бинарной (архив/активен) или нужны 4 состояния (тогда требуется поле статуса на Back 2.1) | features.fsd/base-details/basic-info/ui/BaseBasicInfo.vue:305-322; shared.fsd/api-contracts/bases/bases.schema.ts:47-50, 96 |
| Б3 | FR4.1-20, FR4.1-21 (тж. FR4.1-18, FR4.1-19) | Архивирование, восстановление, снятие с публикации, публикация помечены «Не входит в релиз» | Архивирование/разархивирование полностью реализованы и доступны партнёру на странице объекта прямо сейчас (кнопка + модалка подтверждения, вызов UpdateBase{archive}); отдельных publish/unpublish нет — кнопка «снять с публикации» фактически архивирует. — нужно решение: включать ли архив/восстановление в текущий релиз (сейчас противоречит статусу «Не входит в релиз») и разводить ли «снять с публикации» и «архив» | features.fsd/base-details/basic-info/model/useBaseArchive.ts:47-67; entities.fsd/base/model/useBaseEntityQueries.ts:146-185; shared.fsd/api/bases/bases.api.ts:222-231; features.fsd/base-details/basic-info/ui/BaseBasicInfo.vue:326-336 |
| Б4 | FR4.1-16 | Показ правил (оказания услуг, создания заказов, отмены, оплаты) + выбор стандартных правил или переход к настройке | На странице объекта показываются 4 вкладки правил; выбор «стандартные правила» захардкожен (useStandardObjectRules = ref(true), не переключается пользователем), настройка правил вынесена на отдельную страницу booking-rules-settings. — нужно решение: входит ли выбор стандартных/кастомных правил в страницу объекта или полностью делегирован разделу правил (3.4) | features.fsd/base-details/work-conditions/ui/BaseWorkConditions.vue:118-160; pages/content/bases/[baseId]/booking-rules-settings/index.vue:1 |
Рекомендация / варианты решения
- Шаги создания (Б1) — привести BRD и код к согласию. Вариант А (рекоменд.): дополнить scope S1 шагами «Уведомления» и «Условия работы» с явной пометкой обязательности и полями. Вариант Б: если продукт хочет «минимальное создание» — сделать эти шаги необязательными/вынести из создания, чтобы объект можно было создать без них.
- Доступность (Б2) — Вариант А (рекоменд.): зафиксировать в BRD фактическую бинарную модель (архив/активен) для текущего релиза, переписав FR4.1-17 под два состояния. Вариант Б: если 4 состояния действительно нужны — завести на Back 2.1 поле статуса модерации/публикации и доработать плашку (иначе FR4.1-17 невыполним на фронте).
- Архив в релизе (Б3) — Вариант А (рекоменд.): если архив/восстановление нужны сейчас — снять с FR4.1-20/21 пометку «Не входит в релиз» и описать поведение. Вариант Б: если рано — скрыть кнопку архивации на странице объекта за фиче-флагом до релиза. Отдельно: развести смысл «снять с публикации» и «архив» (сейчас это одно действие).
- Правила (Б4) — Вариант А (рекоменд.): описать в FR4.1-16, что выбор стандартных/кастомных правил делегирован разделу правил (booking-rules-settings), а на странице объекта — только просмотр. Вариант Б: если выбор нужен на объекте — реализовать реальный переключатель (сейчас значение захардкожено).
Программные
| № | Связано с | Что в BRD | Что в коде | Где в коде |
|---|---|---|---|---|
| П1 | FR4.1-13 (тж. FR4.1-4) | Добавить, заменить или удалить вложения маршрута (файлы деталей маршрута) | Загрузка/замена/удаление вложения маршрута не реализованы — в шаге «Местоположение» на их месте TODO-заглушка; просмотр файла маршрута (FileType=4) в карточке объекта есть, но добавить/заменить его из формы создания/редактирования нельзя — нужно решение: реализовать или убрать вложения маршрута из FR | features.fsd/base-drawer/ui/BaseLocationStep.vue:141; features.fsd/base-details/basic-info/ui/BaseBasicInfo.vue:470-489 |
| П2 | FR4.1-10 | Формат работы объекта (онлайн-бронирование / по заявке) | Радио «Формат работы» в шаге условий работы присутствует, но выбор пользователя не сохраняется: draft хардкодит workingFormat (создание = 1, обновление = 0 с пометкой «TODO: взять из формы»), значение из формы игнорируется — нужно решение: пробросить формат из формы | features.fsd/base-drawer/model/useBaseDraft.ts:625, 718; features.fsd/base-drawer/ui/BaseWorkingHoursStep.vue:177-182 |
| П3 | FR4.1-14 | Интерфейс показывает результат сохранения | Обратная связь об ошибке непоследовательна: при ошибке создания объекта — только logger.error, пользователю ничего; при ошибке сохранения времени работы — console.error с TODO «добавить снэкбар»; при этом шаг «Местоположение» ошибку показывает (notify.drawer.error). В create/основные/условия результат сбоя не виден пользователю | widgets.fsd/base-drawer/ui/BaseDrawer.vue:480-484; features.fsd/base-drawer/ui/BaseWorkingHoursStep.vue:261-270; features.fsd/base-drawer/ui/BaseLocationStep.vue:558-560 |
| П4 | FR4.1-11 | Переходы к созданию площадки и изменению порядка площадок | В BasePlatformsList читаются base.BaseId/base.PartnerZoneId (PascalCase) из camelCase-сущности (useBaseByIdQuery после transformToCamelCase) → undefined: «Создать площадку» уходит на /content/rooms/create без baseId/partnerZoneId (контекст объекта теряется), ReorderRoomsModal получает base-id=""; вдобавок в handleSaveOrder используется необъявленный roomsStore (ReferenceError при сохранении порядка) | features.fsd/base-details/platforms-list/ui/BasePlatformsList.vue:138, 226, 233-240; entities.fsd/base/model/useBaseGetters.ts:34; shared.fsd/api/base/BaseApiService.ts:20 |
| П5 | FR4.1-9 (тж. FR4.1-23) | Показ ссылок на маршрут/видеомаршрут и описания маршрута; пустые состояния для незаполненных данных | Незаполненные поля маршрута показывают фейковые примеры как реальные данные: видеомаршрут → https://www.youtube.com/Наш маршрут, ссылка на маршрут → https://kak-proity-ne-znayu.ru, «Как добраться» → пример-текст. Пустого состояния для этих полей нет | features.fsd/base-details/basic-info/ui/BaseBasicInfo.vue:441, 452, 463 |
Рекомендация / варианты решения
- Вложения маршрута (П1) — Вариант А (рекоменд.): реализовать загрузку/замену/удаление файла маршрута в шаге «Местоположение» по аналогии со «Схемой объекта» в шаге «Основные данные» (механизм уже есть). Вариант Б: до реализации — убрать упоминание вложений маршрута из FR4.1-4/FR4.1-13 или пометить как незапланированное, чтобы не выдавать за реализованное.
- Формат работы (П2) — пробросить
workingFormatиз формы вgetFinalPayload/getFinalUpdatePayload(убрать хардкод 1/0) и покрыть проверкой «выбранный формат сохраняется и виден в карточке». - Результат сохранения (П3) — унифицировать обратную связь: показывать пользователю ошибку и успех во всех шагах через
notify(как в BaseLocationStep), вместоlogger/console. - Переходы к площадкам (П4) — исправить регистр: читать
base.baseId/base.partnerZoneId(camelCase); объявить/импортироватьroomsStore(или убрать вызов) вhandleSaveOrder; проверить сценарий «создать площадку» и сохранение порядка с реальным baseId. (Изменение порядка/создание площадки детально — раздел 4.2.) - Пустые состояния (П5) — заменить фейковые примеры на пустые состояния/плейсхолдеры (например «Не указано» либо действие «добавить»), чтобы примеры не читались как реальные ссылки объекта.