PL-01: Shared типы + BFF прокси + API client

Что сделать

Добавить shared-типы для прейскурантов, BFF proxy для Catalog Service price list endpoints + Store Service assignment, API client в web.

Конкретно

Shared types (shared/src/types/)

  • PriceList: id, franchise_id, name, is_default, status, store_count, created_at, updated_at
  • PriceListItem: product_id, product_name, price
  • PriceListModifierItem: modifier_option_id, modifier_option_name, modifier_group_name, price
  • CreatePriceListRequest, UpdatePriceListRequest
  • Убрать base_price из Product, ProductListItem, CreateProductRequest
  • Убрать base_price из ModifierOption

PriceListVersion убран

Версионирование прейскурантов удалено. Цены редактируются напрямую на прейскуранте.

BFF proxy (bff/src/routes/)

Catalog Service (8 роутов):

  • GET/POST /price-lists, GET/PATCH/DELETE /price-lists/:id
  • GET /price-lists/:id/items
  • PATCH /price-lists/:id/items
  • PATCH /price-lists/:id/modifier-items

Store Service (2 роута):

  • PATCH /stores/:id → assign price_list_id
  • GET /stores/:id → read price_list_id

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

Новый файл с функциями для всех эндпоинтов.

Файлы

  • shared/src/types/catalog.ts — убрать base_price
  • shared/src/types/modifiers.ts — убрать base_price из ModifierOption
  • shared/src/types/priceLists.ts — создать
  • shared/src/index.ts — экспорт
  • bff/src/routes/priceLists.ts — создать
  • bff/src/server.ts — зарегистрировать
  • web/src/api/priceLists.ts — создать

Зависит от

— (первая задача)