BR 1.7.2 — Admin Franchise (BFF + Web)
Конструктор каталога: двухпанельный UI, убрать раздел “Категории”, versioned category API.
Контракты
Задачи
BFF (bff/src/routes/catalog.ts)
- Proxy:
GET /catalog/versions/:id/categories→ Catalog Service - Proxy:
POST /catalog/versions/:id/categories→ Catalog Service - Proxy:
PATCH /catalog/versions/:id/categories/:categoryId→ Catalog Service - Proxy:
DELETE /catalog/versions/:id/categories/:categoryId→ Catalog Service - Убраны standalone category proxy routes
Shared types (shared/src/types/catalog.ts)
-
Product,ProductListItem— убраноcategory_id,category_name -
CreateProductRequest,UpdateProductRequest— убраноcategory_id -
CatalogCompositionProduct— добавленоcategory_id,category_name - Добавлены типы:
VersionCategory,CreateVersionCategoryRequest,UpdateVersionCategoryRequest,MoveProductCategoryRequest
Web: Товары
-
ProductListPage— убрана колонка “Категория”, убран фильтр -
ProductViewPage— убрана “Категория” из карточки -
ProductCreatePage— убрано поле “Категория” -
ProductEditPage— убрано поле “Категория”
Web: Sidebar + Routing
- Sidebar — убран пункт “Категории”
- Router — убран route
/catalog/categories, CategoriesPage → redirect -
CategoriesPage.tsx— заменён на redirect к/catalog/versions
Web: Версии — конструктор
-
VersionViewPage— двухпанельный layout (split view, 240px + flex:1) - Левая панель: дерево категорий из versioned API
- Левая панель: inline CRUD (добавить/переименовать/удалить/toggle active) — draft only
- Левая панель: “Без категории” — спец. пункт
- Правая панель: товары выбранной категории
- Добавить товар — с
category_idтекущей категории - Перемещение товара — модалка выбора категории + PATCH
- Просмотр published/archived — двухпанельный readonly
Web: API client (web/src/api/catalog.ts)
- Добавлены:
getVersionCategories,createVersionCategory,updateVersionCategory,deleteVersionCategory,moveProductCategory - Убраны standalone category functions