STORE-08: Форма редактирования ТТ

Что сделать

Реализовать страницу /stores/:id/edit — та же форма что создание, но с предзаполненными данными и ограничениями.

Смотри спеку

Секция “Редактирование” в Торговые точки — Карточка.

Конкретно

Доступ

  • Franchise — все поля (кроме ЮЛ)
  • Franchisee — свои ТТ, все поля кроме ЮЛ
  • Manager — своя ТТ, все поля кроме ЮЛ

Отличия от создания

  • Поле ЮЛdisabled, серый фон, tooltip “ЮЛ нельзя изменить после создания”
  • Данные предзаполнены из GET /api/v1/admin/stores/{id}
  • Расписание предзаполнено из schedule[]

Серверные ошибки

КодКогда
NAME_DUPLICATEДубликат названия в рамках ЮЛ
LEGAL_ENTITY_IMMUTABLEПопытка сменить ЮЛ
STORE_NOT_FOUNDТТ не найдена

Кнопки

  • “Сохранить” → PATCH /api/v1/admin/stores/{id}
  • “Отмена” → /stores/{id} (карточка просмотра)

После успеха

Redirect на /stores/{id}, toast “Изменения сохранены”

Предупреждение

При уходе с несохранёнными изменениями: “У вас есть несохранённые изменения. Покинуть страницу?”

Файлы

  • web/src/pages/stores/EditPage.tsx — создать
  • web/src/api/stores.ts — добавить update

Зависит от

  • STORE-07 (форма создания — переиспользование компонентов расписания)