STORE-05: Список ТТ — действия, публикация, модалки

Что сделать

Реализовать меню действий строки (редактировать, опубликовать, снять, удалить) с ролевой видимостью и модалками.

Смотри спеку

Секции “Меню действий строки”, “Модалки подтверждений”, “Ролевая видимость” в Торговые точки — Список.

Конкретно

Меню действий строки

ДействиеВидимостьЧто
РедактироватьFranchise — всегда; Franchisee — свои; Manager — своя/stores/{id}/edit
ОпубликоватьFranchise + status=draftPOST /api/v1/admin/stores/{id}/publish, без модалки, toast
Снять с публикацииFranchise + status=publishedPOST /api/v1/admin/stores/{id}/unpublish, без модалки, toast
УдалитьFranchiseМодалка подтверждения

Модалка удаления

3 сценария:

  1. ТТ опубликована → “Невозможно удалить. Сначала снимите с публикации.” + “Понятно”
  2. Есть сотрудники → “У ТТ есть привязанные сотрудники. Они будут откреплены.” + “Отмена” / “Удалить”
  3. Нет препятствий → “Удалить ТТ [название]? Это действие нельзя отменить.” + “Отмена” / “Удалить”

API: DELETE /api/v1/admin/stores/{id} После успеха: убрать строку, toast “Торговая точка удалена”

Ролевая видимость

  • Franchise: все действия
  • Franchisee: только “Редактировать” (свои)
  • Manager: только “Редактировать” (свою)

Файлы

  • web/src/pages/stores/ListPage.tsx — дополнить
  • web/src/api/stores.ts — добавить publish, unpublish, remove

Зависит от

  • STORE-03 (базовый список)