CATUX-01: Shared типы и BFF прокси

Что сделать

Добавить новые типы для версионирования товаров и состава каталога. Добавить 6 BFF proxy endpoints для новых операций Catalog Service.

Смотри спеку

Конкретно

Shared types (shared/src/types/catalog.ts)

  • Добавить интерфейс ProductVersion:
    • version (number)
    • name (string)
    • base_price (number)
    • description (string)
    • type (string)
    • unit_of_measure (string)
    • status (string)
    • created_at (string)
    • catalog_versions — массив { id: string, version: number, status: string }
  • Добавить интерфейс CatalogCompositionProduct:
    • product_id (string)
    • product_version (number)
    • name (string)
    • category_name (string)
    • type (string)
    • base_price (number)
    • unit_of_measure (string)
  • Обновить CatalogVersion — добавить поле category_count (number)

BFF proxy (bff/src/routes/catalog.ts)

  • POST /catalog/versions → Catalog Service POST /api/v1/admin/catalog/versions
  • DELETE /catalog/versions/:id → Catalog Service DELETE /api/v1/admin/catalog/versions/:id
  • POST /catalog/versions/:id/products/:productId → Catalog Service
  • DELETE /catalog/versions/:id/products/:productId → Catalog Service
  • PATCH /catalog/versions/:id/products/:productId → Catalog Service
  • GET /products/:id/versions → Catalog Service GET /api/v1/admin/products/:id/versions

API client (web/src/api/catalog.ts)

  • Добавить функции-обёртки для всех 6 новых endpoints

Файлы

  • shared/src/types/catalog.ts
  • bff/src/routes/catalog.ts
  • web/src/api/catalog.ts

Зависит от

Нет зависимостей.